Блог им. viom

Кривые цены в MT5. Как бороться?

Доброго времени!

Может кто подскажет.

При запросе тиков ленты в МТ5 функцией CopyTicksRange() или CopyRates(), часто приходят кривые котировки типа 70.99999999999 или 71.000000001
и естественно 71.000000001 и 71.00 это разные цифры, что влечет за собой ошибки. 

Перепробовал и округление и даже DoubleToString, а потом  StringToDouble. Не помогло. Какой-то глюк.

Может кто подскажет как побороть.

Заранее спасибо. 

Данная публикация является личным мнением автора. Мнение владельца сайта может не совпадать с мнением автора.
    374
    9 комментариев
    Через MathFloor и NormalizeDouble
    avatar
    Freeman Busido, NormalizeDouble проблему не решает. Пробовал.
    MathFloor проверю. 
    Спасибо.
    avatar
    Я решил… используя и то и другое… не справишься пришлю образец… можно приводить к целым числам или даже разрядам целых чисел
    avatar
    Freeman Busido, может где то в системе что то не так настроено.

    Например гружу в массив данные через CopyRates().

    Попадается такая цена. MyData[0].high=71.9999999999

    Делаю:
     
    MyString=DoubleToString(MyData[0].high, 2);
    Comment(MyString); //Выводит 72.00
    MyDbl=StringToDouble(MyString);
    Comment(MyDbl); //Выводит 71.9999999999

    Колдовство какое-то, где рыть непонятно…
    avatar
    Строчка и число — разные вещи… нужно просто MyData запечатать в MathFloor с NormalizeDouble. Скинь почту или скайп — пришлю образец
    avatar
    MetaQuotes Software   может подскажут?)
    avatar
    Friendly Deep Space, блин, а чё так можно было ?
    avatar
    Вита Мих, да, можно призвать к диалогу в формате:  @«никнейм абонента»
    avatar
    Попробую. Спасибо за советы!
    avatar

    Читайте на SMART-LAB:
    Фото
    Финансовые результаты Аэрофлота по РСБУ за 6 месяцев 2026 года
    Аэрофлот опубликовал финансовые результаты по РСБУ за 2 квартал и 6 месяцев 2026 года. ✈️ Выручка во 2 квартале увеличилась на 3,3% год к году и...
    Фото
    Эмитент допустил дефолт: что делать инвесторам в таком случае?
    Дефолт по облигациям не всегда означает полную потерю вложений. Даже если эмитент перестал платить купоны или не погасил долг, инвестор...
    Фото
    Финансовые итоги 1 полугодия 2026 года
    Выручка от продажи металлов за первые шесть месяцев текущего года увеличилась вслед за ростом цен на цветные и драгоценные металлы....
    Фото
    МД Медикал операционные результаты 2 кв. 2026 г. - темпы роста ускорились, но появился долг
    Компания МД Медикал (Мать и дитя) опубликовала операционные результаты за 2 квартал 2026 г. Выручка за 2 квартал выросла на 25,9% до 13 млрд руб....

    теги блога Вита Мих

    ....все тэги



    UPDONW
    Новый дизайн