В чём логическая ошибка? Почему всегда только в одну сторону открывает? Пытался считать минуты открытия/закрытия свечей
- FOREX - Тенденции, прогнозы и следствия (Эпизод № 27: Июль 2013) Продолжение следует...
- FOREX - Тенденции, прогнозы и следствия 2015
- Что тут не так?
Грубейшая ошибка: НА КАЖДОМ ТИКЕ создавать хендл индикатора!
//+------------------------------------------------------------------+
//| Expert tick function |
//+------------------------------------------------------------------+
void OnTick()
{
TimeCurrent(Time);
int Minutes = Time.min;
int HandleOsMA = iOsMA(_Symbol, NULL, fast_ema_period, slow_ema_period, signal_sma_period, PRICE_CLOSE);
Open(Minutes, HandleOsMA);
Binary(Minutes);
}
Vladimir Karputov:
Хендл индикатора НУЖНО создавать ОДИН раз в OnInit().
Только в этом ошибка?
Только в этом ошибка?
Ошибки нужно исправлять по шагам. Сначала раз. Потом уже два ...
Ошибки нужно исправлять по шагам. Сначала раз. Потом уже два ...
Верно сказано) Я просто еще новенький
Верно сказано) Я просто еще новенький
Вы не спешите. Делайте постепенно. Всё получится. Также хорошим тоном считается наличие шапки кода, например так (пример взят из \MQL5\Experts\Advisors\ExpertMACD.mq5)
//+------------------------------------------------------------------+ //| ExpertMACD.mq5 | //| Copyright 2009-2017, MetaQuotes Software Corp. | //| http://www.mql5.com | //+------------------------------------------------------------------+ #property copyright "2009-2017, MetaQuotes Software Corp." #property link "http://www.mql5.com" #property version "1.00" //+------------------------------------------------------------------+
и прикрепление кода внизу сообщения в виде открытого редактируемого файла (формат *.mql5).
Вы не спешите. Делайте постепенно. Всё получится. Также хорошим тоном считается наличие шапки кода, например так (пример взят из \MQL5\Experts\Advisors\ExpertMACD.mq5)
и прикрепление кода внизу сообщения в виде открытого редактируемого файла (формат *.mql5).
Исправил
Только в этом ошибка?
https://www.mql5.com/ru/docs/series/copybuffer
- www.mql5.com
Только в этом ошибка?
Нет, конечно.
Вы передаете в процедуру Open хэндл индикатора. Хэндл - это положительное целое число. Разумеется, у Вас всегда выполняется первое условие. Для получения данных индикатора нужно выгрузить его данные в массив при помощи функции CopyBuffer, как написано выше.
int HandleOsMA = iOsMA(...
У индикатора OsMA возвращаемое значение имеет тип double.
Нужно исправить "int" на "double" в OnTick() и в Open().
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Вы принимаете политику сайта и условия использования