При появлении нового фрактала, над новым баром появлялась стрелочка вверх или вниз.
Double Buy=iFractals(Symbol(),0,MODE_LOWER,2)
if (Buy>0)-- Под новым баром появляется стрелка вверх
Double Sell=IFractals(Symbol(),0,MODE_UPPER,2)
if (Sell>0) -- Над новым баром появляется стрелка вниз
помогите из этого сделать индикатор
Так всё таки "помогите" или "сделайте за меня"? Если помочь, то пожалуйста. Выкладывайте то, что у Вас получилось.
#property indicator_chart_window //---- количество индикаторных буфферов #property indicator_buffers 2 //---- цвета индикатора #property indicator_color1 Blue #property indicator_color2 Red //---- входные параметры индикатора string Symbol1= "EURUSD"; //---- индикаторные буфферы double buf_1[]; double buf_2[]; //+------------------ //+------------------------------------------------------------------+ //| Функция инициализации, запускается один раз | //+------------------------------------------------------------------+ int init() { //---- 2 индикаторных буффера использованы для счёта SetIndexBuffer(0, buf_1); SetIndexBuffer(1, buf_2); //---- Стиль исполнения графика //---- DRAW_ARROW - стрелки(символы) SetIndexStyle (0, DRAW_ARROW, STYLE_SOLID, 3); SetIndexStyle (1, DRAW_ARROW, STYLE_SOLID, 3); SetIndexArrow (0, 241); //вверх SetIndexArrow (1, 242); //---- установка значений индикатора, которые не будут видимы на графике SetIndexEmptyValue(0,0.0); SetIndexEmptyValue(1,0.0); //---- завершение инициализации return (0); } //+------------------------------------------------------------------+ //| Основная Функция, запускается на каждом тике | //+------------------------------------------------------------------+ int start() { //---- получение значений индикатора в переменные double Buy1=iFractals(Symbol1,240,MODE_LOWER,2); double Sell1=iFractals(Symbol1,240,MODE_UPPER,2); //---- проверка условий по вашим правилам и отрисовка стрелки if (Buy1>0) buf_1[2] = Low[2] - 10 * Point; if (Sell1>0) buf_2[2] = High[2] + 10 * Point; //---- завершение основной функции return (0); } //---- end
А зачем рисовать стрелку поверх фрактала? В вопросе же было
Это тогда так:
int start() { //---- получение значений индикатора в переменные double Buy1=iFractals(Symbol1,240,MODE_LOWER,2); double Sell1=iFractals(Symbol1,240,MODE_UPPER,2); //---- проверка условий по вашим правилам и отрисовка стрелки if (Buy1>0) buf_1[0] = Low[0] - 10 * Point; if (Sell1>0) buf_2[0] = High[0] + 10 * Point; //---- завершение основной функции return (0); }
А зачем рисовать стрелку поверх фрактала? В вопросе же было
Это тогда так:
А зачем рисовать стрелку поверх фрактала? В вопросе же было
Это тогда так:
А если добавить еще один график к условию например Symbol2="GBPUSD"
Buy2=iFractals(Symbol2,240,MODE_LOWER,2)
if (Buy1>0 && Buy2>0) buf_1[0] = Low[0] -10 * Point;
стрелки не показывает.
А если добавить еще один график к условию например Symbol2="GBPUSD"
Buy2=iFractals(Symbol2,240,MODE_LOWER,2)
if (Buy1>0 && Buy2>0) buf_1[0] = Low[0] -10 * Point;
стрелки не показывает.
Учловие if (Buy1>0 && Buy2>0) неверно, вот и не показывает. Когда будет совпадение, тогда и стрелки будут.
Совпадения были более 30 раз, и не разу не показались стрелки.Может я что не дописал.
Совпадения может и были, но в прошлом, а индикатор написан так, что рисовать стрелки будет только по факту появления совпадения прямо сейчас, на самых свежих данных.
Если надо раскидать стрелки по всему графику, а не только на самом
свежем баре, то надо писать индикатор с циклом, как во всех индикаторах и делается. Открыть любой в качестве примера и повторить.
Совпадения может и были, но в прошлом, а индикатор написан так, что рисовать стрелки будет только по факту появления совпадения прямо сейчас, на самых свежих данных.
Если надо раскидать стрелки по всему графику, а не только на самом
свежем баре, то надо писать индикатор с циклом, как во всех индикаторах и делается. Открыть любой в качестве примера и повторить.
А можно пример написания цикла.
А можно пример написания цикла.
- book.mql4.com
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Вы принимаете политику сайта и условия использования
При появлении нового фрактала, над новым баром появлялась стрелочка вверх или вниз.
Double Buy=iFractals(Symbol(),0,MODE_LOWER,2)
if (Buy>0)-- Под новым баром появляется стрелка вверх
Double Sell=IFractals(Symbol(),0,MODE_UPPER,2)
if (Sell>0) -- Над новым баром появляется стрелка вниз
помогите из этого сделать индикатор