If bBuy == true Then
{
Buy("매수", OnClose, DEF, nContracts);
Exitshort();
}
If bSell == true Then
{
Sell("매도", OnClose, DEF, nContracts);
Exitlong();
}
제가 위와같은방식으로 시스템 트레이딩을 하고 잇습니다.
nContracts는 거래수입니다.
그런데 오늘 부산방직에 시스템 신호가 걸려 8520원에 매수주문이 들어갔습니다.
주문이 조금 늦었는지 매수체결은 되지 않았습니다.
즉 미체결인채로 매도신호에 걸려 청산으로 매수주문이 취소되었다고 생각했습니다.
이때 시간이 12:11분이었구요
그런데 12:58분에 매수가 이루어졌습니다.
8520원에 말이죠
그리고 지금현재 부산방직은 매수포지션이 아닙니다.
즉 오늘안에 전부 팔아야하는데 신호가 걸리지 않으므로 팔수가 없군요.
우연히 제가 확인하지 않았다면 이대로 넘겨버릴뻔했습니다.
청산이 현재걸려잇는 미체결주문을 전부 없애는거 아님니까?
제가 잘못이해하고 있는겁니까?
제가 이해하고 있는게 틀리다면 매도시 미체결을 전부 없앨수 있는 방법을 알려주십시오
아니라면 프로그램에 문제가 잇는건가요?
답변주시기 바랍니다
답변 3
예스스탁
예스스탁 답변
2004-09-07 16:48:30
안녕하십니까? 예스스탁입니다.
시스템 식 내부에서는 계좌 잔고에 대한 정보를 전혀 알 수 없습니다.
따라서 시스템 식 조건에 만족되면 무조건 주문이 나가게 됩니다.
시장 상황에 따라 늦게 체결될 수 있으므로 매매가격을 조절하시어 자동매매를 설정하시기 바라며 주문 발생후 가능하면 체결여부를 확인하시는 것이 좋습니다.
주문시 미체결 상태의 주문을 취소하는 기능은 제공하고 있지 않습니다.
이용에 참고하시기 바랍니다.
감사합니다.
> CJ_sdleejh 님이 쓴 글입니다.
> 제목 : 청산? 주문취소?
> If bBuy == true Then
{
Buy("매수", OnClose, DEF, nContracts);
Exitshort();
}
If bSell == true Then
{
Sell("매도", OnClose, DEF, nContracts);
Exitlong();
}
제가 위와같은방식으로 시스템 트레이딩을 하고 잇습니다.
nContracts는 거래수입니다.
그런데 오늘 부산방직에 시스템 신호가 걸려 8520원에 매수주문이 들어갔습니다.
주문이 조금 늦었는지 매수체결은 되지 않았습니다.
즉 미체결인채로 매도신호에 걸려 청산으로 매수주문이 취소되었다고 생각했습니다.
이때 시간이 12:11분이었구요
그런데 12:58분에 매수가 이루어졌습니다.
8520원에 말이죠
그리고 지금현재 부산방직은 매수포지션이 아닙니다.
즉 오늘안에 전부 팔아야하는데 신호가 걸리지 않으므로 팔수가 없군요.
우연히 제가 확인하지 않았다면 이대로 넘겨버릴뻔했습니다.
청산이 현재걸려잇는 미체결주문을 전부 없애는거 아님니까?
제가 잘못이해하고 있는겁니까?
제가 이해하고 있는게 틀리다면 매도시 미체결을 전부 없앨수 있는 방법을 알려주십시오
아니라면 프로그램에 문제가 잇는건가요?
답변주시기 바랍니다
********
2004-09-07 17:35:26
그럼 대체...
자동매매를 걸어놓고도 하루종일 체결되는지 확인하고 있어야 되는군요...
그나마 매수포지션 안쪽에서 거래가 된다면 강제청산등에 걸리더라도 다행이지만
이미 매도포지션도 끝난상태에서 체결이 되는거라면...
그냥 눈감고 아무주식이나 사서 오르길 기다리고 잇는것과
별반 다를바 없다고 생각합니다
저런 기능이 없다는 것은 상당히 치명적이라고 생각합니다.
전 지금까지 당연히 되는줄 알았습니다.
만약 100주매수주문을 냇는데 50주만 주문이 체결됐다면 매도시에는 50주밖에 없으므로 매도가능수량부족메세지 뜨고 그나마 잇는것도 체결안되겠군요.
필요한시점에서 제대로 팔수도 없고 그나마 급락해버린다면 끔찍합니다. 강제청산도 안걸리고
위 상황은 앞으로 얼마든지 걸릴수 있는 상황이군요.
최소한 어떤방법으로라도 조치가 필요한 사항이라고 생각합니다.
보시고 답변부탁드립니다.
---------------------------------------
생각나서 건의드립니다.
Sell()주문이 나오면 그 거래수중 먼저 미체결에서 없애고 나머지만큼 매도주문이 떨어질수 있도록하면 좋겟군요. 어차피 식에서 현재 미체결이 얼마인지 보유량이 얼만지 알수 없지만 Sell()주문을 처리하는 프로그램은 알수 있지 않습니까?(계좌평가/체결내역보면 알수 있듯이...)
여튼 굉장히 중요한내용입니다. 답변주세요
예스스탁
예스스탁 답변
2004-09-08 16:42:11
안녕하십니까? 예스스탁입니다.
시스템 트레이딩에서 이전 주문의 체결여부에 따라 주문 여부를 결정하게 하면 발생된 신호와 실제 주문내역과의 괴리가 발생되어 오히려 혼란을 일으킬 수 있습니다.
따라서 자동으로 체결여부를 확인하는 기능은 제공하기 어려울 듯합니다.
사용자님의 경우 체결확률을 높히는 것으로 문제를 해결하시는 것이 좋을 듯 합니다.
매매가격을 [현재가]로 설정한 경우 가격 변화가 많은 종목의 경우 바로 체결되지 않을 있으므로 현재가 +-2호가이상으로 또는 시장가로 주문을 내시면 좀더 체결확률을 높힐 수 있습니다. 또한 상하한가로도 설정가능합니다.
참고로 체결을 좀더 편리하게 확인하는 방법은 다음 버전에서 제공할 예정입니다.
이용에 참고하시기 바라며 잘 이해가 되지 않는 부분이 있으시면 저희 회사로
전화(02-3453-1060) 문의해 주시기 바랍니다.
감사합니다.
> CJ_sdleejh 님이 쓴 글입니다.
> 제목 : Re : Re : 청산? 주문취소?
> 그럼 대체...
자동매매를 걸어놓고도 하루종일 체결되는지 확인하고 있어야 되는군요...
그나마 매수포지션 안쪽에서 거래가 된다면 강제청산등에 걸리더라도 다행이지만
이미 매도포지션도 끝난상태에서 체결이 되는거라면...
그냥 눈감고 아무주식이나 사서 오르길 기다리고 잇는것과
별반 다를바 없다고 생각합니다
저런 기능이 없다는 것은 상당히 치명적이라고 생각합니다.
전 지금까지 당연히 되는줄 알았습니다.
만약 100주매수주문을 냇는데 50주만 주문이 체결됐다면 매도시에는 50주밖에 없으므로 매도가능수량부족메세지 뜨고 그나마 잇는것도 체결안되겠군요.
필요한시점에서 제대로 팔수도 없고 그나마 급락해버린다면 끔찍합니다. 강제청산도 안걸리고
위 상황은 앞으로 얼마든지 걸릴수 있는 상황이군요.
최소한 어떤방법으로라도 조치가 필요한 사항이라고 생각합니다.
보시고 답변부탁드립니다.
---------------------------------------
생각나서 건의드립니다.
Sell()주문이 나오면 그 거래수중 먼저 미체결에서 없애고 나머지만큼 매도주문이 떨어질수 있도록하면 좋겟군요. 어차피 식에서 현재 미체결이 얼마인지 보유량이 얼만지 알수 없지만 Sell()주문을 처리하는 프로그램은 알수 있지 않습니까?(계좌평가/체결내역보면 알수 있듯이...)
여튼 굉장히 중요한내용입니다. 답변주세요