커뮤니티

수식 문의

프로필 이미지
에구머니
2021-04-23 20:05:34
701
글번호 148205
답변완료
안녕하세요? 1. 수식 질문: 예컨대 2021년 1월 3일 11시(종가) 이후부터 2021년 2월 2일 10시(종가)까지는 상방 그 이후 2021년 3월 5일 13시(종가)까지는 중립 그 이후 현재까지는 하방. 뭐 이런 식으로 만들어서 1시간봉보다 작은 분봉에 적용하려 합니다. 위를 어떻게 쓰면 되나요? 2. 첨부한 시스템식 부탁드립니다.
시스템
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2021-04-20 11:38:43

안녕하세요 예스스탁입니다. 1 var: 상방(false), 하방(false), 중립(false); if sDate == 20210103 and sTime == 110000 Then 상방 = true; if sDate == 20210202 and sTime == 100000 Then { 상방 = False; 중립 = true; } if sDate == 20210202 and sTime == 100000 Then { 중립 = False; 하방 = true; } 2 Input: n1(4), n2(5), m1(1), m2(1), m3(2), m4(3), m5(4), 익절k(5), 손절k(5), k유리(3),pause(5); var: 상방(false), 하방(false), 중립(false),lcnt(0),myATR(0),기준선(0),중심선(0),vv(0); var1 = ma(C,10); var2 = ma(C,30); var3 = ma(C,100); 상방 = (var1 > Var2 and Var2 > Var3); 하방 = (var1 < Var2 and Var2 < Var3); 중립 = 상방 == False and 하방 == false; 기준선 = (Highest(High, 96) + Lowest(Low, 96)) / 2; myAtr = Atr(96); if TotalTrades > TotalTrades[1] Then { if IsExitName("BL",1) == true or IsExitName("SL",1) == true Then { Lcnt = Lcnt+1; } Else lcnt = 0; } if lcnt == 0 Then vv = m1; if lcnt == 1 Then vv = m2; if lcnt == 2 Then vv = m3; if lcnt == 3 Then vv = m4; if lcnt >= 4 Then vv = m5; If 상방 and ((C < 중심선 - n1*myAtr) or (C < Highest(C, 30) - n2*myAtr)) then { if MarketPosition == 0 and (IsExitName("BL",1) == False or (IsExitName("BL",1) == true and BarsSinceExit(1) >= pause)) Then buy("ub",OnClose,DEF,vv); } if MarketPosition == 0 and MarketPosition(1) == 1 and IsExitName("BL",1) == true Then Buy("b",AtLimit,ExitPrice(1)-k유리*myAtr,vv); If 하방 and ((C > 중심선 + n1*myAtr) or (C > Lowest(C, 30) + n2*myAtr)) then { if MarketPosition == 0 and (IsExitName("SL",1) == False or (IsExitName("SL",1) == true and BarsSinceExit(1) >= pause)) Then Sell("ds",OnClose,DEF,vv); } If 중립 and ((C < 중심선 - n1*myAtr) or (C < Highest(C, 30) - n2*myAtr)) then { if MarketPosition == 0 and (IsExitName("BL",1) == False or (IsExitName("BL",1) == true and BarsSinceExit(1) >= pause)) Then buy("nb",OnClose,DEF,vv); } If 중립 and ((C > 중심선 + n1*myAtr) or (C > Lowest(C, 30) + n2*myAtr)) then { if MarketPosition == 0 and (IsExitName("SL",1) == False or (IsExitName("SL",1) == true and BarsSinceExit(1) >= pause)) Then Sell("ns",OnClose,DEF,vv); } if MarketPosition == 1 Then { ExitLong("BP",AtLimit,EntryPrice+익절k*myAtr); ExitLong("BL",AtLimit,EntryPrice-손절k*myAtr); } if MarketPosition == -1 Then { ExitShort("SP",AtLimit,EntryPrice-익절k*myAtr); ExitShort("SL",AtLimit,EntryPrice+손절k*myAtr); } 즐거운 하루되세요 > 에구머니 님이 쓴 글입니다. > 제목 : 수식 문의 > 안녕하세요? 1. 수식 질문: 예컨대 2021년 1월 3일 11시(종가) 이후부터 2021년 2월 2일 10시(종가)까지는 상방 그 이후 2021년 3월 5일 13시(종가)까지는 중립 그 이후 현재까지는 하방. 뭐 이런 식으로 만들어서 1시간봉보다 작은 분봉에 적용하려 합니다. 위를 어떻게 쓰면 되나요? 2. 첨부한 시스템식 부탁드립니다.