Изучаем и пишем вместе на MQL5 - страница 37

Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- Форексный VPS бесплатно на 24 часа
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Спасибо! Текущая цена спроса и предложения-ноль. Тикет сделки . Тикет ордера. Щас, тут папа.
Спасибо!! Щас посмотрю retcode !
СПАСИБО!!!! Я понял! Без вас-никуда!
Здравствуйте.
Столкнулся вот с такой проблемой, совершенно мне непонятной. Объясните плиз, почему в данном случае NormalizeDouble() не всегда работает?
Записываю в файл цены и другие данные текущего таймфрейма. Около 10 процентов от всех записей составляют строки вида:
1971.01.07,00:00,0.5368000000000001,0.5368000000000001,0.5368000000000001,0.5368000000000001,1
Результат не зависит от порядка нормализации, подставляю в функцию 1, 2, 3, 4, 5, Digits - всё без разницы. Где засада?
Здравствуйте.
Столкнулся вот с такой проблемой, совершенно мне непонятной. Объясните плиз, почему в данном случае NormalizeDouble() не всегда работает?
Записываю в файл цены и другие данные текущего таймфрейма. Около 10 процентов от всех записей составляют строки вида:
1971.01.07,00:00,0.5368000000000001,0.5368000000000001,0.5368000000000001,0.5368000000000001,1
Результат не зависит от порядка нормализации, подставляю в функцию 1, 2, 3, 4, 5, Digits - всё без разницы. Где засада?
Засады нет. Так и выглядят некоторые нормализованные значения. см. в Справочнике раздел про эту функцию.
Ну в справочнике есть замечание лишь про вывод с помощью Print.
Ну так а Вы с помощью какой функции выводите эти нормализованные значения? :) - А, понял. Прочтение из файла. В примере из Справочника функция Print() просто выводит число "как оно есть".
Допустим, что не только данная функция, но и все другие также "нормализуют". И как тогда такое вот значение подавать в виде цен в отложенный ордер?
Вот именно в таком виде и подавать. Для ордера что требуется? - Нормализованные цены. Вот мы их нормализуем и подаём. А как выглядят эти нормализованные цены при распечатке - уже не наша проблема :)
Более того, если Вы выводите "цены текущего таймфрейма", значит вот именно такие цены с большим количеством знаков после запятой и приемлемы на сервере в качестве нормализованных. ..Это уже как бы мой вывод, но контраргументов не найду.
Здравствуйте.
Столкнулся вот с такой проблемой, совершенно мне непонятной. Объясните плиз, почему в данном случае NormalizeDouble() не всегда работает?
Записываю в файл цены и другие данные текущего таймфрейма. Около 10 процентов от всех записей составляют строки вида:
1971.01.07,00:00,0.5368000000000001,0.5368000000000001,0.5368000000000001,0.5368000000000001,1
Результат не зависит от порядка нормализации, подставляю в функцию 1, 2, 3, 4, 5, Digits - всё без разницы. Где засада?
Рано или поздно Вы согласитесь на небольшую неточность и округлите значение.
Примерно тоже самое происходит и с вещественными числами записанными в двоичном виде (как их представляет компьютер).
Если нет возможности представить число с помощью мантисы в 52 бита (например 0.53680) появляется "небольшая" неточность...
Добрый день! подскажите пожалуста, как, каким типом правильно обьявить переменную? Вот примерная накидка функции.
string OrderType() {
string Si="";
POSITION_TYPE Type;bool Bull=false;
Bull =PositionGetInteger(POSITION_TYPE,Type);
if ( Bull ) {
if ( Type==POSITION_TYPE_BUY) Si="OP_BUY";
if ( Type==POSITION_TYPE_SELL) Si="OP_SELL";
return (Si); }
ORDER_TYPE ORType;
Bull =OrderGetInteger(ORDER_TYPE,ORType);
if ( Bull ) {
if ( Type==ORDER_TYPE_BUY_LIMIT) Si="OP_BUY_LIMIT";
if ( Type==ORDER_TYPE_SELL_LIMIT) Si="OP_SELL_LIMIT";
if ( Type==ORDER_TYPE_BUY_STOP) Si="OP_BUY_STOP";
if ( Type==ORDER_TYPE_SELL_STOP) Si="OP_SELL_STOP";
return (Si); }
}
Может, в ней вообще что-то не так, я например еще не пробовал имено таким образом получать значения функций PositionGetInteger и OrderGetInteger.
Добрый день! подскажите пожалуста, как, каким типом правильно обьявить переменную? Вот примерная накидка функции.
Может, в ней вообще что-то не так, я например еще не пробовал имено таким образом получать значения функций PositionGetInteger и OrderGetInteger.