Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Проверку делал через алерт. вытягивал с начало sto_proc = -fibo_level_0 потом sto_proc = fibo_level_100
(результат был правильным) ну и затем sto_proc = fibo_level_100 - fibo_level_0 результат выше (
В принтах используй перевод в строку до указанной точности
Видимо какая то проблема с получаемыми значениями цен. Как можно поставить округление до n знака после запятой ?
Вопрос созрел, т.е ошибка происходит при команде Alert ? Или ошибка при самом расчете ? И нужно в самих значениях прописать DoubleToString и _Digits ?
В самих расчётах надо использовать NormalizeDouble(), а в принтах, комментах и алертах DoubleToString()
Но злоупотреблять нормализацией не надо. Чаще всего она не нужна.
Например писать открытие ордера по NormalizeDouble(Bid) абсолютная бессмыслица. Цена Bid приходит с сервера уже нормализованная. Другое дело открывая отложенный ордер по цене Bid+step*_Point ... тут при умножении и сложении могут оказаться лишние знаки после запятой.
У меня в init стоит выше указанный текст. Если я туда вставлю нормализацию для значений max_fractal и min_fractal - это решит проблему ?
Еще раз приветствую !
Прошу объяснить где я допускаю ошибку при математическом вычислении уровня фибо.
Советник вычисляет правильно НО, если я считаю в ручную получаются другие цифры:
Alert выводит правильные значения: Ниcходящий тренд sto_proc=-0.0107 fibo_level_0=0.7565 fibo_level_100=0.7458 fibo_level_23=0.754
Сверял значения с графиком, все правильно. Но начинаю считать руками получаются другие значения:
fibo_level_23 = NormalizeDouble((fibo_level_0 + (sto_proc*0.236)), Digits); подставляю значения fibo_level_23 = (0,7565 + (0,0107*0.236) = 0,7565 + 0,0026 = 0,7591
Как получается значение fibo_level_23=0.754 ? Что я ни так считаю ?
https://www.mql5.com/en/blogs/post/662291
Note5
Еще раз приветствую !
Прошу объяснить где я допускаю ошибку при математическом вычислении уровня фибо.
Советник вычисляет правильно НО, если я считаю в ручную получаются другие цифры:
Alert выводит правильные значения: Ниcходящий тренд sto_proc=-0.0107 fibo_level_0=0.7565 fibo_level_100=0.7458 fibo_level_23=0.754
Сверял значения с графиком, все правильно. Но начинаю считать руками получаются другие значения:
fibo_level_23 = NormalizeDouble((fibo_level_0 + (sto_proc*0.236)), Digits); подставляю значения fibo_level_23 = (0,7565 + (0,0107*0.236) = 0,7565 + 0,0026 = 0,7591
Как получается значение fibo_level_23=0.754 ? Что я ни так считаю ?