답변완료
수식으로 요청 드립니다.
* 즐거운 한주 되십시요.
* 아래 지표식을 매매식으로 요청 드립니다.
→ RED신호 발생 하면 신호가찍힌봉 이전 5봉중 최고가 저장후 2봉이후에 최고가 돌파시 매도
BLUE신호 발생 하면 신호가찍힌봉 이전 5봉중 최저가 저장후 2봉이후에 최저가 돌파시 매도
▶ 빈동그라미는 "매수2", "매도2" 로 부탁 드립니다.
▶ 갯수(5) 에 그러지는 수평선 굵기 좀 굵게 부탁 드립니다.
TL_GetSize(TL,3 ); 해도 안되네요???
* 청산:
매도 진입후 최고가 + 20틱 이상이면 매도 손실 청산
매수 진입후 최저가 - 20틱 이상이면 매수 손실 청산
## 지표 식
input : 간격(5),갯수(5);
var : T(0),cnt(0);
var : HH1(0),HI1(0),HI2(0),LL1(0),LI1(0),LI2(0);
var : LD(0),LT(0),LL(0),HD(0),HT(0),HH(0),TX(0);
Array : HTL[100](0),LTL[100](0);
if H[간격] > Highest(H,간격) and H[간격] > Highest(H,간격)[간격+1] Then
{
T = 1;
HH1 = H[간격];
Hi1 = index[간격];
Hi2 = HI1[1];
HTL[0] = TL_New(sdate[간격],stime[간격],HH1,sdate,stime,HH1);
TL_SetColor(HTL[0],RED);
TL_SetExtRight(HTL[0],true);
TX = Text_New(sdate[간격],stime[간격],HH1,"●");
Text_SetColor(TX,RED);
Text_SetStyle(TX,2,2);
for cnt = 1 to 99
{
HTL[cnt] = HTL[cnt-1][1];
}
TL_Delete(HTL[갯수]);
if t == t[1] then
{
LD = 0;
LT = 0;
LL = 0;
for cnt = index-HI1 to index-HI2
{
if LL == 0 or (LL > 0 and L[cnt] < LL) Then
{
LL = L[cnt];
LD = sdate[cnt];
LT = stime[cnt];
}
}
LTL[0] = TL_New(ld,lt,ll,sdate,stime,ll);
TL_SetColor(LTL[0],blue);
TL_SetExtRight(LTL[0],true);
TX = Text_New(LD,LT,LL,"○");
Text_SetColor(TX,BLUE);
Text_SetStyle(TX,2,2);
for cnt = 1 to 99
{
LTL[cnt] = LTL[cnt-1][1];
}
TL_Delete(LTL[갯수]);
}
}
if L[간격] < Lowest(L,간격) and L[간격] < Lowest(L,간격)[간격+1] Then
{
T = -1;
LL1 = L[간격];
LI1 = index[간격];
LI2 = LI1[1];
LTL[0] = TL_New(sdate[간격],stime[간격],LL1,sdate,stime,LL1);
TL_SetColor(LTL[0],blue);
TL_SetExtRight(LTL[0],true);
TX = Text_New(sdate[간격],stime[간격],LL1,"●");
Text_SetColor(TX,BLUE);
Text_SetStyle(TX,2,2);
for cnt = 1 to 99
{
LTL[cnt] = LTL[cnt-1][1];
}
TL_Delete(LTL[갯수]);
if t == t[1] then
{
HD = 0;
HT = 0;
HH = 0;
for cnt = index-LI1 to index-LI2
{
if HH == 0 or (HH > 0 and H[cnt] > HH) Then
{
HH = H[cnt];
HD = sdate[cnt];
HT = stime[cnt];
}
}
HTL[0] = TL_New(HD,HT,HH,sdate,stime,HH);
TL_SetColor(HTL[0],RED);
TL_SetExtRight(HTL[0],true);
TX = Text_New(HD,HT,HH,"○");
Text_SetColor(TX,RED);
Text_SetStyle(TX,2,2);
for cnt = 1 to 99
{
HTL[cnt] = HTL[cnt-1][1];
}
TL_Delete(HTL[갯수]);
}
}
* 항상 고맙습니다. 수고하십시요.
2022-05-03
1045
글번호 158492
시스템
답변완료
문의 드립니다.~~~~
할상 감사합니다,
아래식의 자세한 주석 부탁드립니다.
Input:tick(20);
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];
}
}
input : x(3);
var : ii(0), 양봉연속갯수(0),음봉연속갯수(0);
양봉연속갯수 = 0;
음봉연속갯수 = 0;
For ii = 0 to x-1
{
if CC[ii] > OO[ii] Then
양봉연속갯수 = 양봉연속갯수+1;
if CC[ii] < OO[ii] Then
음봉연속갯수 = 음봉연속갯수+1;
}
if 양봉연속갯수 == x Then
Buy();
if 음봉연속갯수 == x Then
sell();
2022-05-01
968
글번호 158488
시스템