Скачать MetaTrader 5
Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий
Форматируй текст в редакторе сообщений. Это удобно!
Vladimir
299
Vladimir 2015.12.02 18:34  
nys2000:
Модификация ордера с теми же параметрами возвращает ошибку 1?

В справке MQL4 по OrderModify написано: "Если в качестве параметров функции передать неизмененные значения, то в этом случае будет сгенерирована ошибка 1 (ERR_NO_RESULT)".

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

Надо еще понять, что следует считать неизменным значением. В частности, должен ли нуль быть нормализован при передаче значения в OrderModify в роли SL, TP. Пока значения SL, TP ненулевые, они должны быть нормализованы для этого символа. А в каком представлении нужно указывать нулевые SL, TP, не припомню. Это я о том, что взятый из ордера "нулевой" TP может иметь меньше значащих нулей, чем заданный прямо в b_TP=0.

Допустим, удастся подобрать. Но  закладывать в основу торговли эти хлипкие недокументированные соображения, считаю, нельзя. Надежнее после всякого OrderModify прямо проверять с необходимой точностью, удалось ли добиться нужных значений параметров ордера. Раз уж такая коллизия.

Mislaid
617
Mislaid 2015.12.02 19:07  
Vlad143:

В справке MQL4 по OrderModify написано: "Если в качестве параметров функции передать неизмененные значения, то в этом случае будет сгенерирована ошибка 1 (ERR_NO_RESULT)".

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

Надо еще понять, что следует считать неизменным значением. В частности, должен ли нуль быть нормализован при передаче значения в OrderModify в роли SL, TP. Пока значения SL, TP ненулевые, они должны быть нормализованы для этого символа. А в каком представлении нужно указывать нулевые SL, TP, не припомню. Это я о том, что взятый из ордера "нулевой" TP может иметь меньше значащих нулей, чем заданный прямо в b_TP=0.

Допустим, удастся подобрать. Но  закладывать в основу торговли эти хлипкие недокументированные соображения, считаю, нельзя. Надежнее после всякого OrderModify прямо проверять с необходимой точностью, удалось ли добиться нужных значений параметров ордера. Раз уж такая коллизия.

У меня без всяких нормализаций работает следующее: если абсолютное значение разности меньше половины пункта, то значения цен считаются равными.

И, конечно, торговые функции кормить надо нормализованными значениями. 

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