Как можно эффективно определить максимальное и минимальное значение цены, начиная с определенного времени?
Мне необходимо определить цену открытия символов, на указанное время, а потом определить максимальное и минимальное значение с того времени по настоящее.
Проблема в том, что мне нужно получать и обновлять эти три значения почти каждую секунду, для нескольких символов.
Можете посоветовать или набросать пример как это можно реализовать? Потому что сейчас я пытаюсь запрашивать значения с помощью CopyRates с указанной даты по настоящее снова и снова, и потом каждый раз вычисляю максимальное и минимальное значение, перебирая все данные, но это очень медленно работает.
Какое время, это часы минуты в сутках, или отступ от текущего момента?
Какое время, это часы минуты в сутках, или отступ от текущего момента?
Дата, часы и минуты.
Индикатор. Как пересекли временную точку, фиксируем High и Low, далее, по мере новых баров и цен расширяем диапазон.
- 2010.10.04
- Konstantin Gruzdev
- www.mql5.com
Индикатор. Как пересекли временную точку, фиксируем High и Low, далее, по мере новых баров и цен расширяем диапазон.
Дело в том, что на график ничего выводить не нужно, и привязывать это к барам на индикаторе тем более.
Можно конечно попробовать сделать на OnInit чтобы запрашивал все нужные массивы данных через CopyHigh / CopyLow, выбирал минимум и максимум, записывал эти две точки в память. А потом на каждый тик, сравнивал значения. А потом цену открытия на определенную дату запрашивал бы отдельно каждый раз через CopyOpen.
Да, но дело в том что по мимо разных символов, необходимо запрашивать и разные временные отрезки, поэтому боюсь что это тоже будет не очень эффективно.
Или же можно как нибудь по другому?
Дело в том, что на график ничего выводить не нужно, и привязывать это к барам на индикаторе тем более.
Можно конечно попробовать сделать на OnInit чтобы запрашивал все нужные массивы данных через CopyHigh / CopyLow, выбирал минимум и максимум, записывал эти две точки в память. А потом на каждый тик, сравнивал значения. А потом цену открытия на определенную дату запрашивал бы отдельно каждый раз через CopyOpen.
Да, но дело в том что по мимо разных символов, необходимо запрашивать и разные временные отрезки, поэтому боюсь что это тоже будет не очень эффективно.
Или же можно как нибудь по другому?
1. Дело в том, что на график ничего выводить не нужно, и привязывать это к барам на индикаторе тем более.
2. Можно конечно попробовать сделать на OnInit чтобы запрашивал все нужные массивы данных через CopyHigh / CopyLow, выбирал минимум и максимум, записывал эти две точки в память. А потом на каждый тик, сравнивал значения. А потом цену открытия на определенную дату запрашивал бы отдельно каждый раз через CopyOpen.
3. Да, но дело в том что по мимо разных символов, необходимо запрашивать и разные временные отрезки, поэтому боюсь что это тоже будет не очень эффективно.
4. Или же можно как нибудь по другому?
1. Вам никто и не предлагает прикрплять этот индикатор на график и смотреть на него. В чем проблема привязки к барам, у вас время задано с точностью до секунды, минутки не подойдут?
2. ...и засыпаться на первом шухере.
3. Сколько надо, столько и вызывается индикаторов с разными параметрами.
4. Как-нибудь по другому всегда можно, но вы спрашивали про эффективный метод.
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Вы принимаете политику сайта и условия использования
Мне необходимо определить цену открытия символов, на указанное время, а потом определить максимальное и минимальное значение с того времени по настоящее.
Проблема в том, что мне нужно получать и обновлять эти три значения почти каждую секунду, для нескольких символов.
Можете посоветовать или набросать пример как это можно реализовать? Потому что сейчас я пытаюсь запрашивать значения с помощью CopyRates с указанной даты по настоящее снова и снова, и потом каждый раз вычисляю максимальное и минимальное значение, перебирая все данные, но это очень медленно работает.