간단한 지정가 채널 돌파전략을 만들려 하는데요
상한선을 상향돌파하면 매수, 하한선을 하한돌파하면 매도
input : HB(채널 고가 설정), LB(채널 저가 설정) ;
if Close >= HB Then Buy() ;
if Close <= LB Then Sell() ;
이렇게 돌렸더니 기본 포지션상태가 매수 or 매도로 잡혀있고
(실제로 잔고가 있지는 않음)
매수 or 매도 조건이 되면, 취소주문과 들어가야할 주문이 동시에 들어갑니다
ex) 매도포지션이 잡혀있는 상태에서 매수조건이 되면, 매도 청산매수주문 + 매수주문 으로 총 매수 2계약이 체결됩니다
(설정은 1계약씩 체결되도록 해놓은 상황)
처음엔 아무 포지션도 없고, 돌파 조건이 되면 1계약만 체결되게 하고싶은데 뭐가 문제인지 확인 부탁드립니다
답변 1
예스스탁
예스스탁 답변
2022-01-25 10:03:47
안녕하세요
예스스탁입니다.
시스템은 지정한 조건에 따라 신호와 함께 주문만 집행합니다.
작성하신 수식은 스위칭되는 수식이고
신호발생시 청산/진입에 대한 주문이 동시에 발생하게 됩니다.
시스템은 차트에 적용하면 차트과거봉부터 현재봉으로 오면서 시뮬레이션이 되고
실시간 데이타가 들어오면 이 신호를 연결해 가게 됩니다.
그러므로 실제 잔고가 무포지션이지만 차트에서는 이미 진입중일수 있습니다.
시스템에서 잔고를 인지하지 않으므로 수식적으로는 별도로 방법이 없고
시스템을 적용시에 나타나는 시스템 트레이딩 설정창에서
주문시작신호 옵션을 통해 제어하셔야 합니다.
자동매매시 [주문시작신호]를
[진입신호]로 설정하면 적용후 진입신호가 발생한 이후부터 주문을 집행합니다.
적용후 실시간에서 첫신호가 청산이면 해당청산신호는 신호표시만 하고 주문을 집행하지 않습니다.
[모든신호]로 설정하면 적용 후 발생하는 모든신호에 대해 주문을 집행합니다.
그러므로 실잔고는 무포지션이지만 신호상으로는 포지션이 있는경우에는
적용시 주문시작신호를 진입신호로 지정하고 자동매매를 하시면 되고
실잔고와 차트의 포지션이 같으면 모든신호로 지정하시면 됩니다.
즐거운 하루되세요
> jshwang2 님이 쓴 글입니다.
> 제목 : 수식문의드립니다
> 간단한 지정가 채널 돌파전략을 만들려 하는데요
상한선을 상향돌파하면 매수, 하한선을 하한돌파하면 매도
input : HB(채널 고가 설정), LB(채널 저가 설정) ;
if Close >= HB Then Buy() ;
if Close <= LB Then Sell() ;
이렇게 돌렸더니 기본 포지션상태가 매수 or 매도로 잡혀있고
(실제로 잔고가 있지는 않음)
매수 or 매도 조건이 되면, 취소주문과 들어가야할 주문이 동시에 들어갑니다
ex) 매도포지션이 잡혀있는 상태에서 매수조건이 되면, 매도 청산매수주문 + 매수주문 으로 총 매수 2계약이 체결됩니다
(설정은 1계약씩 체결되도록 해놓은 상황)
처음엔 아무 포지션도 없고, 돌파 조건이 되면 1계약만 체결되게 하고싶은데 뭐가 문제인지 확인 부탁드립니다