커뮤니티

수식 부탁드립니다.

프로필 이미지
수다리
2018-05-04 05:21:28
121
글번호 118691
답변완료
스위칭시스템인데 본절과 손절이라고 차트에 텍스트로 표시하려합니다. 진입이후에 조건을 만족을 1번 만족했을때만 한번 텍스트를 표시하려하는데 아래처럼 만들었더니 어떤곳은 한번만 나오는데 어떤곳은 지저분하게 여러개가 나옵니다. 뭐가 문제인지 수식 좀 수정부탁드립니다. if (t1 == 1 or t1 ==0) and t3 == 1 Then Condition1 = True; If Condition1 == True Then { Buy("TF",AtLimit,dc2); Condition1 = False; } //========================================================================== if t1 == -1 and (t3 == -1 or t3 == 0) Then Condition3 = True; If Condition3 == True Then { Sell("TF!",AtLimit,uc2); Condition3 = False; } // 본절표시------------------------------------------------------------------------- if MarketPosition == 1 and BarsSinceEntry >= 0 and CountIF(H >= EntryPrice+PriceScale*12,BarsSinceEntry) == 1 Then Condition10 = True; if MarketPosition == -1 and BarsSinceEntry >= 0 and CountIF(L <= EntryPrice-PriceScale*12,BarsSinceEntry) == 1 Then Condition11 = True; if MarketPosition == 1 and Condition10 == True Then { 본절가1 = Text_New(sDate,sTime,L-PriceScale*20,"본절"); Condition10 = False; Text_SetStyle(본절가1,2,2); //텍스트 가로세로 정렬 Text_SetColor(본절가1,black); //텍스트 색상지정 } if MarketPosition == -1 and Condition11 == True Then { 본절가2 = Text_New(sDate,sTime,H+PriceScale*20,"본절"); Condition11 = False; Text_SetStyle(본절가2,2,2); //텍스트 가로세로 정렬 Text_SetColor(본절가2,black); //텍스트 색상지정 } // 손절표시------------------------------------------------------------------------- if MarketPosition == 1 and BarsSinceEntry >= 0 and CountIF(L <= EntryPrice-PriceScale*15,BarsSinceEntry) == 1 Then Condition12 = True; if MarketPosition == -1 and BarsSinceEntry >= 0 and CountIF(H >= EntryPrice+PriceScale*15,BarsSinceEntry) == 1 Then Condition13 = True; if MarketPosition == 1 and Condition12 == True Then { 손절1 = Text_New(sDate,sTime,L-PriceScale*10,"손절"); Condition12 = False; Text_SetStyle(손절1,2,2); //텍스트 가로세로 정렬 Text_SetColor(손절1,black); //텍스트 색상지정 } if MarketPosition == -1 and Condition13 == True Then { 손절2 = Text_New(sDate,sTime,H+PriceScale*10,"손절"); Condition13 = False; Text_SetStyle(손절2,2,2); //텍스트 가로세로 정렬 Text_SetColor(손절2,black); //텍스트 색상지정 }
시스템
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2018-05-04 15:24:59

안녕하세요 예스스탁입니다. 올려주신 수식으로 구현하고자 하는 내용이 파악이 어렵습니다. 아래수식 참고하셔서 수정보완하시기 바랍니다. 매수나 매도진입이후에 지정한 익절이나 손절에 도달하면 한번 텍스트를 출력하는 수식입니다. input : 익절틱수(12),손절틱수(15); var : tx(0); if MarketPosition == 1 Then { if Condition1 == false and H >= EntryPrice+PriceScale*익절틱수 Then { Condition1 = true; tx = Text_New(sdate,stime,H,"익절"); Text_SetStyle(tx,2,2); //텍스트 가로세로 정렬 Text_SetColor(tx,black); //텍스트 색상지정 } if Condition2 == false and L <= EntryPrice-PriceScale*손절틱수 Then { Condition2 = true; tx = Text_New(sdate,stime,L,"손절"); Text_SetStyle(tx,2,2); //텍스트 가로세로 정렬 Text_SetColor(tx,black); //텍스트 색상지정 } } else { Condition1 = false; Condition2 = false; } if MarketPosition == 1 Then { if Condition3 == false and L <= EntryPrice-PriceScale*익절틱수 Then { Condition3 = true; tx = Text_New(sdate,stime,L,"익절"); Text_SetStyle(tx,2,2); //텍스트 가로세로 정렬 Text_SetColor(tx,black); //텍스트 색상지정 } if Condition4 == false and H >= EntryPrice+PriceScale*손절틱수 Then { Condition4 = true; tx = Text_New(sdate,stime,H,"손절"); Text_SetStyle(tx,2,2); //텍스트 가로세로 정렬 Text_SetColor(tx,black); //텍스트 색상지정 } } else { Condition3 = false; Condition4 = false; } 즐거운 하루되세요 > 수다리 님이 쓴 글입니다. > 제목 : 수식 부탁드립니다. > 스위칭시스템인데 본절과 손절이라고 차트에 텍스트로 표시하려합니다. 진입이후에 조건을 만족을 1번 만족했을때만 한번 텍스트를 표시하려하는데 아래처럼 만들었더니 어떤곳은 한번만 나오는데 어떤곳은 지저분하게 여러개가 나옵니다. 뭐가 문제인지 수식 좀 수정부탁드립니다. if (t1 == 1 or t1 ==0) and t3 == 1 Then Condition1 = True; If Condition1 == True Then { Buy("TF",AtLimit,dc2); Condition1 = False; } //========================================================================== if t1 == -1 and (t3 == -1 or t3 == 0) Then Condition3 = True; If Condition3 == True Then { Sell("TF!",AtLimit,uc2); Condition3 = False; } // 본절표시------------------------------------------------------------------------- if MarketPosition == 1 and BarsSinceEntry >= 0 and CountIF(H >= EntryPrice+PriceScale*12,BarsSinceEntry) == 1 Then Condition10 = True; if MarketPosition == -1 and BarsSinceEntry >= 0 and CountIF(L <= EntryPrice-PriceScale*12,BarsSinceEntry) == 1 Then Condition11 = True; if MarketPosition == 1 and Condition10 == True Then { 본절가1 = Text_New(sDate,sTime,L-PriceScale*20,"본절"); Condition10 = False; Text_SetStyle(본절가1,2,2); //텍스트 가로세로 정렬 Text_SetColor(본절가1,black); //텍스트 색상지정 } if MarketPosition == -1 and Condition11 == True Then { 본절가2 = Text_New(sDate,sTime,H+PriceScale*20,"본절"); Condition11 = False; Text_SetStyle(본절가2,2,2); //텍스트 가로세로 정렬 Text_SetColor(본절가2,black); //텍스트 색상지정 } // 손절표시------------------------------------------------------------------------- if MarketPosition == 1 and BarsSinceEntry >= 0 and CountIF(L <= EntryPrice-PriceScale*15,BarsSinceEntry) == 1 Then Condition12 = True; if MarketPosition == -1 and BarsSinceEntry >= 0 and CountIF(H >= EntryPrice+PriceScale*15,BarsSinceEntry) == 1 Then Condition13 = True; if MarketPosition == 1 and Condition12 == True Then { 손절1 = Text_New(sDate,sTime,L-PriceScale*10,"손절"); Condition12 = False; Text_SetStyle(손절1,2,2); //텍스트 가로세로 정렬 Text_SetColor(손절1,black); //텍스트 색상지정 } if MarketPosition == -1 and Condition13 == True Then { 손절2 = Text_New(sDate,sTime,H+PriceScale*10,"손절"); Condition13 = False; Text_SetStyle(손절2,2,2); //텍스트 가로세로 정렬 Text_SetColor(손절2,black); //텍스트 색상지정 }