Order cancel error

Greetings to all I am a new member in this forum. I need help from you all on this forum.

Greetings to all
I am a new member in this forum.
I need help from you all on this forum.

My name is Livia, Im from Indonesia
I’m sorry if my english looks bad.

I have a problem with my trading account instaforex,
my trading account: 2200826
I see balance in my trading account was reduced by $162.27,
with comment «CANCEL ERROR ORDERS».

I have confirm to claim
I get reply like this:
Dear Client,
Please be informed that Short orders were cancelled by the Anti-fraud Department according to the paragraph 3.14.6. of the Public Offer Agreement.
If you have any questions please do not hesitate to contact us in future. Thank you for your letter
.

When I asked for an explanation, they do not respond me again.

Then I confirm again, to dealer@instaforex.com
I get reply like this:
Please be informed that Short orders were cancelled by the Anti-fraud Department according to the paragraph 3.14.6. of the Public Offer Agreement.
The cancelled orders were, Ticket number- 1185013709, 1185095144, 1185095104, 1185094984, 1185095011, 1185014407, 1184906676, 1184906671, 1184756055, 1184733031, 1184742277, 1184613699, 1184613222, 1184612957, 1184612988, 1184427439, 1184426972, 1184282791, 1184284363, 1184340241, 1184340272, 1184282921, 1183969918, 1183942260, 1183969897, 1183969921, 1183578304, 1183640794, 1183568372, 1183667318, 1183713669, 1183713672, 1183713784, 1183713898,
You can also check it from your Client Cabinet > Trading account > History of Trades.

then I have check my history about order number that considered to break the rules.
And I see he just mention the order number, which canceled by me.
and it is a pending order, such as SELL LIMIT, BUY LIMIT, SELL STOP, and BUY STOP.
it is the number of orders canceled by me, and the order was not yet executed by the market.

I think it was a mistake,
not possible, I’m cancelling My pending orders (not yet touched by the market price) is considered violating.
I have explained it, but dealer not reply again..

Then I confirm again, to antifraud@mail.instaforex.com.
But, He just asked my trading account number, then nothing respond again until now I’m post here.
This is day 5 since the first time I sent a report to antifraud@mail.instaforex.com.

I am confused to confirm where else?
I hope someone can help me..

Код ошибки Тип ошибки Текст ошибки Причины возникновения и
рекомендации по устранению
12001 UNIMPLEMENTED Method is unimplemented Метод не реализован.
30001 INVALID_ARGUMENT missing parameter: ‘from’ Входной параметр from является обязательным.
Укажите корректный параметр from.
30002 INVALID_ARGUMENT the required period should not exceed 7 days Запрошенный период не может превышать 7 дней.
Укажите корректный период.
30003 INVALID_ARGUMENT ‘from’ can’t be less than the current date Входной параметр from не может быть меньше текущей даты.
Укажите корректный параметр from.
30004 INVALID_ARGUMENT missing parameter: ‘to’ Входной параметр to является обязательным.
Укажите корректный параметр to.
30005 INVALID_ARGUMENT ‘id_type’ is invalid Входной параметр id_type имеет некорректное значение.
Список доступных значений: id_type.
30006 INVALID_ARGUMENT missing parameter: ‘id_type’ Входной параметр id_type является обязательным.
Укажите корректный параметр id_type.
30007 INVALID_ARGUMENT missing parameter: ‘id’ Входной параметр id является обязательным.
Укажите корректный параметр id.
30008 INVALID_ARGUMENT missing parameter: ‘figi’ Входной параметр figi является обязательным.
Укажите корректный параметр figi.
30009 INVALID_ARGUMENT ‘from’ is invalid Входной параметр from имеет некорректное значение.
Укажите корректный параметр from.
30010 INVALID_ARGUMENT ‘to’ is invalid Входной параметр to имеет некорректное значение.
Укажите корректный параметр to.
30011 INVALID_ARGUMENT interval is invalid Входной параметр interval имеет некорректное значение.
Список доступных значений: interval.
30012 INVALID_ARGUMENT ‘to’ can’t be less than ‘from’ Входной параметр to не может быть меньше параметра from.
Укажите корректные параметры from и to.
30013 INVALID_ARGUMENT ‘class_code’ require for ‘id_type’ = ‘ticker’ Входной параметр class_code не может быть пустым при поиске по тикеру.
Укажите корректный параметр class_code.
Подробнее: Идентификация инструментов.
30014 INVALID_ARGUMENT the maximum request period for the given candle interval has been exceeded Превышен максимальный период запроса для данного интервала свечи.
Укажите корректный интервал.
30015 INVALID_ARGUMENT parameter ‘quantity’ is missing or equal to 0 Входной параметр quantity является обязательным.
Укажите корректный параметр quantity.
30016 INVALID_ARGUMENT ‘quantity’ is invalid Входной параметр quantity имеет некорректное значение.
Укажите корректный параметр quantity.
30017 INVALID_ARGUMENT missing parameter: ‘price’ Входной параметр price является обязательным.
Укажите корректный параметр price.
30018 INVALID_ARGUMENT price is invalid Входной параметр price имеет некорректное значение.
Укажите корректный параметр price.
30019 INVALID_ARGUMENT missing parameter: ‘direction’ Входной параметр direction является обязательным.
Укажите корректный параметр direction.
30020 INVALID_ARGUMENT ‘direction’ is invalid Входной параметр direction имеет некорректное значение.
30021 INVALID_ARGUMENT missing parameter: ‘account_id’ Входной параметр account_id является обязательным.
Укажите корректный параметр account_id.
30022 INVALID_ARGUMENT missing parameter: ‘state’ Входной параметр state является обязательным.
Укажите корректный параметр state.
Список доступных значений: direction.
30023 INVALID_ARGUMENT invalid parameter: ‘state’ Входной параметр state имеет некорректное значение.
Укажите корректный параметр state.
Список доступных значений: direction.
30025 INVALID_ARGUMENT missing parameter: ‘order_type’ Входной параметр order_type является обязательным.
Укажите корректный параметр order_type.
30026 INVALID_ARGUMENT invalid parameter: ‘order_type’ Входной параметр order_type имеет некорректное значение.
Укажите корректный параметр order_type.
30027 INVALID_ARGUMENT missing parameter: ‘order_id’ Входной параметр order_id является обязательным.
Укажите корректный параметр order_id.
30028 INVALID_ARGUMENT ‘order id’ is invalid Входной параметр order_id имеет некорректное значение.
Укажите корректный параметр order_id.
30029 INVALID_ARGUMENT missing parameter: ‘idempotency_key’ Входной параметр idempotency_key является обязательным.
Укажите корректный параметр idempotency_key.
30030 INVALID_ARGUMENT ‘idempotency_key’ is invalid Входной параметр idempotency_key имеет некорректное значение.
Укажите корректный параметр idempotency_key.
30031 INVALID_ARGUMENT missing parameter: ‘depth’ Входной параметр depth является обязательным.
Укажите корректный параметр depth.
30032 INVALID_ARGUMENT depth is invalid Входной параметр depth имеет некорректное значение.
Укажите корректный параметр depth.
30033 INVALID_ARGUMENT missing parameter: ‘trade_clearing_account’ or ‘class_code’ Параметр trade_clearing_account или class_code не может быть пустым.
30034 INVALID_ARGUMENT not enough balance Недостаточно средств для совершения сделки (ошибка песочницы).
Пополните баланс нужной валюты.
30036 INVALID_ARGUMENT missing parameter: ‘stop_price’ Входной параметр stop_price является обязательным.
Укажите корректный параметр stop_price.
30037 INVALID_ARGUMENT missing parameter: ‘stop_order_type’ Входной параметр stop_order_type является обязательным.
Укажите корректный параметр stop_order_type.
30038 INVALID_ARGUMENT ‘stop_order_type’ is invalid Входной параметр stop_order_type имеет некорректное значение.
Список доступных значений: stop_order_type.
30040 INVALID_ARGUMENT ‘expire_date’ is invalid Входной параметр expire_date имеет некорректное значение.
Укажите корректный параметр expire_date.
30041 INVALID_ARGUMENT the method is available only for futures Метод предназначен только для работы с фьючерсами.
Передайте во входные параметры метода идентификатор фьючерса.
30042 INVALID_ARGUMENT not enough assets for a margin trade Недостаточно активов для маржинальной сделки.
Проверьте маржинальные показатели счёта.
30043 INVALID_ARGUMENT missing parameter: ‘expiration_type’ Входной параметр expiration_type является обязательным.
Укажите корректный параметр expiration_type.
30044 INVALID_ARGUMENT ‘expiration_type’ is invalid Входной параметр expiration_type имеет некорректное значение.
Список доступных значений: expiration_type.
30045 INVALID_ARGUMENT missing parameter: ‘ticker’ Входной параметр ticker является обязательным.
Укажите корректный параметр ticker.
30047 INVALID_ARGUMENT price currency does not match the settlement currency Валюта цены не совпадает с валютой расчётов по инструменту.
Укажите корректную валюту цены.
30048 INVALID_ARGUMENT instrument type is not bond Метод предназначен только для запроса информации по облигации.
Передайте во входные параметры метода идентификатор облигации.
30049 INVALID_ARGUMENT post order error: %s Ошибка метода выставления торгового поручения.
Подробнее в тексте ошибки.
30050 INVALID_ARGUMENT ‘instrument_status’ is invalid Входной параметр instrument_status имеет некорректное значение.
Список доступных значений: instrument_status.
30051 INVALID_ARGUMENT account margin status is disabled Для данного договора недоступна маржинальная торговля.
30052 INVALID_ARGUMENT instrument forbidden for trading by API Для данного инструмента недоступна торговля через API.
30053 INVALID_ARGUMENT post stop_order error: %s Ошибка метода выставления стоп-заявки.
Подробнее в тексте ошибки.
30054 INVALID_ARGUMENT instrument type is not a share or etf Тип инструмента не инвестиционный фонд или акция
30055 INVALID_ARGUMENT order_id cannot be longer than 36 characters order_id не может быть длиннее 36 символов
30056 INVALID_ARGUMENT stop order settlement currency is not supported Валюта выставления стоп-заявки не поддерживается
30057 INVALID_ARGUMENT the order is a duplicate, but the order report was not found Заявка является дублем, но отчет по заявке не найден
30058 INVALID_ARGUMENT task not completed yet, please try again later Выполнение задачи еще не завершено, попробуйте позже.
30059 INVALID_ARGUMENT cancel order error: %s Ошибка метода отмены заявки.
Подробнее в тексте ошибки.
30060 INVALID_ARGUMENT cancel stop-order error: %s Ошибка метода отмены стоп-заявки.
Подробнее в тексте ошибки.
30061 INVALID_ARGUMENT ‘from’ value out of range Входной параметр from имеет некорректное значение.
Укажите значение в пределах от 1970-01-01T00:00:00Z до 2099-12-31T23:59:59.999999999Z включительно.
30062 INVALID_ARGUMENT ‘to’ value out of range Входной параметр to имеет некорректное значение.
Укажите значение в пределах от 1970-01-01T00:00:00Z до 2099-12-31T23:59:59.999999999Z включительно.
30063 INVALID_ARGUMENT ‘expire_date’ value out of range Входной параметр expire_date имеет некорректное значение.
Дата должна быть не ранее текущей и не позднее 2099-12-31T23:59:59.999999999Z.
30064 INVALID_ARGUMENT the required period should not exceed 31 days Запрошенный период не может превышать 31 дня.
Укажите корректный период.
30065 INVALID_ARGUMENT missing parameter: ‘task_id’ Входной параметр task_id является обязательным.
Укажите корректный параметр task_id.
30066 INVALID_ARGUMENT missing parameter: ‘payload’ Входной параметр payload является обязательным.
Укажите корректный параметр payload.
30067 INVALID_ARGUMENT ‘action_type’ is invalid Некорректное значение action_type.
Выберите допустимое значение.
30068 INVALID_ARGUMENT Only limit order is allowed В настоящий момент возможно выставление только лимитного торгового поручения.
30069 INVALID_ARGUMENT Invalid parameter: ‘limit’ Входной параметр limit имеет некорректное значение.
Значение должно быть меньше или равно 1000.
30070 INVALID_ARGUMENT ‘from’ can’t be more than the current date Входной параметр from имеет некорректное значение.
Укажите корректный параметр.
30077 INVALID_ARGUMENT not available for OTC instruments Метод недоступен для внебиржевых инструментов.
30078 INVALID_ARGUMENT Incorrect minimum price increment Некорректный шаг изменения цены.
30079 INVALID_ARGUMENT instrument is not available for trading Инструмент недоступен для торгов.
30080 INVALID_ARGUMENT quantity must be positive Количество лотов должно быть положительным числом.
30081 INVALID_ARGUMENT account status is closed Аккаунт закрыт.
30082 INVALID_ARGUMENT account status is blocked Аккаунт заблокирован.
30083 INVALID_ARGUMENT order_type is invalid Некорректный тип заявки.
30084 INVALID_ARGUMENT maximum request period has been exceeded Превышен лимит запрашиваемого периода.
30085 INVALID_ARGUMENT price in points is available only for futures and bonds Тип цены в пунктах доступен только для фьючерсов и облигаций.
30086 INVALID_ARGUMENT year is invalid Некорректный год.
30087 INVALID_ARGUMENT missing parameter: query Входной параметр query является обязательным.
Укажите не пустой параметр query.
30088 INVALID_ARGUMENT ‘from’ and ‘to’ must have the same year Запрашиваемые даты должны быть в рамках одного года.
30089 INVALID_ARGUMENT ‘to’ must not be later than %s Поле to не должно быть позднее даты, указанной в тексте ошибки.
Дата указана в формате ISO 8601.
30090 INVALID_ARGUMENT missing parameter: ‘siebel_id’ Входной параметр siebel_id является обязательным.
Укажите корректный параметр siebel_id.
30091 INVALID_ARGUMENT quantity of instruments can’t be more than 100 Количество инструментов не может превышать 100.
30092 INVALID_ARGUMENT trading unavailable on weekends Торги недоступны по нерабочим дням.
30093 INVALID_ARGUMENT missing parameter: ‘figi’ or ‘instrument_id’ Один из параметров figi или instrument_id является обязательным.
30094 INVALID_ARGUMENT options trading is not available at the moment Выставление заявок по опционам недоступно.
40002 PERMISSION_DENIED insufficient privileges Недостаточно прав для совершения операции.
Токен доступа имеет уровень прав read-only, либо у токена нет доступа к указанному счету.
Подробнее: Виды токенов
40003 UNAUTHENTICATED authentication token is missing or invalid Токен доступа не найден или не активен.
Вы можете выпустить новый токен по ссылке Настройки
40004 PERMISSION_DENIED Working with orders is not available with this account Выставление заявок недоступно с текущего аккаунта.
50001 NOT_FOUND exchange not found Биржа не найдена по переданному exchange_id.
Укажите корректный exchange_id.
50002 NOT_FOUND instrument not found Инструмент не найден.
Укажите корректный идентификатор инструмента.
50004 NOT_FOUND account not found Счёт не найден по переданному account_id.
Укажите корректный account_id.
50005 NOT_FOUND order not found Торговое поручение не найдено по переданному order_id.
Укажите корректный order_id.
50006 NOT_FOUND stop-order not found Стоп-заявка не найдена по переданному stop_order_id.
Укажите корректный stop_order_id.
50007 NOT_FOUND task not found Задача не найдена.
50008 NOT_FOUND no orderbook provider Отсутствует источник данных по стаканам.
50009 NOT_FOUND asset not found Актив не найден.
Укажите корректный идентификатор актива.
50010 NOT_FOUND brand not found Бренд не найден.
Укажите корректный идентификатор бренда.
70001 INTERNAL internal error Внутренняя ошибка сервиса.
Если ошибка повторяется, обратитесь в службу технической поддержки.
70002 INTERNAL internal network error Неизвестная сетевая ошибка, попробуйте выполнить запрос позднее.
Если ошибка повторяется, обратитесь в службу технической поддержки.
70003 INTERNAL internal error, please try again later Внутренняя ошибка сервиса, попробуйте выполнить запрос позднее.
Если ошибка повторяется, обратитесь в службу технической поддержки.
80001 RESOURCE_EXHAUSTED limit of open streams exceeded Превышен лимит одновременных открытых stream-соединений. Подробнее: Лимитная политика
80002 RESOURCE_EXHAUSTED request limit exceeded Превышен лимит запросов в минуту. Подробнее: Лимитная политика
80003 RESOURCE_EXHAUSTED The limit on SMS sending has been exceeded, try again in a minute Превышен лимит на отправку СМС, попробуйте через минуту.
90001 FAILED_PRECONDITION need confirmation: %s Требуется подтверждение операции.
Подробнее в тексте ошибки.
90002 FAILED_PRECONDITION only for qualified investors Торговля этим инструментом доступна только квалифицированным инвесторам.

Всем привет!
Есть сайт:

https://avtokraska-shop.ru/personal/order/cancel/317/?CANCEL=Y

— это форма отмены заказа.
Если я ввожу комментарий, а потом жму на конопку «Отменить заказ» — то ничего не происходит, даже на ту же самую страницу редирект не происходит.

Знающие люди, подскажите пожалуйста, что не так?
Вот код вызова компонента  (файл /avtokraska-shop.beta3.ceteralabs.com/www/local/templates/.default/components/bitrix/sale.personal.order/templates/.default):

Код
<?
if(!defined("B_PROLOG_INCLUDED") || B_PROLOG_INCLUDED!==true)die();
$APPLICATION->IncludeComponent(
   "bitrix:sale.personal.order.cancel",
   "",
   array(
      "PATH_TO_LIST" => $arResult["PATH_TO_LIST"],
      "PATH_TO_DETAIL" => $arResult["PATH_TO_DETAIL"],
      "SET_TITLE" =>$arParams["SET_TITLE"],
      "ID" => $arResult["VARIABLES"]["ID"],
   ),
   $component
);
?>

Сам шаблон компонента bitrix:sale.personal.order.cancel  (файл  /avtokraska-shop.beta3.ceteralabs.com/www/local/templates/.default/components/bitrix/sale.personal.order.cancel/.default):

Код
<?if (!defined("B_PROLOG_INCLUDED") || B_PROLOG_INCLUDED!==true)die();?>

<a href="<?=$arResult["URL_TO_LIST"]?>"><?=GetMessage("SALE_RECORDS_LIST")?></a>

<?
   //var_dump(POST_FORM_ACTION_URI);
?>

<div class="bx_my_order_cancel">
   <?if(strlen($arResult["ERROR_MESSAGE"])<=0):?>
      
      <fo rm method="post" action="<?=POST_FORM_ACTION_URI?>">
      
         <input type="hidden" name="CANCEL" value="Y">
         <?=bitrix_sessid_post()?>
         <input type="hidden" name="ID" value="<?=$arResult["ID"]?>">

         <?=GetMessage("SALE_CANCEL_ORDER1") ?>
         
         <a href="<?=$arResult["URL_TO_DETAIL"]?>"><?=GetMessage("SALE_CANCEL_ORDER2")?> #<?=$arResult["ACCOUNT_NUMBER"]?></a>?
         <b><?= GetMessage("SALE_CANCEL_ORDER3") ?></b><br /><br />
         <?= GetMessage("SALE_CANCEL_ORDER4") ?>:<br />
         
         <textarea name="REASON_CANCELED"></textarea><br /><br />
         <a class="button" type="submit" name="action" value="<?=GetMessage("SALE_CANCEL_ORDER_BTN") ?>"><?=GetMessage("SALE_CANCEL_ORDER_BTN") ?></a>

      </form>
   <?else:?>
      <?=ShowError($arResult["ERROR_MESSAGE"]);?>
   <?endif;?>

</div>

В переменной POST_FORM_ACTION_URI  вроде бы верный адрес храниться:  /personal/order/cancel/317/?CANCEL=Y  для этого конкретного заказа. помогите пожалуйста разобраться.

FAILED_ORDER_PARAMETER

One of the giving parameters is not correct. For the accuracy of parameters, you can check our

Submit an Order

page.

BALANCE_NOT_ENOUGH

The balance amount is not enough for this operation. Check your balance amount using the /api/v1/users/balances endpoint.

FAILED_MIN_TOTAL_AMOUNT

The order quantity is less than the minimum required. You can view the minimum order amount from the /api/v2/server/exchangeinfo endpoint. You can avoid the FAILED_MIN_TOTAL_AMOUNT error with the minExchangeValue object.

STOP_PRICE_GREATER_THAN_MARKET

Stop buy price must be above current price. You can check the current price information from the /api/v2/ticker endpoint with the last object.

STOP_PRICE_LESS_THAN_MARKET

Stop sell price must be bellow current price. You can check the current price information from the /api/v2/ticker endpoint with the last object.

PRICE_MUST_BE_LESS_THAN_MAXPRICE

Buy or sell price must be less than max. You can view the maximum Price information from the /api/v2/server/exchangeinfo endpoint with the maximumLimitOrderPrice object.

FAILED_MIN_TOTAL_AMOUNT

Quantity*price must be greater than min amount. You can view the Min total amount information from the /api/v2/server/exchangeinfo endpoint with the minAmount object.

FAILED_ORDER_WITH_OPEN_ORDERS

Order submission failed due to open orders. Your free balance is not enough for this transaction. You can view your available balance with the free object from the /api/v1/users/balance endpoint. You may have an open order or a request to withdraw.

FAILED_MARKET_ORDER

Market order is not open for the pair. You can view the orderMethods values from the /api/v2/server/exchangeinfo endpoint.

ORDER_MIN_PRICE_EXCEEDED

Less than 1/10 of the current price has been set. You can view the current limits using the maximumLimitOrder Price and minimumLimitOrderPrice objects from the /api/v2/server/exchange info endpoint.

ORDER_MAX_PRICE_EXCEEDED

More than *10 of the current price has been set. You can view the current limits using the maximumLimitOrder Price and minimumLimitOrderPrice objects from the /api/v2/server/exchange info endpoint.

Arturo Lopez Perez

2019.03.25 10:42

#1  

Solved it with this check function, before any order modification.

/**
* Checks if an order can be modified from its existing type, open price, sl and tp.
*
* @param    int      type  order type
* @param    double   open  order open price
* @param    double   sl    stoploss price
* @param    double   tp    take profit price

* @return bool
*/
bool ModificationValid(int type, double open, double sl, double tp)
{
   // Read spread and stoplevel
   double stoplevel = getStopLevelInPrice();
   double spread    = (Ask — Bid);
   double mktprice  = 0;

      // Find out which price should be used
   if(type == OP_BUY || type == OP_BUYLIMIT || type == OP_BUYSTOP) mktprice = Bid;
   if(type == OP_SELL || type == OP_SELLLIMIT || type == OP_SELLSTOP) mktprice = Ask;

      // Get minimum difference
   double mindif = MathMin(MathAbs(mktprice — sl),MathMin(MathAbs(mktprice — tp),MathAbs(mktprice — open)));

      // Find out if valid
   if(mindif > stoplevel+1*Point)
      return(true);

      // Invalid
   return(false);
}

double getStopLevelInPrice()
{
   double s=MathMax(MarketInfo(Symbol(),MODE_FREEZELEVEL),MarketInfo(Symbol(),MODE_STOPLEVEL));
   return(s*Point);
}

Philip Pankaj

2022.01.02 15:57

#2  

Arturo Lopez Perez #:

Solved it with this check function, before any order modification.

/**
* Checks if an order can be modified from its existing type, open price, sl and tp.
*
* @param    int      type  order type
* @param    double   open  order open price
* @param    double   sl    stoploss price
* @param    double   tp    take profit price

* @return bool
*/
bool ModificationValid(int type, double open, double sl, double tp)
{
   // Read spread and stoplevel
   double stoplevel = getStopLevelInPrice();
   double spread    = (Ask — Bid);
   double mktprice  = 0;

      // Find out which price should be used
   if(type == OP_BUY || type == OP_BUYLIMIT || type == OP_BUYSTOP) mktprice = Bid;
   if(type == OP_SELL || type == OP_SELLLIMIT || type == OP_SELLSTOP) mktprice = Ask;

      // Get minimum difference
   double mindif = MathMin(MathAbs(mktprice — sl),MathMin(MathAbs(mktprice — tp),MathAbs(mktprice — open)));

      // Find out if valid
   if(mindif > stoplevel+1*Point)
      return(true);

      // Invalid
   return(false);
}

double getStopLevelInPrice()
{
   double s=MathMax(MarketInfo(Symbol(),MODE_FREEZELEVEL),MarketInfo(Symbol(),MODE_STOPLEVEL));
   return(s*Point);
}

For the same issue it’s not working.

William Roeder

2022.01.02 17:07

#3  

  1. Please edit your post and use the CODE button (Alt-S)! (For large amounts of code, attach it.)
              General rules and best pratices of the Forum. — General — MQL5 programming forum (2019)
              Messages Editor

  2.    double s=MathMax(MarketInfo(Symbol(),MODE_FREEZELEVEL),MarketInfo(Symbol(),MODE_STOPLEVEL));

    You can’t move stops (or pending prices) closer to the market than the minimum: MODE_STOPLEVEL * _Point or SymbolInfoInteger(SYMBOL_TRADE_STOPS_LEVEL).
              Requirements and Limitations in Making Trades — Appendixes — MQL4 Tutorial

    On some ECN type brokers the value might be zero (the broker doesn’t know). Use a minimum of two (2) PIPs.

    The checks a trading robot must pass before publication in the Market — MQL5 Articles (2016)

William Roeder

2022.02.17 12:02

#5  

Kailash Bai Mina #: How Can I get an error while deleting the pending order?

The market was too close to the open price. The order was about to open.

There is no need to create pending orders in code.

  1. The pending has the slight advantage, A) you are closer to the top of the queue (filled quicker), B) there’s no round trip network delay (filled quicker.)
  2. Don’t worry about it unless you’re scalping M1 or trading news.
  3. Humans can’t watch the screen 24/7, so they use pending orders; EAs can, so no need for pending orders, have it wait until the market reaches the trigger price and just open an order.
Kailash Bai Mina

2022.02.17 12:31

#6  

William Roeder #:

The market was too close to the open price. The order was about to open.

There is no need to create pending orders in code.

  1. The pending has the slight advantage, A) you are closer to the top of the queue (filled quicker), B) there’s no round trip network delay (filled quicker.)
  2. Don’t worry about it unless you’re scalping M1 or trading news.
  3. Humans can’t watch the screen 24/7, so they use pending orders; EAs can, so no need for pending orders, have it wait until the market reaches the trigger price and just open an order.

We really can’t close pending little before it was closed.

I didn’t knew that.

I was working on a order.

It has 11000 lines code.

I don’t think i can replace all the logic and open market order in such a big chunk of code(at least not untill he increases the budget to idk 500-1000$)

Is it possible that i create my own custom pending orders like instead of opening stop/limit order, i will store all the data in a array or struct maybe and i will open a market order when price reaches there?

Is it feasible?

Alain Verleyen

2022.02.17 15:21

#7  

Kailash Bai Mina #:
We really can’t close pending little before it was closed.

I didn’t knew that.

I was working on a order.

It has 11000 lines code.

I don’t think i can replace all the logic and open market order in such a big chunk of code(at least not untill he increases the budget to idk 500-1000$)

Is it possible that i create my own custom pending orders like instead of opening stop/limit order, i will store all the data in a array or struct maybe and i will open a market order when price reaches there?

Is it feasible?

Don’t waste your time. William’s opinion about pending orders is just an opinion. Mine is there is no problem and some advantages to use pending orders (they are at the server side for execution).

You just need to deal with the settings of your broker. You can also consider to use a broker which doesn’t put limit on working with orders (pending or not).

Понравилась статья? Поделить с друзьями:

Читайте также:

  • Orcs must die 3 fatal error ошибка
  • Orbitlaunchererror ubisoft game launcher error code 2
  • Orangefox error 1
  • Orangeemu64 dll hello ошибка
  • Orangeemu error bind сделана попытка доступа к сокету методом nfs heat

  • 0 0 голоса
    Рейтинг статьи
    Подписаться
    Уведомить о
    guest

    0 комментариев
    Старые
    Новые Популярные
    Межтекстовые Отзывы
    Посмотреть все комментарии