PendingOrders.Delete
Посылаем запрос на удаление отложенного ордера.
int PendingOrders.Delete(id, isAsync = false)
Входные параметры
Параметр | Тип | Описание |
id | int | Идентификатор отложенного ордера |
isAsync | bool | Асинхронный режим (включен или выключен). По умолчанию выключен = false |
Возвращаемое значение
При isAsync = false (синхронный режим по умолчанию), возвращает код результата выполнения операции:
0 | Запрос на удаление отложенного ордера успешно отправлен на сервер. Не означает, что отложенный ордер успешно удален или обязательно будет удален. |
Код ошибки | В случае, если произошла ошибка возвращает код ошибки, полученный на клиенте. Коды совпадают с кодами ошибки сервера. |
Пример:
// Удаляем все отложенные SellLimit ордера
private void DelSellLimitOrders()
{
string line = "";
int err = 0;
if (PendingOrders.Count > 0) {
for (var i = PendingOrders.Count - 1; i >= 0; i--) {
PendingOrder order = PendingOrders.Find(PendingOrders[i].OrderId);
if (order != null) {
if (order.OrderType == (int)OrderType.SellLimit && order.SymbolName == Symbol.SymbolName) {
err = PendingOrders.Delete(order.OrderId);
if (err == 0) {
line = DateTime.Now.ToString("dd.MM.yyyy HH:mm:ss:fff") + " Delete Failed, ServerErrorCode = " + Environment.NewLine;
Print(mCommonLog, line);
}
}
}
}
} else {
line = DateTime.Now.ToString("dd.MM.yyyy HH:mm:ss:fff") + " Positions not found! ";
}
}