커뮤니티

기초적인 사용법 질문 드립니다.

프로필 이미지
9382
2025-11-10 11:31:26
126
글번호 227820
답변완료

안녕하세요 예스스팟 입문자입니다. 유진예스트레이더 해외선물 매매하려고 하구요.
흐름이 이해가 어려워서 질문드립니다.
예스랭귀지로 이평 돌파 전략 시스템을 만들었습니다. # 매수 If CrossUP(close, value1) Then { Buy(); } # 매도 If CrossDown(close, value2) Then { Sell(); }
1) 이걸 3010 차트에 시스템 '시험 적용'하고, 예스스팟에서 Main_OnRiseSignal 이 발생하면 신호에 따라 매수 매도 코드 짜면 되는걸까요? 로그찍어봤는데 신호가 발생해도 저 함수가 실행되지 않는것 같아서요 제가 이해하기로는 신호발생 -> Main_OnRiseSignal 여기서 종목코드 얻을 수 있고 종목객체 만들어서 가격을 지속적으로 받아가면서 대응하는걸로 이해했는데 맞을까요?
2) 추가로 Main_OnUpdateMarket 함수는 언제 발생하는 이벤트인가요?

답변 1
프로필 이미지

예스스탁 예스스탁 답변

2025-11-20 10:47:48

안녕하세요 예스스탁입니다. 1 function Main_OnRiseSignal 메인객체의 OnRiseSignal은 확장차트객체의 신호가 발생했을때 알려주는 이벤트입니다. function Chart1_OnRiseSignal(Signal) 차트에 아이디어를 부여해 연결한 차트객체는 해당 차트객체에 있는 이벤트를 사용하셔야 합니다. 스크립트객체설정 차트객체추가 -> 속성에서 객체명 Chart1, 시스템적용된 차트와 동일아이디 부여 계좌객체추가 -> 속성에서 객체명 Account1, 주문낼 계좌번호 지정 var OC,MK; function Main_OnStart() { Main.MessageList("Start"); //차트종목 종목코드 OC = Main.GetOrderCode(Chart1.GetCode(1)); //종목객체 요청 Main.ReqMarketData(OC); } //종목객체 생성되면 객체를 MK에 저장 function Main_OnRcvMarketData(MarketData) { MK = MarketData; } function Chart1_OnRiseSignal(Signal) { //매수진입신호 발생 if (Signal.signalKind == 1) { Main.MessageList("매수진입신호발생 : 매도3호가로 매수주문"); Account1.OrderBuy(OC,Signal.count,MK.Ask(3),2); } //매수청산신호 발생 if (Signal.signalKind == 2) { Main.MessageList("매수청산신호발생 : 매수3호가로 매도주문"); Account1.OrderSell(OC,Signal.count,MK.Bid(3),2); } //매도진입신호 발생 if (Signal.signalKind == 3) { Main.MessageList("매도진입신호발생 : 매수3호가로 매도주문"); Account1.OrderSell(OC,Signal.count,MK.Bid(3),2); } //매도청산신호 발생 if (Signal.signalKind == 4) { Main.MessageList("매도청산신호발생 : 매도3호가로 매수주문"); Account1.OrderBuy(OC,Signal.count,MK.Ask(3),2); } } 2 Main_OnUpdateMarket 종목객체를 사용하면 자동으로 업데이트가 되는데 종목객체의 시세가 업데이트되면 발생하는 이벤트입니다. 해당 스팟수식에서 종목객체를 사용하지 않으면 발생하지 않습니다. 즐거운 하루되세요