답변완료
아래검색식을 09시 이후 시간설정하고 싶어요
input : P(20);
var : mav(0),T(0),LL(0),LL1(0),mav1(0),T1(0),LL2(0),LL11(0);
var12 = accumn(m,5)/accumn(v,5);
if CrossUp(h,var12[1]) Then #전저점이 전전저점보다 큼
Find(1);
2023-06-16
778
글번호 169819
종목검색
답변완료
문의 드립니다.~~~~
작성해 주신 아래식에서
고점과 저점을 설정하는 변수 n틱에 대한 부분이 적용되지 않은 것 같아
다시 부탁드립니다.
감사합니다.
안녕하세요
예스스탁입니다.
고점은 고가기준 최근 상승한 고가기준 n틱하락
저점은 저가기준 최근 하락한 저가기준 n틱상승으로 작성해 드립니다.
var : t1(0),hd(0),ht(0),hv(0);
var : t2(0),ld(0),lt(0),lv(0);
var : B(0),S(0);
if Bdate != Bdate[1] Then
{
t1 = 0;
Var1 = sDate;
Var2 = stime;
var3 = h;
hd = 0;
ht = 0;
hv = 0;
t2 = 0;
value1 = sDate;
value2 = sTime;
value3 = l;
ld = 0;
lt = 0;
lv = 0;
B = 0;
S = 0;
}
else
{
if h > h[1] Then
{
t1 = 1;
Var1 = sDate;
Var2 = stime;
var3 = h;
}
if h < h[1] Then
t1 = -1;
if t1 == -1 and h <= var3-PriceScale*3 Then
{
t1 = -2;
hd = Var1;
ht = Var2;
hv = var3;
if lv > 0 Then
{
TL_New(ld,lt,lv,hd,ht,hv);
B = hv+(hv-lv);
S = Lv-(hv-lv);
}
}
if l > l[1] Then
t2 = 1;
if l < l[1] Then
{
t2 = -1;
value1 = sDate;
value2 = stime;
value3 = l;
}
if t2 == 1 and l >= Value3+PriceScale*3 Then
{
t2 = -2;
ld = value1;
lt = value2;
lv = value3;
if hv > 0 Then
{
TL_New(hd,ht,hv,ld,lt,lv);
B = hv+(hv-lv);
S = Lv-(hv-lv);
}
}
}
if MarketPosition <= 0 Then
Buy("b",AtStop,B);
if MarketPosition >= 0 Then
Sell("s",AtStop,S);
즐거운 하루되세요
> 예스요 님이 쓴 글입니다.
> 제목 : 문의 드립니다.~~~~
> 수고하십니다.
다음식 부탁합니다.
장시작후
고점설정: 상승시 n틱 하락하면 전고점 설정
저점설정: 하락시 m틱 상승하면 전저점 설정
고저점 설정의 조건이 달성되는대로 고점과 저점을 잇는 추세선 표시
매수진입: 전저점 형성후 전고점을 (전고점-전저점)틱수 만큼 돌파시
매도진입: 전고점 형성후 전저점을 (전고점-전저점)틱수 만큼 돌파시
수고하세요.
2023-06-15
1408
글번호 169815
시스템
답변완료
키움식 변환 부탁드립니다.
**AA는 임의로 정의된 함수입니다.
BBB = 1.05;
a1 = 0.99;
a2 = 0.98;
a3 = 0.97;
HHH= if (AA(0) > 0, AA(0), if (AA(30) > 0, AA(30),if (AA(60) > 0, AA(60), if(AA(90) > 0, AA(90),if (AA(120) > 0, AA(120), if (AA(150) > 0, AA(150), 181 ))))));
LLL= lowest(L,HHH);
RRR= ((L*BBB<H) and O<C);
GGG= ((L*BBB<H) and O>C);
UUU= (H>= (max(O,C)*BBB));
UULLL= ((L*BBB) <= min(O,C));
UUCCC= ((O(1)>C(1)) and (L(1)*BBB<=H));
UUBBB=max(O(1),C(1))*BBB<=H;
RBRB = if( (h>=LLL*BBB) and (L!=LLL), 1,if (RRR or UULLL or (UUCCC and !UULLL(1) )or UUBBB or UUU, 1, 0));
HLHL = if (RBRB, H, highestsince(1,RBRB==1, H));
SESE0 = if (반등, lowestsince(1,반등==0, l), lowestsince(1,반등==1, l)) *반등폭;
SESE1 = HLHL*a1;
SESE2 = HLHL*a2;
SESE3 = HLHL*a3;
SESE0 ~ SESE3를 plot 로 표현하기 원합니다.
2023-06-15
1338
글번호 169813
지표
답변완료
Range bar 관련
안녕하세요
아래는 수식지왕님의 Range bar차트인데, 해당 range bar에 이평선 또는 볼린져밴드를 넣어서, 일반차트가 아닌 Range bar 지표에 표시가 되게 하려 합니다.
처음에는 간단하게
var51 = (CC[1] + CC[2] .... CC[20] ) / 20;
이렇게 해서 이평선을 만들려했는데 잘 안되더라구요...
도움 부탁드립니다 ㅠ
PS. 차트 타입에 range bar도 만들어주세요. Point차트는 봉이 너무 많이 생깁니다
===============
Input:tick(300);
Var:j(0),k(0),n(0),trend(0),tickVal(0),oneTick(0),count(0),remain(0);
Array:OO[1000](0),HH[1000](0),LL[1000](0),CC[1000](0),val[4](0);
#==============================================================================#
# Range Bar Chart 계산
#==============================================================================#
If Index == 0 Then
{
tickVal = tick * PriceScale;
oneTick = PriceScale;
OO[0] = O;
HH[0] = O;
LL[0] = O;
CC[0] = O;
}
count = 0;
val[0] = O;
val[3] = C;
If O > C Then
{
val[1] = H;
val[2] = L;
If L < C Then trend = 1;
Else trend = -1;
}
Else If O < C Then
{
val[1] = L;
val[2] = H;
If H > C Then trend = -1;
Else trend = 1;
}
Else If C[1] > O Then
{
val[1] = L;
val[2] = H;
If H > C Then trend = -1;
Else trend = 1;
}
Else If C[1] < O Then
{
val[1] = H;
val[2] = L;
If L < C Then trend = 1;
Else trend = -1;
}
Else If trend == 1 Then
{
val[1] = H;
val[2] = L;
If L < C Then trend = 1;
Else trend = -1;
}
Else If trend == -1 Then
{
val[1] = L;
val[2] = H;
If H > C Then trend = -1;
Else trend = 1;
}
For k = 0 To 3
{
If HH[0] > 0 && HH[0] < val[k] Then
{
While val[k] - LL[0] > tickVal
{
HH[0] = LL[0] + tickVal;
CC[0] = HH[0];
For j = 998 DownTo 0
{
OO[j+1] = OO[j];
HH[j+1] = HH[j];
LL[j+1] = LL[j];
CC[j+1] = CC[j];
}
count = count + 1;
OO[0] = HH[1] + oneTick;
LL[0] = OO[0];
}
If val[k] - LL[0] <= tickVal Then
{
HH[0] = val[k];
CC[0] = val[k];
}
}
Else If LL[0] > val[k] Then
{
While HH[0] - val[k] > tickVal
{
LL[0] = HH[0] - tickVal;
CC[0] = LL[0];
For j = 998 DownTo 0
{
OO[j+1] = OO[j];
HH[j+1] = HH[j];
LL[j+1] = LL[j];
CC[j+1] = CC[j];
}
count = count + 1;
OO[0] = LL[1] - oneTick;
HH[0] = OO[0];
}
If HH[0] - val[k] <= tickVal Then
{
LL[0] = val[k];
CC[0] = val[k];
}
}
Else
{
CC[0] = val[k];
}
}
2023-06-15
1111
글번호 169799
지표