예스스탁
예스스탁 답변
2009-03-11 14:36:55
안녕하세요? 예스스탁입니다.
올려주신 두개의 식은 여러가지 차이가 있습니다.
첫번째로 주문이 발생하는 시점, 두번째는 매매신호 위치와 시스템리포트상의 매매가격, 세번째는 현실적인 슬리피지의 차이가 발생합니다.
onclose주문은 if 조건이 만족한 봉이 완성되었을때(다음봉 시가 데이타가 들어올때) 주문이 발생되며, 매매신호는 조건이 만족된 봉에서 발생되며, 시스템리포트상의 매매가격은 조건만족봉의 종가에 매매한 것으로 나옵니다. 또 슬리피지의 경우 매거래당 평균 0.03포인트 정도의 슬리피지가 발생합니다.(설정창에서 주문 가격을 +-2호가 정도로 설정할 경우)
atlimi주문은 if조건이 만족한 다음봉에서 지정한 가격에 도달할 경우 주문이 발생되며, 매매신호는 if문의 조건만족 다음봉에서 발생되며, 시스템리포트상의 매매가격은 지정가격(지정가격을 초과하여 시가가 형성되었을 경우에는 시가)에 매매한 것으로 나옵니다. 슬리피지는 매거래량 평균 0.04포인트 이상의 슬리피지가 발생합니다.
슬리피지에 관해서 매수의 경우를 가정해 보겠습니다. onclose주문이라면 현재가가 매수우선호가일 확률과 매도우선호가일 확률이 반반 정도 됩니다. 따라서 신호가격과 실제체결가격의 슬리피지는 평균 반틱 정도 발생한다고 보는 것이 합리적입니다. 다만, 매수신호가 발생되는 경우는 가격이 튀어 올라갈 경우가 많아서 경우에 따라서는 1틱 이상의 체결슬리피지가 발생되는 경우도 있기 때문에 반틱보다는 조금 높은 슬리피지가 발생하게 되는것으로 보입니다.
atlimit의 경우는 매수일때 주문함수 내의 지정가격 이하로 가격이 떨어지면 즉시 주문이 나가게 되는 주문유형인데, 가격이 지정가격에 도달할 때, 대부분의 경우는 그 가격이 매수우선호가가 될 것입니다. 즉, 리포트 상에서는 매수우선호가(지정가격이므로)에 주문이 나가지만, 현재가+-2호가로 설정해 놓았을 경우 매수우선호가로 체결될 가능성은 거의 없고 대부분 매도우선호가로 체결되기 때문에 거의 모든 거래에서 1틱의 체결슬리피지가 발생하게 됩니다.
즉, 주문이 나가는 시점은 onclose보다 통상 늦게 낮은 가격에 도달했을때 주문이 나가지만 체결슬리피지에서는 onclose보다 atlimit이 많이 발생되게 되는 것입니다. 이와 관련하여 atstop 유형에서는 주문 나가는 시점이 onclose보다 통상 늦고 가격도 높지만, 슬리피지는 onclose보다 낮게 발생합니다.
감사합니다.
> FXKim 님이 쓴 글입니다.
> 제목 : 슬리피지 관련하여..
> 글을읽다 아래글에 궁금한 점이 있어 질문을드리고자 합니다.
if CrossUp(ma(C,5), ma(C,20)) Then
buy("B", atlimit, C-PriceScale*1);
와
if CrossUp(ma(C,5), ma(C,20)) Then
buy("B", onclose);
의 차이점이 있는지요?
백테스팅을 해 보면.. 분명.. 아래식보다는 위 식이 더 큰 수익이
발생하더군요..
실거래시 설정창에 시장가로 하였을 시.. 차이점이 있는지요?
제가 그냥 생각해 보니.. 종가보다 0.05 낮을 경우 매수 가능 할 듯 생각되기에,
슬리피지 발생되는 0.05틱정도의 거래비용을 차감 할 수 있을듯 해 보이는데..
이에 대해 상세한 설명 부탁드립니다.
물론 1틱 때문에 거래가 성립 되지 않는 단점도 있을꺼라 생각됩니다.
--- 아래글은 이전에 앙두님이 쓰신글에 대한 답변글입니다. ---
안녕하세요? 예스스탁입니다.
atlimit 유형의 주문으로 가능합니다.
말씀하신 식은 아래와 같이 작성할 수 있습니다.
if CrossUp(ma(C,5), ma(C,20)) Then
buy("B", atlimit, C-PriceScale*2);
주의하실 점은 5, 20 골든크로스 발생 다음봉에서 골든크로스 시점의 종가에서 두틱 하락하면 매수주문을 내보내는 '주문시점'의 문제입니다. 즉, 가격이 골드시점의 종가에서 두틱 하락했을때 주문을 전송시키지만, 어떤 가격으로 주문을 낼지에 관한 설정은 아니고 단지 그 시점에 주문을 낸다는 것을 의미합니다.
주문 가격은 시스템트레이딩 설정창에서 지정해 놓은 가격으로 주문이 나가게 됩니다.
감사합니다.
> 앙두 님이 쓴 글입니다.
> 제목 : 문의드립니다.
> 혹시 아래와 같은 기능이 지원되거나 코딩이 가능할까요?
예를들어 5일선이 20일선을 돌파할 경우 다음봉 시가에 매수진입한다(atmarket)는
매수 진입식에서 "돌파할 경우의 다음봉 시가"를 진입시점이 아닌 하나의 변수로
인식하여 매수는 이보다 1이나 2틱 낮은 가격에 매수진입이 나간다.
즉, 역슬리피지 주문이 가능할까요?