Скачать MetaTrader 5

Ошибка 131: на чьей стороне глюк?

Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий
Не знаешь язык собеседника? Функция автоматического перевода тебе поможет!
ssn1
35
ssn1 2010.09.24 11:11 

После семи торговых суток работы советника на торговом центовом счёте InstaForex вдруг стала вылезать ошибка 131 (ERR_INVALID_TRADE_VOLUME): "Неправильный объем, ошибка в грануляции объема. Необходимо прекратить все попытки торговых операций и изменить логику программы.".

Код советника я проверил: объём ордера (0.06) перед использованием функции OrderSend() был нормализован функцией NormalizeDouble() с двумя знаками после точки. Также были нормализованы и все цены стопов.
Точная копия советника на демосчёте с такой же парой такую ошибку не выдаёт.
Я обратился в саппорт, где мне ответили: " К сожалению, мы не предоставляем поддержки по работе торговых советников. Вам необходимо следовать инструкции, которая предоставляется вместе с программой.".

Посоветуйте: что мне делать, как бороться? По мне, это глюк на стороне сервера.

dmitriy086
330
dmitriy086 2010.09.24 11:37  
ssn1:

После семи торговых суток работы советника на торговом центовом счёте InstaForex вдруг стала вылезать ошибка 131 (ERR_INVALID_TRADE_VOLUME): "Неправильный объем, ошибка в грануляции объема. Необходимо прекратить все попытки торговых операций и изменить логику программы.".

Код советника я проверил: объём ордера (0.06) перед использованием функции OrderSend() был нормализован функцией NormalizeDouble() с двумя знаками после точки. Также были нормализованы и все цены стопов.
Точная копия советника на демосчёте с такой же парой такую ошибку не выдаёт.
Я обратился в саппорт, где мне ответили: " К сожалению, мы не предоставляем поддержки по работе торговых советников. Вам необходимо следовать инструкции, которая предоставляется вместе с программой.".

Посоветуйте: что мне делать, как бороться? По мне, это глюк на стороне сервера.


Срочно меняй эту кухню на нормальный ДЦ! Как это: "К сожалению, мы не предоставляем поддержки по работе торговых советников"? а что они тогда предоставляют???
Andrei
2387
Andrei 2010.09.24 11:42  
ssn1:

Посоветуйте: что мне делать, как бороться? По мне, это глюк на стороне сервера.

ну например распечатать полностью все торговые приказы в файл и подавать жалобу в кроуф за не исполнение сделки.

также сделать копии экрана терминала который будет отображать журнал в режиме просмотра. в принципе юридически метаквоты несут ответсвенность за корректность передачи информации между сторонами и пока что особых претензий за это к ним вроде не было, так что вполне возможно что была ошибка в ордере, но это можно увидеть только в распечатке.

есть еще вариант - заказать стороннюю программку для независимой документации сделок и тогда найти виновного будет проще.

Murad Ismayilov
1812
Murad Ismayilov 2010.09.24 11:48  
Если ордер с лотом 0.06 является допустимым на текущем счету, но не исполняется, надо обратиться в саппорт ДЦ за разъяснениями.
ssn1
35
ssn1 2010.09.24 12:12  
wmlab:
Если ордер с лотом 0.06 является допустимым на текущем счету, но не исполняется, надо обратиться в саппорт ДЦ за разъяснениями.


Спасибо!

Как оказалось, минимальный объём ордера для центовых счетов - 0.1, а не 0.01, как я наивно предполагал. Сюрприз, однако... Надо советник переделывать... :-((

Murad Ismayilov
1812
Murad Ismayilov 2010.09.24 12:16  
ssn1:


Спасибо!

Как оказалось, минимальный объём ордера для центовых счетов - 0.1, а не 0.01, как я наивно предполагал. Сюрприз, однако... Надо советник переделывать... :-((

Смею предложить функцию

//+------------------------------------------------------------------+
//| Нормализация лота                                                |
//+------------------------------------------------------------------+

double NormalizeLots(double lot)
{
   double lotstep = MarketInfo(Symbol(), MODE_LOTSTEP);
   double lots = NormalizeDouble(lot / lotstep, 0) * lotstep;   
   lots = MathMax(lots, MarketInfo(Symbol(), MODE_MINLOT));
   lots = MathMin(lots, MarketInfo(Symbol(), MODE_MAXLOT));   
   return (lots);
}
ssn1
35
ssn1 2010.09.24 12:37  
wmlab:

Смею предложить функцию


Спасибо!
Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий