커뮤니티

문의드립니다.

프로필 이미지
yspark93
2024-02-12 17:38:42
575
글번호 176561
답변완료
이동평균선 돌파 전략을 프로그래밍하였으나 제가 생각한 방식으로 작동하지 않아 문의드립니다. Input : P1(180), StopLoss(2); // Var : 이동평균(0); 이동평균 = Ema(C, P1); // 이동평균선 가격 #진입 if C > 이동평균 and O < 이동평균 Then{ Buy("Buy",AtStop,Open); } // 시가가 이동평균선 아래고 종가가 이동평균선 위이면 그다음 시가에서 매수진입 else if C < 이동평균 and O > 이동평균 Then{ Sell("Sell",AtLimit,Open); } // 시가가 이동평균선 위이고 종가가 이동평균선 아래면 그다음 시가에서 매도진입 #손실청산 SetStopLoss(2); // 2% 손실 시 청산 #당일청산 SetStopEndofday(1500); // 15시 당일청산 제가 생각한 프로그램 대로라면 가격이 이동평균선 돌파하면 그다음 봉 시가에서 진입해야 하나 돌파가 있지 않았는데 진입하는 등 목표한 대로 동작하지 않습니다. 코드 오류 부분 및 수정 사항 지적 부탁드립니다.
시스템
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2024-02-14 10:12:11

안녕하세요 예스스탁입니다. 1 올려주신 내용은 신호타입을 atmarket을 사용하시면 됩니다. atmarket이 봉완성시 지정한 조건이 만족하면 다음봉 시가에 신호가 발생하는 타입니다. 2 atstop,atlimit은 봉완성시 가격을 지정하고 지정한 가격이상/이하의 시세가 발생해야만 신호가 발생하는 타입니다. 랭귀지 도움말에서 각 신호타입에 대한 설명을 참고하시기 바랍니다. 3 input : P1(180), StopLoss(2); Var : 이동평균(0); 이동평균 = Ema(C, P1); // 이동평균선 가격 // 시가가 이동평균선 아래고 종가가 이동평균선 위이면 다음시가 매수진입 if C > 이동평균 and O < 이동평균 Then { Buy("Buy",atMarket); } // 시가가 이동평균선 위이고 종가가 이동평균선 아래이면 다음시가 매도진입 else if C < 이동평균 and O > 이동평균 Then{ Sell("Sell",AtMarket); } #손실청산 SetStopLoss(2); // 2% 손실 시 청산 #당일청산 SetStopEndofday(1500); // 15시 당일청산 즐거운 하루되세요 > yspark93 님이 쓴 글입니다. > 제목 : 문의드립니다. > 이동평균선 돌파 전략을 프로그래밍하였으나 제가 생각한 방식으로 작동하지 않아 문의드립니다. Input : P1(180), StopLoss(2); // Var : 이동평균(0); 이동평균 = Ema(C, P1); // 이동평균선 가격 #진입 if C > 이동평균 and O < 이동평균 Then{ Buy("Buy",AtStop,Open); } // 시가가 이동평균선 아래고 종가가 이동평균선 위이면 그다음 시가에서 매수진입 else if C < 이동평균 and O > 이동평균 Then{ Sell("Sell",AtLimit,Open); } // 시가가 이동평균선 위이고 종가가 이동평균선 아래면 그다음 시가에서 매도진입 #손실청산 SetStopLoss(2); // 2% 손실 시 청산 #당일청산 SetStopEndofday(1500); // 15시 당일청산 제가 생각한 프로그램 대로라면 가격이 이동평균선 돌파하면 그다음 봉 시가에서 진입해야 하나 돌파가 있지 않았는데 진입하는 등 목표한 대로 동작하지 않습니다. 코드 오류 부분 및 수정 사항 지적 부탁드립니다.