커뮤니티

수식 의뢰 드립니다!

프로필 이미지
qha71
2022-07-06 17:22:49
1216
글번호 160485
답변완료
안녕하세요! 수식을 좀 의뢰 드립니다! 항상 노고에 감사드립니다!
지표
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2022-07-06 16:57:02

안녕하세요 예스스탁입니다. 1 input : length(12),진입틱수(10),손절틱수(10); input : 상승추세색(Red),하락추세색(blue); input : 상승추세굵기(0),하락추세굵기(0); input : 매도선색(Cyan),매도손절선색(Black); input : 매도선굵기(0),매도손절선굵기(0); input : 매수선색(Magenta),매수손절선색(Black); input : 매수선굵기(0),매수손절선굵기(0); Var : j(0),lastHiVal(0),lastLoVal(0),sBar(0),eBar(0),process(0),T(0); var : TL1(0),TL2(0),TL3(0),TL4(0),TL5(0); Array : HH[10,2](0),LL[10,2](0); process = 0; If Highest(H,length) == H and lastHiVal <> H and Lowest(L,length) == L and lastLoVal <> L Then { If LL[1,1] > L Then process = -1; If HH[1,1] < H Then process = 1; } Else If Highest(H,length) == H and lastHiVal <> H Then process = 1; Else If Lowest(L,length) == L and lastLoVal <> L Then process = -1; If process == 1 Then { T = 1; lastHiVal = H; if T != T[1] Then Condition2 = False; If HH[1,2] < LL[1,2] Then { For j = 10 DownTo 2 { HH[j,1] = HH[j-1,1]; HH[j,2] = HH[j-1,2]; } } If HH[1,2] < LL[1,2] or HH[1,1] < H Then { HH[1,1] = H; HH[1,2] = Index; sBar = Index - LL[1,2]; eBar = 0; If TL_GetBeginDate(TL1) == sDate[sBar] and TL_GetBeginTime(TL1) == sTime[sBar] Then { TL_Delete(TL1); } if LL[1,1] > 0 Then { TL1 = TL_New(sDate[sBar],sTime[sBar],LL[1,1],sDate[eBar],sTime[eBar],HH[1,1]); TL_SetColor(TL1,상승추세색); TL_SetSize(TL1,상승추세굵기); if Condition2 == False and min(C,O) > HH[2,1] Then { Condition2 = true; var4 = LL[1,1]+PriceScale*진입틱수; var5 = LL[1,1]-PriceScale*손절틱수; TL4 = TL_New(sDate[eBar],sTime[eBar],var4,NextBarSdate,NextBarStime,var4); TL5 = TL_New(sDate[eBar],sTime[eBar],var5,NextBarSdate,NextBarStime,var5); TL_SetColor(TL4,매수선색); TL_SetColor(TL5,매수손절선색); TL_SetSize(TL4,매수선굵기); TL_SetSize(TL5,매수손절선굵기); } if Condition2 == true Then { TL_SetBegin(TL4,sDate[eBar],sTime[eBar],var4); TL_SetBegin(TL5,sDate[eBar],sTime[eBar],var5); } } } } If process == -1 Then { T = -1; lastLoVal = L; if T != T[1] Then Condition1 = False; If LL[1,2] < HH[1,2] Then { For j = 10 DownTo 2 { LL[j,1] = LL[j-1,1]; LL[j,2] = LL[j-1,2]; } } If LL[1,2] < HH[1,2] or LL[1,1] > L Then { LL[1,1] = L; LL[1,2] = Index; sBar = Index - HH[1,2]; eBar = 0; If TL_GetBeginDate(TL1) == sDate[sBar] and TL_GetBeginTime(TL1) == sTime[sBar] Then { TL_Delete(TL1); } if HH[1,1] > 0 Then { TL1 = TL_New(sDate[sBar],sTime[sBar],HH[1,1],sDate[eBar],sTime[eBar],LL[1,1]); TL_SetColor(TL1,하락추세색); TL_SetSize(TL1,하락추세굵기); if Condition1 == False and max(C,O) < LL[2,1] Then { Condition1 = true; var2 = HH[1,1]-PriceScale*진입틱수; var3 = HH[1,1]+PriceScale*손절틱수; TL2 = TL_New(sDate[eBar],sTime[eBar],var2,NextBarSdate,NextBarStime,var2); TL3 = TL_New(sDate[eBar],sTime[eBar],var3,NextBarSdate,NextBarStime,var3); TL_SetColor(TL2,매도선색); TL_SetColor(TL3,매도손절선색); TL_SetSize(TL2,매도선굵기); TL_SetSize(TL3,매도손절선굵기); } if Condition1 == true Then { TL_SetBegin(TL2,sDate[eBar],sTime[eBar],var2); TL_SetBegin(TL3,sDate[eBar],sTime[eBar],var3); } } } } if Condition1 == true Then { TL_SetEnd(TL2,sDate,sTime,var2); TL_SetEnd(TL3,sDate,sTime,var3); if H < Var2 Then Sell("s",AtLimit,Var2); } if MarketPosition == -1 Then ExitShort("sx",AtStop,Var3[BarsSinceEntry]); if Condition2 == true Then { TL_SetEnd(TL4,sDate,sTime,var4); TL_SetEnd(TL5,sDate,sTime,var5); if L > Var4 Then Buy("b",AtLimit,Var4); } if MarketPosition == 1 Then ExitLong("bx",AtStop,Var5[BarsSinceEntry]); 2 input : length(12),등락틱수(50),진입틱수(10),손절틱수(10); input : 상승추세색(Red),하락추세색(blue); input : 상승추세굵기(0),하락추세굵기(0); input : 매도선색(Cyan),매도손절선색(Black); input : 매도선굵기(0),매도손절선굵기(0); input : 매수선색(Magenta),매수손절선색(Black); input : 매수선굵기(0),매수손절선굵기(0); Var : j(0),lastHiVal(0),lastLoVal(0),sBar(0),eBar(0),process(0),T(0); var : TL1(0),TL2(0),TL3(0),TL4(0),TL5(0); Array : HH[10,2](0),LL[10,2](0); process = 0; If Highest(H,length) == H and lastHiVal <> H and Lowest(L,length) == L and lastLoVal <> L Then { If LL[1,1] > L Then process = -1; If HH[1,1] < H Then process = 1; } Else If Highest(H,length) == H and lastHiVal <> H Then process = 1; Else If Lowest(L,length) == L and lastLoVal <> L Then process = -1; If process == 1 Then { T = 1; lastHiVal = H; if T != T[1] Then Condition2 = False; If HH[1,2] < LL[1,2] Then { For j = 10 DownTo 2 { HH[j,1] = HH[j-1,1]; HH[j,2] = HH[j-1,2]; } } If HH[1,2] < LL[1,2] or HH[1,1] < H Then { HH[1,1] = H; HH[1,2] = Index; sBar = Index - LL[1,2]; eBar = 0; If TL_GetBeginDate(TL1) == sDate[sBar] and TL_GetBeginTime(TL1) == sTime[sBar] Then { TL_Delete(TL1); } if LL[1,1] > 0 Then { TL1 = TL_New(sDate[sBar],sTime[sBar],LL[1,1],sDate[eBar],sTime[eBar],HH[1,1]); TL_SetColor(TL1,상승추세색); TL_SetSize(TL1,상승추세굵기); if Condition2 == False and HH[1,1] >= LL[1,1]+PriceScale*등락틱수 Then { Condition2 = true; var4 = LL[1,1]+PriceScale*진입틱수; var5 = LL[1,1]-PriceScale*손절틱수; TL4 = TL_New(sDate[eBar],sTime[eBar],var4,NextBarSdate,NextBarStime,var4); TL5 = TL_New(sDate[eBar],sTime[eBar],var5,NextBarSdate,NextBarStime,var5); TL_SetColor(TL4,매수선색); TL_SetColor(TL5,매수손절선색); TL_SetSize(TL4,매수선굵기); TL_SetSize(TL5,매수손절선굵기); } if Condition2 == true Then { TL_SetBegin(TL4,sDate[eBar],sTime[eBar],var4); TL_SetBegin(TL5,sDate[eBar],sTime[eBar],var5); } } } } If process == -1 Then { T = -1; lastLoVal = L; if T != T[1] Then Condition1 = False; If LL[1,2] < HH[1,2] Then { For j = 10 DownTo 2 { LL[j,1] = LL[j-1,1]; LL[j,2] = LL[j-1,2]; } } If LL[1,2] < HH[1,2] or LL[1,1] > L Then { LL[1,1] = L; LL[1,2] = Index; sBar = Index - HH[1,2]; eBar = 0; If TL_GetBeginDate(TL1) == sDate[sBar] and TL_GetBeginTime(TL1) == sTime[sBar] Then { TL_Delete(TL1); } if HH[1,1] > 0 Then { TL1 = TL_New(sDate[sBar],sTime[sBar],HH[1,1],sDate[eBar],sTime[eBar],LL[1,1]); TL_SetColor(TL1,하락추세색); TL_SetSize(TL1,하락추세굵기); if Condition1 == False and LL[1,1] <= HH[1,1]-PriceScale*등락틱수 Then { Condition1 = true; var2 = HH[1,1]-PriceScale*진입틱수; var3 = HH[1,1]+PriceScale*손절틱수; TL2 = TL_New(sDate[eBar],sTime[eBar],var2,NextBarSdate,NextBarStime,var2); TL3 = TL_New(sDate[eBar],sTime[eBar],var3,NextBarSdate,NextBarStime,var3); TL_SetColor(TL2,매도선색); TL_SetColor(TL3,매도손절선색); TL_SetSize(TL2,매도선굵기); TL_SetSize(TL3,매도손절선굵기); } if Condition1 == true Then { TL_SetBegin(TL2,sDate[eBar],sTime[eBar],var2); TL_SetBegin(TL3,sDate[eBar],sTime[eBar],var3); } } } } if Condition1 == true Then { TL_SetEnd(TL2,sDate,sTime,var2); TL_SetEnd(TL3,sDate,sTime,var3); if H < Var2 Then Sell("s",AtLimit,Var2); } if MarketPosition == -1 Then ExitShort("sx",AtStop,Var3[BarsSinceEntry]); if Condition2 == true Then { TL_SetEnd(TL4,sDate,sTime,var4); TL_SetEnd(TL5,sDate,sTime,var5); if L > Var4 Then Buy("b",AtLimit,Var4); } if MarketPosition == 1 Then ExitLong("bx",AtStop,Var5[BarsSinceEntry]); 즐거운 하루되세요 > qha71 님이 쓴 글입니다. > 제목 : 수식 의뢰 드립니다! > 안녕하세요! 수식을 좀 의뢰 드립니다! 항상 노고에 감사드립니다!