커뮤니티

수식문의

프로필 이미지
에구머니
2023-09-22 15:08:12
597
글번호 172662
답변완료
안녕하세요? 수식 부탁 드립니다. 감사합니다.
시스템
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2023-09-22 14:13:35

안녕하세요 예스스탁입니다. 1 input : StartTime(020000),EndTime(010000); Input: lim1(3), lim2(5), lim3(7), lim4(10); Input: n1(1), n2(2), n3(3), n4(6); Input: 익절(3); var : Tcond(False),entry(0); IF Endtime > starttime Then SetStopEndofday(Endtime); Else { if sDate != sDate[1] Then SetStopEndofday(Endtime); } if (sdate != sdate[1] and stime >= EndTime) or (sdate == sdate[1] and stime >= EndTime and stime[1] < EndTime) Then Tcond = False; if (sdate != sdate[1] and stime >= StartTime) or (sdate == sdate[1] and stime >= StartTime and stime[1] < StartTime) Then { Tcond = true; entry = 0; var1 = C; IF Endtime <= starttime Then { SetStopEndofday(0); } } if Tcond == true Then { if (MarketPosition != 0 and MarketPosition != MarketPosition[1]) or (MarketPosition == MarketPosition[1] and TotalTrades > TotalTrades[1]) Then entry = entry +1; if MarketPosition == 0 and l > var1*(1-lim1/100) and entry < 1 Then { Buy("b1.",AtLimit,var1*(1-lim1/100),n1); Buy("b2.",AtLimit,var1*(1-lim2/100),n2); Buy("b3.",AtLimit,var1*(1-lim3/100),n3); Buy("b4.",AtLimit,var1*(1-lim4/100),n4); } if MarketPosition == 1 Then { ExitLong("bx",AtLimit,AvgEntryPrice*(1+익절/100)); if highest(H,BarsSinceEntry) < var1*(1-lim2/100) Then Buy("b2",AtLimit,var1*(1-lim2/100),n2); if highest(H,BarsSinceEntry) < var1*(1-lim3/100) Then Buy("b3",AtLimit,var1*(1-lim3/100),n3); if highest(H,BarsSinceEntry) < var1*(1-lim4/100) Then Buy("b4",AtLimit,var1*(1-lim4/100),n4); } if MarketPosition == 0 and h < var1*(1+lim1/100) and entry < 1 Then { Sell("s1.",AtLimit,var1*(1+lim1/100),n1); Sell("s2.",AtLimit,var1*(1+lim2/100),n2); Sell("s3.",AtLimit,var1*(1+lim3/100),n3); Sell("s4.",AtLimit,var1*(1+lim4/100),n4); } if MarketPosition == -1 Then { ExitShort("sx",AtLimit,AvgEntryPrice*(1-익절/100)); if h < var1*(1+lim2/100) Then Sell("s2",AtLimit,var1*(1+lim2/100),n2); if h < var1*(1+lim3/100) Then Sell("s3",AtLimit,var1*(1+lim3/100),n3); if h < var1*(1+lim4/100) Then Sell("s4",AtLimit,var1*(1+lim4/100),n4); } } 2 input : starttime(020000),N(30); var : cnt(0),dd(0); Array : r1[100](0),r2[100](0); if (sdate != sdate[1] and stime >= starttime) or (sdate == sdate[1] and stime >= starttime and stime[1] < starttime) Then { dd = dd+1; var1 = c; Var2 = h; var3 = l; For cnt = 99 DownTo 1 { R1[cnt] = R1[cnt-1]; R2[cnt] = R2[cnt-1]; } } if h > Var2 Then Var2 = h; if l < Var3 Then Var3 = l; R1[0] =(Var2-var1)/var1*100; R2[0] =(Var3-var1)/var1*100; Plot1(R1[0]); Plot2(R2[0]); if dd >= n Then { value1 = 0; Value2 = 0; For cnt = 0 to n-1 { value1 = value1+r1[cnt]; value2 = value2+r2[cnt]; } Value3 = value1/n; Value4 = value2/n; Plot3(value3); Plot4(Value4); } 즐거운 하루되세요 > 에구머니 님이 쓴 글입니다. > 제목 : 수식문의 > 안녕하세요? 수식 부탁 드립니다. 감사합니다.