커뮤니티

미체결 정정수량

프로필 이미지
새로운세상
2013-03-21 09:44:54
2113
글번호 222272
답변완료
안녕하세요~ 예스스팟에서 정정주문 함수를 사용할 때 1) 최초 진입주문 수량 5계약, 이중 2계약 체결 (Vol = 최초 진입수량) 2) 미체결분에 대한 주문정정, 이중 1계약 체결 3) 정정후 미체결 수량에 대하여 취소, 즉 2계약 취소 아래 수식(1)과 같이 작성하면 최초 진입후 미체결수량인 3계약이 정정되는 것이 아니고, 수량 5계약으로 정정되는 것이 맞는지요? 만약 그렇다면 BuyID = Account1.OrderReplace(BuyOrderNum, Vol, MarketData1.Ask(1)); // 수식(1) 위의 수식을 BuyID = Account1.OrderReplacePrice(BuyOrderNum, MarketData1.Ask(1)); 와 같이 수정하면, 기존 체결된 수량을 제외한 나머지 미체결 수량에 대하여 정정되는 것이 맞는지 궁금합니다. 그리고 정정후 미체결 수량에 대하여 취소주문을 하려면 Account1.OrderCancel(BuyOrderNum); 와 같이 작성하면 되는지요? (최초진입과 정정에서 모두 3계약이 체결되었을 경우 2계약 취소주문시) * 수식의 다른 부분은 이상 없슴을 확인한 상태입니다. 이상입니다. 감사합니다 !!!
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2013-03-25 17:56:10

안녕하세요 예스스탁입니다. 전체 미체결수량을 가격만 정정하시는 경우에는 OrderReplacePrice함수를 이용하시면 됩니다. OrderReplace는 일부를 정정하실 때 사용하시면 편한 함수입니다. 잘못된 수량을 넣으시면 주문에러 발생합니다. 식상에서 BuyOrderNum에 주문번호가 정확히 저장이 되어 있다면 Account1.OrderCancel(BuyOrderNum); 와 같이 작성해 사용하시면 됩니다. 좀더 명확하게는 특정 이벤트가 발생할때 아래와 같이 주문번호로 미체결객체를 셋팅한 다음 해당 미체결객체의 수량이 0이상인것을 확인하고 (해당 주문번호의 미체결이 없으면 셋팅안되므로 미체결수량도 0이상이 아님) 주문 내시면 됩니다. function 이벤트()//특정이밴트 발생 { if (특정조건) { Account1.SetUnfillOrderNumber(BuyOrderNum);//지정한 주문번호의 미체결내역을 셋팅 if (Account1.Unfill.count > 0) //셋팅이 되면 미체결수량은 0이상 { Account1.OrderCancel(Account1.Unfill.orderNum);//해당 주문 취소 } } } 즐거운 하루되세요 > 새로운세상 님이 쓴 글입니다. > 제목 : 미체결 정정수량 > 안녕하세요~ 예스스팟에서 정정주문 함수를 사용할 때 1) 최초 진입주문 수량 5계약, 이중 2계약 체결 (Vol = 최초 진입수량) 2) 미체결분에 대한 주문정정, 이중 1계약 체결 3) 정정후 미체결 수량에 대하여 취소, 즉 2계약 취소 아래 수식(1)과 같이 작성하면 최초 진입후 미체결수량인 3계약이 정정되는 것이 아니고, 수량 5계약으로 정정되는 것이 맞는지요? 만약 그렇다면 BuyID = Account1.OrderReplace(BuyOrderNum, Vol, MarketData1.Ask(1)); // 수식(1) 위의 수식을 BuyID = Account1.OrderReplacePrice(BuyOrderNum, MarketData1.Ask(1)); 와 같이 수정하면, 기존 체결된 수량을 제외한 나머지 미체결 수량에 대하여 정정되는 것이 맞는지 궁금합니다. 그리고 정정후 미체결 수량에 대하여 취소주문을 하려면 Account1.OrderCancel(BuyOrderNum); 와 같이 작성하면 되는지요? (최초진입과 정정에서 모두 3계약이 체결되었을 경우 2계약 취소주문시) * 수식의 다른 부분은 이상 없슴을 확인한 상태입니다. 이상입니다. 감사합니다 !!!