커뮤니티

함수요청

프로필 이미지
흰둥이아빠
2020-10-08 13:29:48
808
글번호 142946
답변완료
안녕하세요? 아래 글번호 69438번 재질문입니다. 스크립트 검증 요청드립니다. 작성주신 식으로는 당일청산이 완료되지 않고 오버나이트가 이루어집니다. 포지션이 잡힌 상태에서는 당일종가(익일시가)에는 무조건 청산이 이루어지게 하고 싶습니다. ---------------------------------------------------------------------------------------- var : R1(0,Data1),R2(0,Data2),R3(0,data3); var : C1(0,Data1),C2(0,Data2),C3(0,data3); var : Bcond(False,Data1),Scond(False,Data1); if Data2(Bdate != Bdate[1]) Then { SetStopEndofday(063000); } if Data1(Bdate != Bdate[1]) Then { SetStopEndofday(0); C1 = Data1(C[1]); Bcond = False; Scond = False; } if Data2(Bdate != Bdate[1]) Then C2 = Data2(C[1]); if Data3(Bdate != Bdate[1]) Then C3 = Data3(C[1]); if C1 > 0 Then R1 = (data1(c)-C1)/C1*100; if C2 > 0 Then R2 = (data2(c)-C2)/C2*100; if C3 > 0 Then R3 = (data3(c)-C3)/C3*100; if Bcond == False and R1 >= 1 and R2 > 0 and R3 > 0 and R1 > max(R2,R3) Then { Bcond = true; Buy("b",AtMarket); } if Scond == False and R1 <= -1 and R2 < 0 and R3 < 0 and R1 < min(R2,R3) Then { Scond = true; Sell("s",AtMarket); }
시스템
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2020-10-08 15:29:28

안녕하세요 예스스탁입니다. 수정한 식입니다. var : R1(0,Data1),R2(0,Data2),R3(0,data3); var : C1(0,Data1),C2(0,Data2),C3(0,data3); var : Bcond(False,Data1),Scond(False,Data1); if Data2(sdate != sdate[1]) Then { SetStopEndofday(063000); } if Data1(Bdate != Bdate[1]) Then { SetStopEndofday(0); C1 = Data1(C[1]); Bcond = False; Scond = False; } if Data2(Bdate != Bdate[1]) Then C2 = Data2(C[1]); if Data3(Bdate != Bdate[1]) Then C3 = Data3(C[1]); if C1 > 0 Then R1 = (data1(c)-C1)/C1*100; if C2 > 0 Then R2 = (data2(c)-C2)/C2*100; if C3 > 0 Then R3 = (data3(c)-C3)/C3*100; if Bcond == False and R1 >= 1 and R2 > 0 and R3 > 0 and R1 > max(R2,R3) Then { Bcond = true; Buy("b",AtMarket); } if Scond == False and R1 <= -1 and R2 < 0 and R3 < 0 and R1 < min(R2,R3) Then { Scond = true; Sell("s",AtMarket); } 즐거운 하루되세요 > 흰둥이아빠 님이 쓴 글입니다. > 제목 : 함수요청 > 안녕하세요? 아래 글번호 69438번 재질문입니다. 스크립트 검증 요청드립니다. 작성주신 식으로는 당일청산이 완료되지 않고 오버나이트가 이루어집니다. 포지션이 잡힌 상태에서는 당일종가(익일시가)에는 무조건 청산이 이루어지게 하고 싶습니다. ---------------------------------------------------------------------------------------- var : R1(0,Data1),R2(0,Data2),R3(0,data3); var : C1(0,Data1),C2(0,Data2),C3(0,data3); var : Bcond(False,Data1),Scond(False,Data1); if Data2(Bdate != Bdate[1]) Then { SetStopEndofday(063000); } if Data1(Bdate != Bdate[1]) Then { SetStopEndofday(0); C1 = Data1(C[1]); Bcond = False; Scond = False; } if Data2(Bdate != Bdate[1]) Then C2 = Data2(C[1]); if Data3(Bdate != Bdate[1]) Then C3 = Data3(C[1]); if C1 > 0 Then R1 = (data1(c)-C1)/C1*100; if C2 > 0 Then R2 = (data2(c)-C2)/C2*100; if C3 > 0 Then R3 = (data3(c)-C3)/C3*100; if Bcond == False and R1 >= 1 and R2 > 0 and R3 > 0 and R1 > max(R2,R3) Then { Bcond = true; Buy("b",AtMarket); } if Scond == False and R1 <= -1 and R2 < 0 and R3 < 0 and R1 < min(R2,R3) Then { Scond = true; Sell("s",AtMarket); }