커뮤니티

수식 부탁드립니다.

프로필 이미지
율담
2017-01-26 23:43:41
2553
글번호 224110
답변완료
function Main_OnStart() { T = 0; } function Chart1_OnRiseSignal(Signal) { //매수진입신호 발생 if (Signal.signalKind == 1) { Account1.OrderBuy(Main.GetOrderCode(MarketData1.code), 1, MarketData1.Ask(1), 2); } //매수청산신호 발생 if (Signal.signalKind == 2) { Account1.OrderSell(Main.GetOrderCode(MarketData1.code), 1, MarketData1.Bid(1), 2); } //매도진입신호 발생 if (Signal.signalKind == 3) { Account1.OrderSell(Main.GetOrderCode(MarketData1.code), 1, MarketData1.Bid(1), 2); } //매도청산신호 발생 if (Signal.signalKind == 4) { Account1.OrderBuy(Main.GetOrderCode(MarketData1.code), 1, MarketData1.Ask(1), 2); } } ------------------------------------------------------------------------------- 위식은 차트의 신호를 이용해 다른종목에 주문을 넣는 식입니다. 필터를 하나 추가하고 싶습니다. if 차트의 신호가 발생 + 청산손익이 수익일경우(1) then 다른종목에 진입 직전거래가 수익일시 진입하는 조건을 넣고 싶습니다. 그럼 새해복 많이 받으세요.
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2017-02-22 14:56:38

안녕하세요 예스스탁입니다. 스팟은 전략이 실행된 이후의 신호만 받아드립니다. 시스템 적용이전의 신호내역은 알수 없으므로 적용후 첫 진입은 이전과 무관하게 진입하고 이후에 두번째부터 손익파악해 진입합니다. var T,Entry,EP,XP; function Main_OnStart() { T = 0; Entry = true; } function Chart1_OnRiseSignal(Signal) { //매수진입신호 발생 if (T <= 0 && Signal.signalKind == 1 && Entry == true) { T = 1; EP = MarketData1.Ask(1); Account1.OrderBuy(Main.GetOrderCode(MarketData1.code), 1, MarketData1.Ask(1), 2); } //매수청산신호 발생 if (T == 1 && Signal.signalKind == 2) { T = 0; Account1.OrderSell(Main.GetOrderCode(MarketData1.code), 1, MarketData1.Bid(1), 2); XP = MarketData1.Bid(1); if (XP > EP) Entry = true; else Entry = false; } //매도진입신호 발생 if (T >= 0 && Signal.signalKind == 3 && Entry == true) { T = -1; EP = MarketData1.Bid(1); Account1.OrderSell(Main.GetOrderCode(MarketData1.code), 1, MarketData1.Bid(1), 2); } //매도청산신호 발생 if (T == -1 && Signal.signalKind == 4) { T = 0; Account1.OrderBuy(Main.GetOrderCode(MarketData1.code), 1, MarketData1.Ask(1), 2); XP = MarketData1.Bid(1); if (XP < EP) Entry = true; else Entry = false; } } 즐거운 하루되세요 > 율담 님이 쓴 글입니다. > 제목 : 수식 부탁드립니다. > function Main_OnStart() { T = 0; } function Chart1_OnRiseSignal(Signal) { //매수진입신호 발생 if (Signal.signalKind == 1) { Account1.OrderBuy(Main.GetOrderCode(MarketData1.code), 1, MarketData1.Ask(1), 2); } //매수청산신호 발생 if (Signal.signalKind == 2) { Account1.OrderSell(Main.GetOrderCode(MarketData1.code), 1, MarketData1.Bid(1), 2); } //매도진입신호 발생 if (Signal.signalKind == 3) { Account1.OrderSell(Main.GetOrderCode(MarketData1.code), 1, MarketData1.Bid(1), 2); } //매도청산신호 발생 if (Signal.signalKind == 4) { Account1.OrderBuy(Main.GetOrderCode(MarketData1.code), 1, MarketData1.Ask(1), 2); } } ------------------------------------------------------------------------------- 위식은 차트의 신호를 이용해 다른종목에 주문을 넣는 식입니다. 필터를 하나 추가하고 싶습니다. if 차트의 신호가 발생 + 청산손익이 수익일경우(1) then 다른종목에 진입 직전거래가 수익일시 진입하는 조건을 넣고 싶습니다. 그럼 새해복 많이 받으세요.