Любые вопросы новичков по MQL4 и MQL5, помощь и обсуждение по алгоритмам и кодам - страница 1813
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Всем привет. Подскажите, пожалуйста:
Пытаюсь вычислить пересечение на стандартном MACD сигнальной линии и гистограммы. Идея в следующем: на каждом новом баре берем две предыдущие свечи и получаем значения индикатора на каждой из них. Если значение MACD на второй свече больше чем значение сигнала, а на первой свече макд уже ниже сигнала и все значение выше нуля - значит есть пересечение вверху и соотвественно, наоборот.
Но, в момент получения значения оно становится каким-то огромным. Причем, только одной - сигнальной линии второй свечи. Может быть 8 в черте какой степени, 4,5, 7 и т.д. При появлении следующего бара, значение сигнальной линии второго по счету бара от нового уже может быть нормально. Все остальные получаются правильные. И в окне данных значение тоже правильное. Не могу понять почему. Что я делаю не так?
Ощущение, что дело в переменной double. Потому что значение в окне данных 0,000081, а получается 8,1....., тоже самое заметил с другим значением - в окне данных 0,000071, а в переменной 7,1..... Но они все определены как double переменные.
Там не 8 в коммента, а есть продолжение.
Там не 8 в коммента, а есть продолжение.
Спасибо. Так показывает правильно. Дурацкая ошибка, конечно. Но все равно интересно, почему все остальные значения отображаются нормально и только одно криво.
Спасибо. Так показывает правильно. Дурацкая ошибка, конечно. Но все равно интересно, почему все остальные значения отображаются нормально и только одно криво.
Оно не кривое, а правильное на машинном уровне, видите в конце есть "е-08"
К примеру, число 1e-05 это не ошибка, а 0.00001
Чтобы видеть то, что привыкли мы, нужно использовать DoubleToString, а программа в любом случае будет работать правильно
Почитайте
Оно не кривое, а правильное на машинном уровне, видите в конце есть "е-08"
К примеру, число 1e-05 это не ошибка, а 0.00001
Чтобы видеть то, что привыкли мы, нужно использовать DoubleToString, а программа в любом случае будет работать правильно
Почитайте
Спасибо еще раз. Почитаю.
Пофиксил, теперь работает. Конечно не правильно, но работает
Выставляет стопы не правильно, как побороть?
И смотрите в журнале, что там получается)
Сначала не чего не писал, потом начал смотреть последовательно и оказалось многое.
Спасибо.
Пофиксил, теперь работает. Конечно не правильно, но работает
Выставляет стопы не правильно, как побороть?
Откуда ты получаешь эти данные?
Откуда ты получаешь эти данные?
От ордера
MQL5 тоже сразу возвращает
При успешном принятии ордера торговым сервером функция OrderSend() возвращает значение true.