커뮤니티

예스스팟 Q&A

산개대형 님에 의해서 삭제되었습니다.

프로필 이미지
산개대형
2015-09-17
0
글번호 223656
답변완료

시험적용시 체결가가 0으로 뜨며 예비신호시 주문방법

이제 갓 배운 초보로 간단한 수식을 만들어서 테스트 중입니다. 1. 예스스팟으로 간단한 전략을 작성해서 시험적용을 해봤는데. 신호를 받아서 주문이 나가긴 하는데 체결가가 0으로 뜨는 이유는 뭘까요? 원래 그런건지 제가 뭘 잘못한건지요^^ 2. 예스랭귀지로 시스템을 만들어서 매매신호가 뜨면 예스스팟으로 매매주문이 나가게 했는데 제가 알기로 예스랭귀지는 봉이 완성되야 주문이 나가지만 예스스팟은 예비 신호만 떠도 주문이 나가는 걸로 알고 있는데 테스트 해보니 똑같이 봉이 완성되니까 주문이 나가더라고요. 아래 수식으로 만들었는데 예스스팟도 봉이 완성되야 주문이 나가는 건가요? if (Signal.signalKind == 3 ) //Sell신호를 받은 경우 { Start = 1; A1.OrderSell(Code2, Vol, 0, 1); A1.OrderBuy(Code1, Vol, 0, 1); Main.MessageLog("1매수,2매도"); } 이렇게 만들었습니다~
프로필 이미지
산개대형
2015-09-17
2054
글번호 223655
답변완료

미체결정정 복수개의 차트 적용방법 문의

안녕하세요 매번도움 감사드립니다. 아래와 같은 미체결발생시 주문정정 하는 코드를 검색하였습니다 아래코드를 3개의차트에 적용하는 코드 부탁 드립니다. (각 차트에서 매수매도 신호발생시 각 차트종목의 주문 미체결에 따른 정정주문) -------------------------아래----------------------- var Onum; var OCode; var OKind; //주문응답 수신 function Main_OnOrderResponse(OrderResponse) {       //주문번호 저장     ONum = OrderResponse.orderNum;       OCode = OrderResponse.code;       OKind = OrderResponse.orderKind;       //타이머 실행       Main.SetTimer(1, 5000);//5초 타이머 } //타이머 동작 function Main_OnTimer(nEventID) {     if (nEventID == 1)       {             //타이머 중지             Main.KillTimer(1);             //Onum주문번호 미체결 셋팅             Account1.SetUnfillOrderNumber(ONum);             //미체결로 남아 있으면             if (Account1.Unfill.count > 0)             {                   //종목객체 요청                   Main.ReqMarketData(OCode,0,0);                               }       } } //종목객체 수신 function Main_OnRcvMarketData(MarketData) {       var Object = MarketData;       //수신받은 종목객체가 Onum과 같으면     if (MarketData.code == ONum)       {             Account1.SetUnfillOrderNumber(ONum);             //수량이 남아 있고 매도주문이면 매수2호가로 정정             if (Account1.Unfill.count > 0 && Account1.Unfill.position == 1)             {                   Account1.OrderReplacePrice(ONum, MarketData.Bid(2));             }             //수량이 남아 있고 매수주문이면 매도2호가로 정정             if (Account1.Unfill.count > 0 && Account1.Unfill.position == 2)             {                   Account1.OrderReplacePrice(ONum, MarketData.Ask(2));             }             //사용이 끝났으므로 수신받은 종목객체는 삭제             Main.RemoveMarketData(Object);       } }
프로필 이미지
adino30
2015-09-16
2135
글번호 223654

ujm 님에 의해서 삭제되었습니다.

프로필 이미지
ujm
2015-09-10
0
글번호 223650
답변완료

스팟으로 집입횟수 제한

안녕하세요~ 언제나 한결같은 답변 감사드립니다. 예스랭귀지가 아닌 스팟으로 진입횟수를 제한하고 싶습니다. 게시물 살펴보니 "GetUserValue"를 사용해서 제한한다고 나와있던데 아래 샘플 스팟수식은 선물신호발생시 미니선물 거래하는 예제입니다. 당일 스팟 진입청산을 3회로 제한하고 싶습니다. 부탁드립니다. ================================================================= function Main_OnStart() { Main.MessageList("시작"); T = 0; } function Chart1_OnRiseSignal(Signal) { if (Signal.signalKind == 1) { T = 1; Account1.OrderBuy(Main.GetOrderCode(MarketData1.code),1,MarketData1.Ask(5), 0); } if (T == 1 && Signal.signalKind == 2) { Account1.OrderSell(Main.GetOrderCode(MarketData1.code),1,MarketData1.Bid(5), 0); } if (Signal.signalKind == 3) { T = -1; Account1.OrderSell(Main.GetOrderCode(MarketData1.code),1,MarketData1.Bid(5), 0); } if (T == -1 && Signal.signalKind == 4) { Account1.OrderBuy(Main.GetOrderCode(MarketData1.code),1,MarketData1.Ask(5), 0); } } ======================================================================= 답변 부탁드립니다. ~
프로필 이미지
탄젠트80
2015-09-06
2079
글번호 223647
답변완료

잔고 청산

다음과 같이 선물과 옵션에 대한 잔고청산 로직에 문제점이 있는지요? if ( lUpd*teID == 20001 && SellCond == 6 && sItemCode == M1.code && M1.current >= BP ) { A1.SetBalanceItem(Putcode,0); if (A1.Balance.count > 0 && A1.Balance.position == 2 ) { SellCond = 0; Main.MessageList("SellCond:" ,SellCond); A1.OrderSell(Putcode, A1.Balance.count, 0, 1); } } if ( lUpd*teID == 20001 && SellCond == 6 && sItemCode == M1.code && M1.current >= BP ) { A1.SetBalanceItem(Main.GetOrderCode(M1.code),0); if (A1.Balance.position == 1 ) { SellCond = 0; Main.MessageList("SellCond:" ,SellCond); A1.OrderBuy(Main.GetOrderCode(M1.code), A1.Balance.count, M1.Ask(5), 0); } }
프로필 이미지
지나리
2015-09-04
2085
글번호 223646
답변완료

두종목 차트의 데이터로 만든 지표로 매매신호 발생방법

1. 두개의 차트로 지표를 만들어 지표에서 나오는 신호로 매매를 할려고 합니다. 어떻게 신호를 받을 수 있는지 매뉴얼을 읽어도 알수가 없어서 질문드립니다. 2. 10분봉 300개의 가격데이터를 예스스팟으로 불러와서 계산해서 사용할 수 있는지요 간단하게 어떤개체로 어떤식으로 하는 건지라도 알려주시면 감사드리겠습니다.
프로필 이미지
산개대형
2015-09-02
2062
글번호 223645
답변완료

추가 수식문의드립니다.

아래 당일 고가 답변 감사드립니다. 조금 추가해서 질문드리자면 "현재가가 당일고가를 돌파하면 매수하라"는 식도 아래와 같이 동일하게 사용하면 되는지요? 감사합니다. function Chart1_OnRiseSignal(Signal) { //차트에서 매수신호 발생하고 현재가가 당일최고가이면 if (Signal.signalKind == 1 && MarketData1.current == MarketData1.high ) { //매도5호가로 1계약 매수 Account1.OrderBuy(Main.GetOrderCode(Signal.Code),1,MarketData1.Ask(5),0); } //차트에서 매도신호 발생하고 현재가가 당일최저가이면 if (Signal.signalKind == 1 && MarketData1.current == MarketData1.low ) { //매수5호가로 1계약 매도 Account1.OrderSell(Main.GetOrderCode(Signal.Code),2,MarketData1.Bid(5),0); } }
프로필 이미지
지나리
2015-09-02
1982
글번호 223644
답변완료

수식문의드립니다.

안녕하세요. 다음의 정의를 수식으로 전환 부탁드립니다. 1. 선물챠트에서 매수신호가 발생하고, 당일 고가이면 선물 1개를 매수하라 2. 선물챠트에서 매도신호가 발생하고, 당일 저가이면 선물 2개를 매도하라 감사합니다.
프로필 이미지
지나리
2015-08-27
1933
글번호 223642

선물꾼 님에 의해서 삭제되었습니다.

프로필 이미지
선물꾼
2015-08-26
0
글번호 223640