커뮤니티

예스스팟 Q&A

답변완료

사용자정의 모듈과 전역변수 사용법 문의 드립니다

스팟 프로그램이 길어져 관리상 가독성 좋게 사용자함수를 사용해서 정리하려 합니다. 예를 들어 var 전역변수1,전역변수2,전역변수3; function Main_OnStart() 전역변수1=0; 전역변수2=0; 전역변수3=0; function Main_On*pdateMarket(sItemCode, l*pdateID) if condition1 then 사용자함수1(); else if condition2 then 사용자함수2(); else if condition3 then 사용자함수3(); function 사용자함수1() if 전역변수1 == condition4 then . . . 이런식으로 코딩이 가능할까요?
프로필 이미지
고가행진
2016-01-12
1763
글번호 223772
답변완료

무슨 문제인가요?

아래수식을 모의거래에 적용을 해보았는데, "시작" 메세지 이후 아무런 시스템 작동이 안되네요!! 어디에 문제점이 있나요? 참조 1. 차트객체명 : C1 2. 종목객체명 : SP -------> E-mini S&P 500 ( 2016.3) 3. 계좌객체명 : A1 /* 스크립트시작------------------------------ */ var Position; var OrderCode; var BID; var SID; var SNum; var BNum; var BuyFill; var SellFill; function Main_OnStart() { Main.MessageLog("시작"); Position = 0; OrderCode = Main.GetOrderCode(SP.Code); } function C1_OnRiseSingal(Singal) { Main.MessageLog("신호완성/"+Singal.SinalKind); if (Sinal.SinalKind == 1) { Position = 1; BID = A1.OrderBuy(SP.Code, 1, SP.Ask(2),0); Main.MessageLog("매수진입"); BuyFill = 0; } if (Position == 1 && Sinal.SingKind == 2) { if (BuyFill == 1) { A1.OrderSell(SP.Code, 1, SP.Bid(2),0); Main.MessageLog("매수청산실행"); } if (BuyFill == 0) { A1.OrderCancel(Bnum); Main.MessageLog("매수청산취소"); } } if (Sinal.sinalKind == 3) { Position = -1; SellFill = 0; SID = A1.OrderSell(SP.Code, 1, SP.Bid(2), 0); Main.MessageLog("매도진입"); } if (Position == -1 && Singal.singalKind == 4) { if (SellFill == 1) { A1.OrderBuy(SP.Code, 1, Ask(2), 0); Main.MessageLog("매도청산"); } if (SellFill == 0) { A1.OrderCancel(SNum); Main.MessageLog("매도청산취소"); } } } function Main_OnOrderResponse(OrderResponse) { if (Position == 1 && OrderResponse.orderID == BID) { BNum = OrderResponse.orderNum; } if (Position == -1 && OrderResponse.orderID == SID) { SNum = OrderResponse.ordNum; } } function Main_OnNotifyFill(NotifyFill) { if (Position == 1 && NotifyFill.orderNum == BNum) { BuyFill = 1; } if (Position == -1 && NotifyFill.orderNum == SNum) { SellFill = 1; } } /* 스크립트 끝-----------------------------*/
프로필 이미지
너무조아
2016-01-12
1781
글번호 223771
답변완료

수식 문의합니다.

당일 아침 9:05분에, 1.0에 가장 가까운 행사가의 콜옵션을 10 계약, 아침 9:05분에 자동매수 하는 수식 부탁합니다. 반대 수식도 부탁드립니다. (풋옵션 9:05분 1.0 근접, 9:05분 10계약 매수) (또한, 상기 콜/풋 식들을 시초가 1.0 근접, 시초가 매수도 함께 부탁합니다.) 그리고, 위와 같이 매수한 옵션을 그 다음날 아침 9:05분에 절반 매도, 또 그 다음날 아침 9:05분에 나머지 절반 매도하고 싶은데, 청산수식도 같이 부탁합니다. (혹시, 위 매수/청산 수식을 한가지로 묶을수 있나요? 가령 수 아침에 매수하고, 목아침 절반매도, 금아침 나머지 절반매도 하는 식으로 말입니다) 한가지만 더 부탁합니다. 위 수식에서 본인이 직접 옵션 행사가를 지정해서 할수는 없읍니까? 가령, 수식에 행사가를 직접 입력하게 하거나, 다른 방법이 가능한지 부탁합니다. 수고하십시요.
프로필 이미지
초록이
2016-01-12
1762
글번호 223770
답변완료

시초에 거래이 없을경우 1초간 강제로 쉬려면

선물신호를 받아 옵션으로 주문내는데 선물이 동시호가 직후 신호가 나오는 경우 옵션종목들이 아직 동시호가 형성이 안되어서 전날 매매가격을 기준으로 종목조회가 종종 발생하던데... 이 때문에 갭발생시 원하는 가격대와 차이가 큰 종목이 선택되어 매매되고 있습니다. 이와같이 아직 거래가 형성되지 않았을때, 당이 가격이 형성된 이후 주문이 나가게 할 방법이 있는지요 ? 만약 방법이 없다면 09시 01초 이전에 선물신호를 수신하는 경우는 1초간 쉬었다가 스팟로직이 계속 진행되도록 하고 싶은데, 어떤 방법으로 하면 되는지요 ? [추가문의] 선물신호를 받아 옵션매매를 하고 있는데 미니옵션으로 주문을 내려면 옵션객체를 미니옵션으로만 선택해주면 되는건가요 ?
프로필 이미지
anyhelp
2016-01-18
1743
글번호 223769

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

프로필 이미지
오토
2016-01-08
2
글번호 223768

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

프로필 이미지
오토
2016-01-06
0
글번호 223764
답변완료

수식 문의드립니다

2016년 丙申년 뜻하시는 모든일이 부족함없이 견실하게 이뤄지길 바라며, 모쪼록 건강하시고 늘 즐거움이 함께 하시길 바랍니다. 혼자 해결할수가 없어서 문의를 드립니다 (근1달동안 기존수식을 공부하고있는데 명확하게 정리가 안되고 있네요 수식을한번 만들어주시면 스팟을 사용하는데 많은 도움이 될거같아요 꼭이요 ^^;) 사용자 검색조건에 의한 검색식은 현재 작성된상태임 1. 10분단위로 검색시 (1차 9:10분) 검색종목 상위 2종목 매수 2. 검색종목중 당일시가보다 하락종목 제외(차순위매수) 3. 매수는 총3회, 매수비중은 1차 50%, 2차 30%, 3차 20% 총예탁금 차등매수 2차, 3차 검색시 동일종목이 최초 매수가보다 하락인경우 동종목 추가매수 금지 (2차검색 제외종목이 3차검색에서 최초매수가 이상이면 매수가능) 4. 매수후 1) 2% 이상 상승후 하락시 매수가에 본절 2) 5% 이상 상승후 하락시 1% 에 익절 매도: 10 분봉챠트 20 이평선 이탈시 매도 손절: -2% 손절 상한가 안착후 최대상한가잔량의 1/20 이하 잔량일경우 매도 다시한번 부탁드립니다. 꾸벅
프로필 이미지
황금보트
2016-01-11
1744
글번호 223762
답변완료

코딩문의입니다

진입과 청산은 손으로 직접하고 손절만 시스템 항상 자동으로 되도록 설정하고 싶습니다. ====================================================================== 계좌잔고를 실시간으로 체크하여 어떠한 종목을 매매를 하든 총 평가잔액이 포지션 진입전 잔액에서 -1% 가 되면 전체청산 손절주문을 항싱 가동하도록 하는 코드를 만들고 싶습니다.
프로필 이미지
리나이
2016-01-05
1663
글번호 223761
답변완료

사용자함수를 읽어 올수 있는지요?

YesLanguage 편집기에서 만든 만기일 사용자 함수를 불러 와서 만기일의 청산시간을 따로 설정할 수 있는지요? 예스랭귀지에서는 간단하게 if MANGI Then setstopendofday(143000); Else setstopendofday(150000); 이라고 쉽게 사용자함수를 읽어서 처리했는데 스팟에서는 어떻게 응용해야 할지 모르겠네요. 아래는 만기일 사용자함수 입니다. If Date == 20151210 || Date == 20150910 || Date == 20150611 || Date == 20150312 Then MANGI = TRUE;Else MANGI = FALSE;
프로필 이미지
풍경
2016-01-04
1550
글번호 223760
답변완료

타이머

디음의 조건에 부합하는 예스스팟 수식을 작성해 주시면 감사 하겠습니다. 연결 된 차트(예스랭귀지)에서 완성신호 발생 1.매도포지션 또는 무포지션 일때 완성신호가 매수신호 이고 1) 매수신호 발생 후 10분동안 반대신호(매도신호)가 발생 하지아니하면 매도 2호가에 "매수진입" 2) 매수신호 발생 후 10분 이내에 반대신호(매도신호)가 발생하면 "매수신호무시" 2. 매수포지션 또는 무포지션 일때 완성신호가 매도신호 이고 1) 매도신호 발생 후 10분동안 반대신호(매수신호)가 발생 하지 아니하면 매수 2호가에 "매도진입" 2) 매도신호 발생 후 10분 이내에 반대신호(매수신호)가 발생하면 "매도신호무시" **** 참고사항 : YesGlobalPro 에서 S&P 500 선물지수를 거래 합니다.******
프로필 이미지
너무조아
2016-01-01
1569
글번호 223759