После семи торговых суток работы советника на торговом центовом счёте InstaForex вдруг стала вылезать ошибка 131 (ERR_INVALID_TRADE_VOLUME): "Неправильный объем, ошибка в грануляции объема. Необходимо прекратить все попытки торговых операций и изменить логику программы.".
Код советника я проверил: объём ордера (0.06) перед использованием функции OrderSend() был нормализован функцией NormalizeDouble() с двумя знаками после точки. Также были нормализованы и все цены стопов.
Точная копия советника на демосчёте с такой же парой такую ошибку не выдаёт.
Я обратился в саппорт, где мне ответили: " К сожалению, мы не предоставляем поддержки по работе торговых советников. Вам необходимо следовать инструкции, которая предоставляется вместе с программой.".
Посоветуйте: что мне делать, как бороться? По мне, это глюк на стороне сервера.
Срочно меняй эту кухню на нормальный ДЦ! Как это: "К сожалению, мы не предоставляем поддержки по работе торговых советников"? а что они тогда предоставляют???
Посоветуйте: что мне делать, как бороться? По мне, это глюк на стороне сервера.
ну например распечатать полностью все торговые приказы в файл и подавать жалобу в кроуф за не исполнение сделки.
также сделать копии экрана терминала который будет отображать журнал в режиме просмотра. в принципе юридически метаквоты несут ответсвенность за корректность передачи информации между сторонами и пока что особых претензий за это к ним вроде не было, так что вполне возможно что была ошибка в ордере, но это можно увидеть только в распечатке.
есть еще вариант - заказать стороннюю программку для независимой документации сделок и тогда найти виновного будет проще.
Если ордер с лотом 0.06 является допустимым на текущем счету, но не исполняется, надо обратиться в саппорт ДЦ за разъяснениями.
Спасибо!
Как оказалось, минимальный объём ордера для центовых счетов - 0.1, а не 0.01, как я наивно предполагал. Сюрприз, однако... Надо советник переделывать... :-((
Спасибо!
Как оказалось, минимальный объём ордера для центовых счетов - 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); }
Смею предложить функцию
Спасибо!
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Вы принимаете политику сайта и условия использования
После семи торговых суток работы советника на торговом центовом счёте InstaForex вдруг стала вылезать ошибка 131 (ERR_INVALID_TRADE_VOLUME): "Неправильный объем, ошибка в грануляции объема. Необходимо прекратить все попытки торговых операций и изменить логику программы.".
Код советника я проверил: объём ордера (0.06) перед использованием функции OrderSend() был нормализован функцией NormalizeDouble() с двумя знаками после точки. Также были нормализованы и все цены стопов.
Точная копия советника на демосчёте с такой же парой такую ошибку не выдаёт.
Я обратился в саппорт, где мне ответили: " К сожалению, мы не предоставляем поддержки по работе торговых советников. Вам необходимо следовать инструкции, которая предоставляется вместе с программой.".
Посоветуйте: что мне делать, как бороться? По мне, это глюк на стороне сервера.