커뮤니티

예스스팟 Q&A

답변완료

정정주문 테스트 하다가 발생한 에러

var ID; var Number; function Main_OnStart() { ID = A1.OrderSell(MarketData1.code, 1, MarketData1.Ask(9),0); } function Main_OnOrderResponse(OrderResponse) { if (OrderResponse.orderID == ID ) { Number = OrderResponse.orderNum; Main.SetTimer(1, 60000); } } function Main_OnTimer(nEventID) { if ( nEventID ==1 ) { ID = A1.OrderReplacePrice(Number,MarketData1.Ask(10)); Main.KillTimer(1); } } function Main_OnNotifyFill(NotifyFill) { if (NotifyFill.orderNum == Number) Main.KillTimer(1); } 해외선물 유가로 했는데 호가유형 구분값 오류라고 하는데 이게 무엇일까요?
프로필 이미지
2024-07-26
639
글번호 226060
답변완료

Option.GetATMCallRecent(-1) 테스트중 행사가 변경 이유 문의

예스스팟 모의 테스트 하는 데 갑자기 콜옵션 행사가 다른게 잡혀서 문의드립니다. 372.5 -> 370 왜그런걸까요? function C1_OnRiseSignal(Signal) { if ( Signal.signalKind == 1) { Main.OrderBuy( A1.number,Option.GetATMCallRecent(-1),1, 0, 1); } if ( Signal.signalKind == 3 ) { Main.OrderSell(A1.number,Option.GetATMCallRecent(-1), 1, 0, 1); } Main.MessageLog(Signal.signalKind); }
프로필 이미지
2024-07-26
630
글번호 226059
답변완료

MarketData.GetPrevClose(1) 의미 확인 부탁드려요

MarketData의 prevClose와 GetPrevClose(1)은 같은게 아닌가요? 전일 종가, 전일봉 종가.. 두 값이 다르게 나와서 문의드려요. 특히나 GetPrevClose는 값이 영 이상하네요.ㅠ 각각의 의미, 차이 문의드립니다
프로필 이미지
푸른비행
2024-07-26
565
글번호 226058

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

프로필 이미지
1000djr
2024-07-25
1
글번호 226057
답변완료

예스스팟 객체 업데이트 요청(ReqDeposit, GetBalanceETCinfo)

한국투자증권 사용중입니다. 1. 계좌객체 중 ReqDeposit(currency)에 통화코드 업데이트 요청 드립니다. 예수금현황 통화코드와 currency 파라미터가 다릅니다. TOT_USD도 필요해서 스팟에 추가부탁드립니다. 수정제안 : TOT -> TOT_KRW, TOT_USD 2. 계좌객체 중 GetBalanceETCinfo(nKind)에 nKind 내용 업데이트 요청 드립니다. nKind에 적혀있는 설명과 실제로 조회되는 내용이 다릅니다. 예를들면 11번 주문가능금액 조회하면 다른 값이 출력됩니다. 수정부탁드립니다.
프로필 이미지
보글
2024-07-25
613
글번호 226056

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

프로필 이미지
1000djr
2024-07-25
24
글번호 226055
답변완료

이지랭기지코드를 예스랭기지 코드로 변환

한국인은 외국 플랫폼을 사용하면 불법이라고 해서, 실컷 트레이드스테이션에 셋팅해놓고 이지랭기지 코드전략을 예스랭기지 코드로 변환작업을 해야 하나 고민하고 있습니다. 전략 숫자가 많아서 하나하나 다 옮기자니 도저히 엄두가 나지를 않아서요. 또 다 옮긴다고 그대로 작동한다는 보장도 없고요. 혹자는 이지랭기지쪽에서 매수 매도 시그널만 받아서, 바로 증권사로 연결하라고도 하던데. 어떻게 하는 것이 좋을지 고견좀 부탁드립니다.
프로필 이미지
감마짱
2024-07-25
663
글번호 226054

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

프로필 이미지
1000djr
2024-07-26
10
글번호 226053
답변완료

도와주세요

1.예스랭귀지로 수식작성하여 검증 완료했습니다.(2가지 수식) 예스스팟으로 편집기에 코딩좀 도와 주십시요 *첫번째수식 INPUT : 기간(120); VAR : A(0),A1(0),A2(0),A3(0),선행1(0),선행2(0); A=MA(C,기간); A1=EmA(C,기간); A2=WMA(C,기간); A3=(H+L+C)/3; 선행1=(highest(high,9)+lowest(low,9)+highest(high,26)+lowest(low,26))/4; 선행2=(highest(high,52)+lowest(low,52))/2; IF A[1]>A1[1] && A[1]>A2[1] && A1[1]>A2[1] && CrossUP(A3,A2) && C>O && 선행1[25]<=C && 선행2[25]<=C TheN Find(1); *두번째수식 INPUT : 기간1(150),기간2(200),상승률(1.25); VAR : A(0),B(0),A1(0); A=EmA(C,기간1); B=EmA(C,기간2); A1=Lowest(L,260)[1]*상승률; IF((A[2]>A[1]&&A>A[1]) OR (B[2]>B[1]&&B>B[1]))&& (CrossUP(C,A) OR CrossUP(C,B))&&A1>=C TheN Find(1); 입니다. 부탁드립니다^^
프로필 이미지
흥부자
2024-07-23
629
글번호 226052
답변완료

매도수식 청산내용 추가

1. 게시판 답변글에다 시간청산내용을 추가해보았습니다. 내용이 맞는지 검토해주십시요. 2. 익절과 손절 내용 추가해주십시요. - 익절 내용 : 잔고가 +50,000원 되면 모두 청산 - 손절 내용 : 잔고가 -50,000원 되면 모두 청산 3. 한세트 진입하고 청산하면 그 다음 거래는 안한다는 내용을 추가해주십시요. 항상 고맙습니다. ***************************************************************************** function Main_OnStart() { Main.SetTimer(1, 5000); // 5초마다 타이머 이벤트 발생 Main.SetTimer(2, 60000); // 1분마다 타이머 이벤트 발생 } function Main_OnTimer(nEventID) { var d = new Date(); var HHMMSS = d.getHours() * 10000 + d.getMinutes() * 100 + d.getSeconds(); if (nEventID == 1) { if (HHMMSS >= 084600) // 오전 8시 46분 { Main.KillTimer(1); C1 = ""; CD1 = -1; C2 = ""; CD2 = -1; P1 = ""; PD1 = -1; P2 = ""; PD2 = -1; for (var i = -Option1.lowersATM; i <= Option1.uppersATM; i++) { if (Option1.GetCurrent(0, i) <= 1.0) { if (CD1 == -1 || (CD1 > 0 && 1.0 - Option1.GetCurrent(0, i) < CD1)) { CD1 = 1.0 - Option1.GetCurrent(0, i); C1 = Option1.GetATMCallRecent(i); } } if (Option1.GetCurrent(0, i) <= 0.5) { if (CD2 == -1 || (CD2 > 0 && 0.5 - Option1.GetCurrent(0, i) < CD2)) { CD2 = 0.5 - Option1.GetCurrent(0, i); C2 = Option1.GetATMCallRecent(i); } } if (Option1.GetCurrent(1, -i) <= 1.2) { if (PD1 == -1 || (PD1 > 0 && 1.2 - Option1.GetCurrent(1, -i) < PD1)) { PD1 = 1.2 - Option1.GetCurrent(1, -i); P1 = Option1.GetATMPutRecent(-i); } } if (Option1.GetCurrent(1, -i) <= 0.5) { if (PD2 == -1 || (PD2 > 0 && 0.5 - Option1.GetCurrent(1, -i) < PD2)) { PD2 = 0.5 - Option1.GetCurrent(1, -i); P2 = Option1.GetATMPutRecent(-i); } } } if (C1 != "" && C2 != "") { Account1.OrderSell(C1, 1, Option1.GetBid(C1, 5), 0); Account1.OrderSell(C2, 1, Option1.GetBid(C2, 5), 0); } if (P1 != "" && P2 != "") { Account1.OrderSell(P1, 1, Option1.GetBid(P1, 5), 0); Account1.OrderSell(P2, 1, Option1.GetBid(P2, 5), 0); } } } if (nEventID == 2) { // 15시 청산 조건 if (HHMMSS >= 150000 && HHMMSS < 150100) { // 15시 1분에 청산 closePositions(); Main.KillTimer(2); // 타이머 2 종료 } } } function closePositions() { // Call 포지션 청산 if (C1 != "" && C2 != "") { Account1.OrderBuy(C1, 1, Option1.GetAsk(C1, 5), 0); Account1.OrderBuy(C2, 1, Option1.GetAsk(C2, 5), 0); } // Put 포지션 청산 if (P1 != "" && P2 != "") { Account1.OrderBuy(P1, 1, Option1.GetAsk(P1, 5), 0); Account1.OrderBuy(P2, 1, Option1.GetAsk(P2, 5), 0); } }
프로필 이미지
좌오비우오비
2024-08-03
609
글번호 226050