커뮤니티

질문 드립니다.

프로필 이미지
로봇짱
2015-09-02 05:48:30
126
글번호 89975
답변완료
항상 정확한 답변 감사합니다. 1. 함수 NthHighestBar는 'Length 기간 동안 value값 중 N번째 큰 값의 위치'로 알고 있는데요, 1번째로 큰 값 위치를 원하는데 기간 중 그 값이 2번 이상 존재하는 경우(최고가 같은 쌍봉 등) 어떻게 되나요? 현시점에서 제일 가까운 값이 할당되나요? 2. 예스스팟 질문입니다. 1계약 수준의 증거금만으로 운용하려 할 때입니다. 포지션이 있는 상태에서 반대 포지션의 신호가 날때 청산-신규진입을 시장가로 하면 포지션 전환이 될 수 있을 텐데요, 그러면 '청산주문-증거금확인-증거금있으면-신규주문'의 방식으로 수식을 짜면 되는 건가요? 아니면 시장가는 0.001초 내에 즉시 체결되므로 '청산주문-신규주문'으로 중간을 생략해도 가능한가요? 3. 랭귀지 시스템에서 발생한 신호를 이벤트로 받아 주문 내는 걸 가정했을때 2번 '주문 파트'에 대해서만 수식을 부탁드려도 될까요.
시스템
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2015-09-02 11:48:54

안녕하세요 예스스탁입니다. 1. 예 맞습니다. 값이 같으면 가까운 값을 기준순서로 리턴합니다. 2 증거금이 1계약분만 있을 경우 차트에서 리버스 신호가 발생하면 스팟에서 처리하기 위해서는 아래와 같이 식을 작성하셔야 합니다. 청산신호 --> 청산주문 --> 청산주문 전량체결확인 --> 진입주문 3 차트에서 신호받아 주문하는 기본구조입니다. 차트객체 Chart1 종목객체 MarketData1 계좌객체 Account1 function Chart1_OnRiseSignal(Signal) { //buy if (Signal.signalKind == 1) { //차트종목 1계약 매도3호가로 매수주문 Account1.OrderBuy(Main.GetOrderCode(Signal.code), 1, MarketData1.Ask(3), 0) } //exitlong if (Signal.signalKind == 2) { //차트종목 1계약 매수3호가로 매도주문 Account1.OrderSell(Main.GetOrderCode(Signal.code), 1, MarketData1.Bid(3), 0) } //sell if (Signal.signalKind == 3) { //차트종목 1계약 매수3호가로 매도주문 Account1.OrderSell(Main.GetOrderCode(Signal.code), 1, MarketData1.Bid(3), 0) } //exitshort if (Signal.signalKind == 4) { //차트종목 1계약 매수3호가로 매도주문 Account1.OrderBuy(Main.GetOrderCode(Signal.code), 1, MarketData1.Ask(3), 0) } } 즐거운 하루되세요 > 로봇짱 님이 쓴 글입니다. > 제목 : 질문 드립니다. > 항상 정확한 답변 감사합니다. 1. 함수 NthHighestBar는 'Length 기간 동안 value값 중 N번째 큰 값의 위치'로 알고 있는데요, 1번째로 큰 값 위치를 원하는데 기간 중 그 값이 2번 이상 존재하는 경우(최고가 같은 쌍봉 등) 어떻게 되나요? 현시점에서 제일 가까운 값이 할당되나요? 2. 예스스팟 질문입니다. 1계약 수준의 증거금만으로 운용하려 할 때입니다. 포지션이 있는 상태에서 반대 포지션의 신호가 날때 청산-신규진입을 시장가로 하면 포지션 전환이 될 수 있을 텐데요, 그러면 '청산주문-증거금확인-증거금있으면-신규주문'의 방식으로 수식을 짜면 되는 건가요? 아니면 시장가는 0.001초 내에 즉시 체결되므로 '청산주문-신규주문'으로 중간을 생략해도 가능한가요? 3. 랭귀지 시스템에서 발생한 신호를 이벤트로 받아 주문 내는 걸 가정했을때 2번 '주문 파트'에 대해서만 수식을 부탁드려도 될까요.