Вопросы от начинающих MQL5 MT5 MetaTrader 5 - страница 866
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Хорошо, переходим на визуализацию мыслей :)
Белым цветом показал где делаем запрос, желтым время бара, которое мы должны получить.
Так понятней? Если нет, то прошу задавать уточняющие вопросы.
Вопрос:
В 10:30 надо получить номер бара периода Н1 с временем 23:45 находясь на графике М5
Я правильно понял?
Вопрос:
В 10:30 надо получить номер бара периода Н1 с временем 23:45 находясь на графике М5
Я правильно понял?
Мне нужно получить время 23:45 в данном случае (вообще же у меня не M5, а M1 текущий ТФ, но это не важно) - это время последнего бара текущего ТФ в структуре прошлого бара ТФ выше. Сдвиг на графике это 1 бар для H1, но может быть и другой сдвиг, допустим мне в 11 часов надо будет получить информацию, т.е. сдвиг будет 2.
Извините, пропустил Ваш ответ.
Вот этого я и не могу сделать!
Если я так запрошу, то получаю 10:00, а мне нужно получить время 23:49!
1. Определите сдвиг (бар), который нужен для старшего ТФ. - время между открытием и закрытием этого бара (насколько я вас понял) вы анализируете на предмет имеющихся внутри него баров из младшего ТФ.
2. Получите время его открытия
3. Прибавьте длительность ТФ в секундах для этого ТФ ко времени открытия. - т.е. так вы получите время закрытия бара старшего ТФ.
4. Отнимите длительность младшего ТФ (если М1, то 60 секунд) - это время открытия последнего бара младшего ТФ в структуре старшего ТФ. Найдите сдвиг этого бара на основе вычисленного времени. (Можете просто от времени закрытия бара старшего ТФ отнять 2-3 секунды и найти бар младего ТФ, к которому относится это время). Если запрос делать НЕ строгим, то как раз полУчите ближайший имеющийся бар слева (от запрошенного времени), если вдруг последнего бара на младшем ТФ нет.
1. Определите сдвиг (бар), который нужен для старшего ТФ. - время между открытием и закрытием этого бара (насколько я вас понял) вы анализируете на предмет имеющихся внутри него баров из младшего ТФ.
2. Получите время его открытия
3. Прибавьте длительность ТФ в секундах для этого ТФ ко времени открытия. - т.е. так вы получите время закрытия бара старшего ТФ.
4. Отнимите длительность младшего ТФ (если М1, то 60 секунд) - это время открытия последнего бара младшего ТФ в структуре старшего ТФ. Найдите сдвиг этого бара на основе вычисленного времени. (Можете просто от времени закрытия бара старшего ТФ отнять 2-3 секунды и найти бар младего ТФ, к которому относится это время). Если запрос делать НЕ строгим, то как раз полУчите ближайший имеющийся бар слева (от запрошенного времени), если вдруг последнего бара на младшем ТФ нет.
Не поверите, но час назад написал похожий алгоритм на бумаге! Только это как то муторно, думал, что есть более простой способ.
Только пункт 4 может не работать, у меня проверка наоборот на выход бара за пределы, т.е. если ситуация не стандартная, то придется циклом подбирать время пока не выйдем за диапазон.
хочу объявить массив структур - вроде проблем нет, до тех пор пока не увидел где-то, что структура может иметь конструктор...
как объявить массив структур имеющих конструктор? (как избавиться обойти эту конструкцию я знаю)
работает:
не работает, но хочу так:
Плохое решение. Вместо struct лучше использовать классы. Все то же самое, но можно работать через указатели
Писал в браузере, вроде не напортачил. Я убег на часик.
Мне нужно получить время 23:45 в данном случае (вообще же у меня не M5, а M1 текущий ТФ, но это не важно) - это время последнего бара текущего ТФ в структуре прошлого бара ТФ выше. Сдвиг на графике это 1 бар для H1, но может быть и другой сдвиг, допустим мне в 11 часов надо будет получить информацию, т.е. сдвиг будет 2.
Алексей, посчитай-ка сколько человек не могут понять что тебе надо.
Хоть как-то попытайся чётко сформулировать задачу. Что надо получить и в какое время на каком периоде графика по какому ТФ.