Вы написали, что он не работает с лотом 0.07 или даже 1. Как вы это определяете? Лот=0.07?
Я не был уверен, правильно ли я написал Mqlrequest и Mqlresult, поэтому я использовал CTrade вместо этого, я обнаружил, что он работает, если я использую фиксированные объемы, и теперь я обнаружил, что я могу умножать фиксированные объемы на целые числа, но если я пытаюсь изменить объемы с помощью дробей, я получаю ошибки, такие как invalid lotize, результат измененного размера лота печатается с ошибкой[invalid volume].
MetaNt: Функция Normalize double предназначена для исправления сложных десятичных дробей, я попробую ее на моем динамическом лоте.
Исправлено.
Похоже, это был один из моих масштабных коэффициентов из некоторых уравнений, которые лежат за пределами CT Buy/Sell. Это не было проблемой, с которой я сталкивался в mql4, поэтому мне потребовалось время, чтобы найти ее, мне придется следить за этим, если mql4 обновится снова.
Если у кого-то еще возникла эта проблема, используйте 2 для цифровой части функции NormalizeDouble().
Похоже, я столкнулся с той же проблемой. Я подтвердил, что размер лота соответствует требованиям SYMBOL_VOLUME_MIN, SYMBOL_VOLUME_MAX и SYMBOL_VOLUME_STEP.
Похоже, я столкнулся с той же проблемой. Я подтвердил, что размер лота соответствует требованиям SYMBOL_VOLUME_MIN, SYMBOL_VOLUME_MAX и SYMBOL_VOLUME_STEP.
Для авторизации и пользования сайтом MQL5.com необходимо разрешить использование файлов Сookie.
Пожалуйста, включите в вашем браузере данную настройку, иначе вы не сможете авторизоваться.
Вы вошли в аккаунт. Двухфакторная аутентификация отключена. Настройте её заново и отсканируйте новый QR-код или продолжите с отключённой двухфакторной аутентификацией.
Ему не нравится динамический размер лота? Он работает с торговлей ct, когда я использую фиксированный размер лота.
CTrade - это обертка для OrderSend().
Вы написали, что он не работает с лотом 0.07 или даже 1. Как вы это определяете? Lot=0.07 ?
CTrade - это обертка для OrderSend().
Вы написали, что он не работает с лотом 0.07 или даже 1. Как вы это определяете? Лот=0.07?
Это десятичные числа определенной сложности, я попробую normalize double.
Функция Normalize double предназначена для исправления сложных десятичных дробей, я попробую ее на моем динамическом лоте.
Исправлено.
Похоже, это был один из моих масштабных коэффициентов из некоторых уравнений, которые лежат за пределами CT Buy/Sell. Это не было проблемой, с которой я сталкивался в mql4, поэтому мне потребовалось время, чтобы найти ее, мне придется следить за этим, если mql4 обновится снова.
Если у кого-то еще возникла эта проблема, используйте 2 для цифровой части функции NormalizeDouble().
007, говорите?
Возможно, вам следует спросить мистера Бонда ;-)
Похоже, я столкнулся с той же проблемой. Я подтвердил, что размер лота соответствует требованиям SYMBOL_VOLUME_MIN, SYMBOL_VOLUME_MAX и SYMBOL_VOLUME_STEP.
Например, я получаю следующее:
2014.04.07 14:49:35 2014.04.04 16:00:00 CTrade::OrderSend: instant sell 0.53 EURUSD at 1.36934 sl: 1.37434 tp: 1.35934 [invalid volume]
Во время бэктестинга советника с этим символом и этими спецификациями:
Вот код, который я использую для отправки ордера:
EDIT:
Конечно, я могу вручную размещать сделки с таким же размером лота.
Похоже, я столкнулся с той же проблемой. Я подтвердил, что размер лота соответствует требованиям SYMBOL_VOLUME_MIN, SYMBOL_VOLUME_MAX и SYMBOL_VOLUME_STEP.
Например, я получаю следующее:
2014.04.07 14:49:35 2014.04.04 16:00:00 CTrade::OrderSend: instant sell 0.53 EURUSD at 1.36934 sl: 1.37434 tp: 1.35934 [invalid volume]
Во время бэктестинга советника с этим символом и этими спецификациями:
Вот код, который я использую для отправки ордера:
EDIT:
Конечно, я могу вручную размещать сделки с таким же размером лота.
Эта строка не имеет эффекта:
NormalizeDouble(trade_size,DecimalPoints);Вы должны повлиять на результат в переменную, см. документацию NormalizeDouble.
trade_size=NormalizeDouble(trade_size,DecimalPoints);