커뮤니티

안녕하세요.. 수식 문의드립니다.

프로필 이미지
율담
2018-11-13 18:17:05
2615
글번호 224662
답변완료
예스트레이더로 매매를 하고 있습니다. 궁금한점이 있어서 문의 드립니다. 예스트레이더를 사용합니다. A종목의 특정 진입명 및 청산명이 발생했을때, 다음 진입신호에 B종목에 진입하고 싶습니다. 수식 부탁드립니다. 위에 인한 예스스탁의 성과를 시뮬레이션 하고 싶습니다.. 가능할까요.
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2018-12-14 16:24:17

안녕하세요 예스스탁입니다. 1 예스스팟은 과거 시뮬레이션이 되지는 않습니다. 항상 실시간에서만 동작하므로 과거 데이터를 통한 시뮬레이션이나 리포트는 제공되지 않습니다. 차트에 적용하는 시스템은 해당 차트의 기본종목만 신호가 발생합니다 다른종목으로 주문이 불가능합니다. 2 직전진입의 포지션 방향과 현재진입의 방향이 불분명합니다. 아래수식 참고하시기 바랍니다. 스크립트 객체설정 차트객체 추가 --> 속성에서 객체명은 Chart1, 아이디연결 계좌객체 추가 --> 속성에서 객체명은 Account1, 계좌번호 지정 종목객체 추가 --> 속성에서 객체명은 MarketData1. A종목으로 지정 종목객체 추가 --> 속성에서 객체명은 MarketData2. B종목으로 지정 var EntryName,EntryName1; var ExitName,ExitName1; var EntryCode; function Chart1_OnRiseSignal(Signal) { //Buy if (Signal.signalKind == 1) { //직전 Buy신호의 이름 EntryName1 = EntryName; //현재 Buy신호의 이름 EntryName = Signal.name ; //현재진입명은 B1이 아니고 직전진입은 B1이고 BX1로 청산되었다면 //MarketData2 종목으로 진입 if (EntryName != "B1" && EntryName1 == "B1" && ExitName != "BX1") { EntryCode = Main.GetOrderCode(MarketData2.code); Account1.OrderBuy(EntryCode, 1, MarketData2.Ask(3), 0); } else //위 상황이 아니면 MarketData1 종목으로 진입 { EntryCode = Main.GetOrderCode(MarketData1.code); Account1.OrderBuy(EntryCode, 1, MarketData2.Ask(3), 0); } } //exitlong if (Signal.signalKind == 2) { //직전 Exitlong신호의 이름 ExitName1 = ExitName; //현재 Exitlong신호의 이름 ExitName = Signal.name; //직전진입이MarketData1 이면 if (EntryCode == Main.GetOrderCode(MarketData1.code)) Account1.OrderSell(EntryCode, 1, MarketData1.Bid(3),0); //직전진입이MarketData2 이면 if (EntryCode == Main.GetOrderCode(MarketData2.code)) Account1.OrderSell(EntryCode, 1, MarketData2.Bid(3),0); } //Sell if (Signal.signalKind == 3) { //직전 Sell신호의 이름 EntryName1 = EntryName; //현재 Sell신호의 이름 EntryName = Signal.name ; //현재진입명은 S1이 아니고 직전진입은 S1이고 SX1로 청산되었다면 //MarketData2 종목으로 진입 if (EntryName != "S1" && EntryName1 == "S1" && ExitName != "SX1") { EntryCode = Main.GetOrderCode(MarketData2.code); Account1.OrderSell(EntryCode, 1, MarketData2.Bid(3), 0); } else //위 상황이 아니면 MarketData1 종목으로 진입 { EntryCode = Main.GetOrderCode(MarketData1.code); Account1.OrderSell(EntryCode, 1, MarketData2.Bid(3), 0); } } //exitShort if (Signal.signalKind == 4) { //직전 ExitShort신호의 이름 ExitName1 = ExitName; //현재 ExitShort신호의 이름 ExitName = Signal.name; //직전진입이MarketData1 이면 if (EntryCode == Main.GetOrderCode(MarketData1.code)) Account1.OrderBuy(EntryCode, 1, MarketData1.Ask(3),0); //직전진입이MarketData2 이면 if (EntryCode == Main.GetOrderCode(MarketData2.code)) Account1.OrderBuy(EntryCode, 1, MarketData2.Ask(3),0); } } 즐거운 하루되세요 > 율담 님이 쓴 글입니다. > 제목 : 안녕하세요.. 수식 문의드립니다. > 예스트레이더로 매매를 하고 있습니다. 궁금한점이 있어서 문의 드립니다. 예스트레이더를 사용합니다. A종목의 특정 진입명 및 청산명이 발생했을때, 다음 진입신호에 B종목에 진입하고 싶습니다. 수식 부탁드립니다. 위에 인한 예스스탁의 성과를 시뮬레이션 하고 싶습니다.. 가능할까요.