- От теории к практике
- В режиме тестирования не работают некоторые ф-и?
- Как узнать цену в конкретный момент времени?
Такое было бы возможно, если бы МТ4 сохранял тиковую историю да еще и со спредами. Но этого, к сожалению, нет. Во-первых, максимальная детализация истории - минута с ценами OHLC, а, во-вторых, это цены только Bid. Цена Ask вообще никак не запоминается. Можно получить только последнюю известную цену Ask.
Для получения цены открытия какой-либо свечи по времени, следует использовать следующий алгоритм:
int barIndex = iBarShift(NULL, 0, time); // Определение индекса бара, соответствующего времени time double openPrice = iOpen(NULL, 0, barIndex); // Определение Bid цены открытия бара barIndex
Такое было бы возможно, если бы МТ4 сохранял тиковую историю да еще и со спредами. Но этого, к сожалению, нет. Во-первых, максимальная детализация истории - минута с ценами OHLC, а, во-вторых, это цены только Bid. Цена Ask вообще никак не запоминается. Можно получить только последнюю известную цену Ask.
Для получения цены открытия какой-либо свечи по времени, следует использовать следующий алгоритм:
то есть узнать цену внутри бара не представляется возможным? ( H1 к примеру и надо узнать цену 25 минут назад напиример) Графики же он рисует как то(((
то есть узнать цену внутри бара не представляется возможным? ( H1 к примеру и надо узнать цену 25 минут назад напиример)
Никак, если нет данных младшего таймфрейма. Но даже самый младший таймфрейм - М1. То есть для Н1 существует детализация движения цены (М30, М15, М5, М1), а вот для М1 - нет, только цены OHLC.
Графики же он рисует как то(((
Никак, если нет данных младшего таймфрейма. Но даже самый младший таймфрейм - М1. То есть для Н1 существует детализация движения цены (М30, М15, М5, М1), а вот для М1 - нет, только цены OHLC.
Только OHLC, больше ничего терминал не отображает.ясно, спасибо
Никак, если нет данных младшего таймфрейма. Но даже самый младший таймфрейм - М1. То есть для Н1 существует детализация движения цены (М30, М15, М5, М1), а вот для М1 - нет, только цены OHLC.
Только OHLC, больше ничего терминал не отображает.а как то сохранить реально поступающие цены в файл или куда нибудь, а потом их оттуда дернуть?
а как то сохранить реально поступающие цены в файл или куда нибудь, а потом их оттуда дернуть?
Такое было бы возможно, если бы МТ4 сохранял тиковую историю да еще и со спредами. Но этого, к сожалению, нет. Во-первых, максимальная детализация истории - минута с ценами OHLC, а, во-вторых, это цены только Bid. Цена Ask вообще никак не запоминается. Можно получить только последнюю известную цену Ask.
Для МТ5 уже сделали такую функцию, надеюсь и до МТ4 руки дойдут.
В терминале есть внутренний буфер тиков, размер = 2000 тиков,
вот в пятерке к нему и дали программный доступ.
int CopyTicks( string symbol_name, // имя символа MqlTick& ticks_array[], // массив для приема тиков uint flags=COPY_TICKS_ALL, // флаг, определяющий тип получаемых тиков ulong from=0, // дата, начиная с которой запрашиваются тики uint count=0 // количество последних тиков, которые необходимо получить );
а как то сохранить реально поступающие цены в файл или куда нибудь, а потом их оттуда дернуть?
Scriptong:
Посмотрите на мои работы в CodeBase - там уже давно есть решение всех этих проблем.
если не сложно, дайте ссылочку
DaniilAG:
если не сложно, дайте ссылочку
![MQL5 - Язык торговых стратегий для клиентского терминала MetaTrader 5](https://c.mql5.com/i/registerlandings/logo-2.png)
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Вы принимаете политику сайта и условия использования