커뮤니티

수식문의드립니다

프로필 이미지
jshwang2
2022-02-04 10:56:44
893
글번호 156001
답변완료
안녕하세요 몇가지 문의드립니다! 1. 아래 수식을 돌리면 시스템 실행시 진입수량에 매수가 잡혀있으면 매수진입이 안되고, 매도진입 1회 이후 매수진입이 되고 반대도 마찬가지입니다 var : HB(14795), LB(14790), Esig(0); if HB >= C && C >= (HB+LB)/2 Then Esig = 1; Else if LB <= C && C <= (HB+LB)/2 Then Esig = -1; Else Esig = 0; if Esig == 1 Then Buy("b",AtStop,HB,2); if Esig == -1 Then Sell("s",AtStop,LB,2); '주문시작신호'에서 '진입신호'로 설정해놓은 상태인데 무엇때문인지 확인 부탁드립니다 2. 아래 수식을 돌리면 예스트레이더 프로그램 자체가 응답을 안한다며 종료됩니다 현재 한국투자증권 예스트레이더 모의투자 사용중입니다 로그라도 봐야 확인을 할텐데 그냥 종료되서 뭐가 문제인지 못찾겠네요... 확인 부탁드리겠습니다 input : HB(14750), LB(14740),TD(20220203), TT(224400) ; var : Hstate(true), Lstate(true), e60(0); e60 = Ema(C,5); if sDate >= TD and sTime >= TT Then Condition1 = true; if Condition1 == true Then { if CrossUp(C, HB) and Hstate == true Then Buy() ; if CrossDown(C, LB) and Lstate == true Then Sell() ; if CrossDown(C, e60) Then { ExitLong(); Hstate = false ; } if CrossUp(C, e60) Then { ExitShort(); Lstate = false ; } } MessageLog("N %.4s", Hstate); MessageLog("p %.4s", Lstate); MessageLog("N %.1s", sDate); MessageLog("p %.1s", sTime); 감사합니다
시스템
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2022-02-04 15:34:51

안녕하세요 예스스탁입니다. 1 주문시작신호는 신호발생을 제어하는 부분이 아니고 주문을 제어하는 부분입니다. 차트의 신호는 해당옵션의 영향을 받지 않습니다 수식은 차트에 적용되면 차트 첫봉부터 현재봉으로 오면서 과거봉에 신호를 표시하게 되고 실시간에서 데이타를 받으면 이 신호를 연결해 갑니다. 주문시작신호는 자동매매시에 시스템 적용이후 진입이 1회이상 발생한 이후부터 주문을 발생하고자 할떄는 주문시작신호를 진입신호로, 관계없이 발생하는 모든 신호에 대해 주문할떄는 모든신호로 설정하는 부분입니다. 2 MessageLog("N %.4s", Hstate); MessageLog("p %.4s", Lstate); MessageLog("N %.1s", sDate); MessageLog("p %.1s", sTime); MessageLog로 문자나 논리식을 출력할떄는 %s 숫자를 출력할떄는 %.f를 사용합니다. 소숫점4자리까지 출력하면 %.4f입니다. MessageLog("N %s", Hstate); MessageLog("p %s", Lstate); MessageLog("N %.f", sDate); MessageLog("p %.f", sTime); 즐거운 하루되세요 > jshwang2 님이 쓴 글입니다. > 제목 : 수식문의드립니다 > 안녕하세요 몇가지 문의드립니다! 1. 아래 수식을 돌리면 시스템 실행시 진입수량에 매수가 잡혀있으면 매수진입이 안되고, 매도진입 1회 이후 매수진입이 되고 반대도 마찬가지입니다 var : HB(14795), LB(14790), Esig(0); if HB >= C && C >= (HB+LB)/2 Then Esig = 1; Else if LB <= C && C <= (HB+LB)/2 Then Esig = -1; Else Esig = 0; if Esig == 1 Then Buy("b",AtStop,HB,2); if Esig == -1 Then Sell("s",AtStop,LB,2); '주문시작신호'에서 '진입신호'로 설정해놓은 상태인데 무엇때문인지 확인 부탁드립니다 2. 아래 수식을 돌리면 예스트레이더 프로그램 자체가 응답을 안한다며 종료됩니다 현재 한국투자증권 예스트레이더 모의투자 사용중입니다 로그라도 봐야 확인을 할텐데 그냥 종료되서 뭐가 문제인지 못찾겠네요... 확인 부탁드리겠습니다 input : HB(14750), LB(14740),TD(20220203), TT(224400) ; var : Hstate(true), Lstate(true), e60(0); e60 = Ema(C,5); if sDate >= TD and sTime >= TT Then Condition1 = true; if Condition1 == true Then { if CrossUp(C, HB) and Hstate == true Then Buy() ; if CrossDown(C, LB) and Lstate == true Then Sell() ; if CrossDown(C, e60) Then { ExitLong(); Hstate = false ; } if CrossUp(C, e60) Then { ExitShort(); Lstate = false ; } } MessageLog("N %.4s", Hstate); MessageLog("p %.4s", Lstate); MessageLog("N %.1s", sDate); MessageLog("p %.1s", sTime); 감사합니다