Вопросы от начинающих MQL5 MT5 MetaTrader 5 - страница 375
![MQL5 - Язык торговых стратегий для клиентского терминала MetaTrader 5](https://c.mql5.com/i/registerlandings/logo-2.png)
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
1. Определяете время открытия дневной свечи;
2. Определяете количество баров num на нужном Вам ТФ (если хотите проверять экстремум дня каждые 15 минут - М15 баров);
3. Получаете данные high за num баров;
3. В цикле сравниваете все значения high баров с переменной dayHigh за нужную дневную свечу (изначально dayHigh = 0);
4. Если high > dayHigh - запоминаете новое значение в переменную dayHigh;
Это понятно, спасибо. Но пока это сложно для меня... а точней пункт 2, это надо сделать для каждого ТФ расчет и загнать в диапазоны для поиска количества свечей?
А нельзя просто узнать дату текущего ТФ и перебрать все значения за дату, без определения количества прошедших свечей?
Это понятно, спасибо. Но пока это сложно для меня... а точней пункт 2, это надо сделать для каждого ТФ расчет и загнать в диапазоны для поиска количества свечей?
А нельзя просто узнать дату текущего ТФ и перебрать все значения за дату, без определения количества прошедших свечей?
Количество баров внутри дня определить просто. Например для 15 минутного графика. Количество минут в одних сутках делите на 15 (1440 /15 =96 баров или по другому PERIOD_D1/PERIOD_M15 = 96)
Количество баров внутри дня определить просто. Например для 15 минутного графика. Количество минут в одних сутках делите на 15 (1440 /15 =96 баров или по другому PERIOD_D1/PERIOD_M15 = 96)
Да это понятно, математически то, а вот как функциями - в этом то вопрос! Допустим через Time я получу текущее время, а дальше как
Мне вот видится сделать счетчик для каждого ТФ, при новом баре , который будет обнулятся при наступлении новых суток, и обнулять максимум за сутки, а до этого делать сравнение каждого бара, но как это запрограммировать?
Не стоит так делать! Никогда нельзя принимать как факт, что количество баров в каждый конкретный день по ТФ будет одинаково!
Да, например в пятницу может быть закрытие раньше...
Значит надо определить день, и брать массив для поиска максимума за день без учета количества свечь, как это сделать?
Да это понятно, математически то, а вот как функциями - в этом то вопрос! Допустим через Time я получу текущее время, а дальше как
Мне вот видится сделать счетчик для каждого ТФ, при новом баре , который будет обнулятся при наступлении новых суток, и обнулять максимум за сутки, а до этого делать сравнение каждого бара, но как это запрограммировать?
Примерно так можно найти первый бар соответствующий началу суток.
Примерно так можно найти первый бар соответствующий началу суток.
К примеру получится такой алгоритм.
Нашли первый бар - на тот момент времени когда он сформировался High этого бара будет максимумом дня. Далее берем следующий бар и проверяем уже его максимум если он выше предыдущего , значит это новый максимум дня. И так далее до последнего бара дня.