Любой вопрос новичка, чтоб не захламлять форум. Профи, не проходите мимо. Без вас никуда - 6. - страница 977
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Смотрите в справке функции, а на форуме - примеры с их применением:
1. iHighest/iLowest
- чтобы не было путаницы, эти функции возвращают индекс, соответствующий максимальной/минимальной цене.
Затем надо поместить их значения в High[] / Low[]. На форуме найдете множество примеров.
2. iBarShift
Спасибо что откликнулись.
1_Да я пробовал использовать _iHighest, но она ведь возвращает индекс(номер бара) наибольшего найденного значения (смещение относительно "текущего бара"). А я имею ввиду, вот выполнилось у меня определенное условие на i -том баре, этот бар соответствует времени, допустим 10:00, вот тут и нужен мне максимум от _10:00 до конца дня _00:00. Если можете, хотя бы немного черканите, как? Как увязать iHighest High[] / Low[] про которые Вы говорили.
2_ iBarShift ведь возвращает индекс бара, в который попадает указанное время. Индекс одного бара. Я имел ввиду, нужно подсчитать сколько всего баров в истории(на графике), с определенным временем_12:00_13:00_14:00, и.т.д. iBars тоже не то.
Смотрите в справке функции, а на форуме - примеры с их применением:
1. iHighest/iLowest
- чтобы не было путаницы, эти функции возвращают индекс, соответствующий максимальной/минимальной цене.
Затем надо поместить их значения в High[] / Low[]. На форуме найдете множество примеров.
2. iBarShift
Спасибо что откликнулись.
1_Да я пробовал использовать _iHighest, но оно ведь возвращает индекс наибольшего найденного значения (смещение относительно "текущего бара"). А я имею ввиду, вот выполнилось у меня определенное условие на i -том баре, это бар соответствует времени, допустим 10:00, вот тут и нужен мне максимум от _10:00 до конца дня _00:00. Если можете, хотя бы немного черканите, как? Как увязать iHighest High[] / Low[] про которые Вы говорили.
2_ iBarShift ведь возвращает индекс бара, в который попадает указанное время. Индекс одного бара. Я имел ввиду, нужно подсчитать сколько всего баров в истории(на графике), с определенным временем_12:00_13:00_14:00, и.т.д. iBars тоже не то.
2. iBarShift возвращает количество баров до указанного времени.
Забудьте на время про то что что Вам надо запрограммировать, создайте небольшие примеры для каждого из случаев и на их основе изучите как это работает.
1. На рассматриваемом Вами отрезке iHighest вернет некоторое значение, которое можно сохранить в переменной, скажем 'Index_Max'. Чтобы получить значение цены Вам надо будет совершить простую операцию => High[Index_Max].
2. iBarShift возвращает количество баров до указанного времени.
Забудьте на время про то что что Вам надо запрограммировать, создайте небольшие примеры для каждого из случаев и на их основе изучите как это работает.
Может я что то не понимаю, но из ...Справочник MQL4 / Доступ к таймсериям и индикаторам / iBarShift
" iBarShift - Поиск бара по времени. Функция возвращает индекс бара, в который попадает указанное время.
Возвращаемое значение - Индекс бара, в который попадает указанное время. Если для указанного времени бар отсутствует ("дыра" в истории), то функция возвращает -1 или индекс ближайшего бара. " ,
а не количество баров до указанного времени.
Да, примеры уже использую, но все не то. Разные функции пробовал. Попробую Ваш вариант. А как быть все-таки с подсчетом баров-времени? Как их со считать?
Спасибо!
Может я что то не понимаю, но из ...Справочник MQL4 / Доступ к таймсериям и индикаторам / iBarShift
" iBarShift - Поиск бара по времени. Функция возвращает индекс бара, в который попадает указанное время.
Возвращаемое значение - Индекс бара, в который попадает указанное время. Если для указанного времени бар отсутствует ("дыра" в истории), то функция возвращает -1 или индекс ближайшего бара. " ,
а не количество баров до указанного времени.
Да, примеры уже использую, но все не то. Разные функции пробовал. Попробую Ваш вариант. А как быть все-таки с подсчетом баров-времени? Как их со считать?
Спасибо!
12:00 и\или 15:00 бывает только 1 раз в сутки. Соответственно если определить количество или номер последнего бара периода PERIOD_D1 то это и будет количество баров с временем 12:00 или любым другим временем.
Может на первый взгляд это не совсем понятно, но алгоритм примерно такой:
Определяем время старшего бара текущего периода с помощью Bars. datetime time = Time[Bars-1];
Определяем номер бара iBarShift(_Symbol, PERIOD_D1, time, false);
может быть
Как определить символ текущего активного графика? Т.е. графика, закладка/окно которого активны в данный момент, а не того, куда прикреплен индикатор/эксперт. Т.е. нужно чтобы советник, работающий на каком то графике знал символ того графика, который в данный момент выбрал юзер.
AlexeyVik:
Может на первый взгляд это не совсем понятно, но алгоритм примерно такой:
Определяем время старшего бара текущего периода с помощью Bars. datetime time = Time[Bars-1];
Определяем номер бара iBarShift(_Symbol, PERIOD_D1, time, false);
Алгоритм понятен, разобрался. Сделал на примере, все работает.
Спасибо огромное!
А, с первым вопросом(про максимумы), не объясните по-подробнее, как его реализовать? Если можно с небольшим алгоритмом. Уж больно хорошо у Вас получается:)