Вопросы от начинающих MQL5 MT5 MetaTrader 5 - страница 474
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Это ещё не всё... https://www.mql5.com/ru/forum/66827
Как узнать реальное значение переменной типа double ? Дело в том, что через принт вылетают тысячные иногда - сама переменная формируется из текстовой строки, но проходит процедуру округления.
Гм. А Вам для чего?
Для выявления ошибки в расчетах :)
Вы сравнить хотите несколько значений типа double?
Подскажите, требуется отправка сообщений на email с терминала Metatrader 4, причем таким образом что бы делался скриншот текущего чарта и вкладывался в середину сообщения. Пример:
Был сигнал на покупку на паре EurUsd
<скриншот09122015_eurusd.png>
Доп информация об открытии.
Скажите как реализовать такое? Может есть пример или что то похожее, что можно переделать. Спасибо!Не совсем... есть предположение, что числа имеют не всегда целое значение 4=3,99999999999999999 и после математических действий образуется неточность после округления.
Даже если неточность и появляется, используйте NormalizeDouble(). Устанавливайте нужную Вам точность для расчетов. Для этого эта функция и предназначена.
Там в примере, похоже, Ваш случай описан:
Нужно иметь в виду, что нормализованное число при выводе в Журнал с помощью Print() может содержать большее количество знаков после запятой, чем вы ожидаете. Например,
DoubleToString(a,8)=76.67100000
Print(76.671)=76.67100000000001
Даже если неточность и появляется, используйте NormalizeDouble(). Устанавливайте нужную Вам точность для расчетов. Для этого эта функция и предназначена.
Там в примере, похоже, Ваш случай описан:
Да - описан, да - использую - вопрос как раз в том, как не через Print и вообще string получить данные для анализа :)
С помощью все той же NormalizeDouble(). Получаете число типа double. Нормализованное. Просто Print() выводит так.
Вот здесь написано как правильно сравнивать: https://www.mql5.com/ru/docs/basis/types/double