Привет, я пытаюсь автоматизировать мой EA. В это время цена покупки и продажи навязывается день ото дня. Вместо этого я бы хотел, чтобы EA идентифицировал максимальные и минимальные цены, которые создаются каждый день в определенный промежуток времени (например, между 5 и 6 утра). Все это должно выполняться автоматически каждый день.
Я пытался использовать функции Highest, High и iBarsShift, но безуспешно.
Кто-нибудь может мне помочь?
Большое вам спасибо!
- 100 пунктов
- Открыть противоположный ордер
- Помощь в кодировании
Danieloto:
Привет, я пытаюсь автоматизировать мой EA. В это время цена покупки и продажи навязывается день ото дня. Вместо этого я бы хотел, чтобы EA идентифицировал максимальные и минимальные цены, которые создаются каждый день в определенный промежуток времени (например, между 5 и 6 утра). Все это должно выполняться автоматически каждый день.
Я пытался использовать функции Highest, High и iBarsShift, но безуспешно.
Кто-нибудь может мне помочь?
Большое вам спасибо!
Ищите код по запросу "Пробой утреннего флета", вот там и будет кусок кода, который вам нужен)

MQL5 Code Base
- www.mql5.com
Советник-утилита: в пятницу рисует закрашенный прямоугольник - как бы предупреждая: "Осторожно" Впереди выходные!" Советник на стандартном индикаторе iAO (Awesome Oscillator, AO) и пользовательском ZigZag on Fractals. Оба индикатора берутся на разных таймфреймах. Торговая система случайным образом выбирающая сигналы от одного из четырёх...
Danieloto:
Привет Vitaly, но я должен сделать массив или цикл с for?
Спасибо за помощь !!
//+----------------------------------------------------------------------------+ //| i-AnyRange.mq4 | //| Ким Игорь В. aka KimIV | //| http://www.kimiv.ru | //| | //| 17.11.2006 Индикатор диапазонов произвольных временных интервалов. | //+----------------------------------------------------------------------------+ #property copyright "Ким Игорь В. aka KimIV" #property link "http://www.kimiv.ru" #property indicator_chart_window #property indicator_buffers 2 #property indicator_color1 LightBlue #property indicator_color2 Salmon #property indicator_width1 2 #property indicator_width2 2 //------- Внешние параметры индикатора ----------------------------------------- extern string Time1 = "02:00"; // Временная точка 1 extern string Time2 = "07:00"; // Временная точка 2 extern int nDays = 2; // Количество дней обсчёта (0-все) //------- Глобальные переменные ------------------------------------------------ //------- Поключение внешних модулей ------------------------------------------- //------- Буферы индикатора ---------------------------------------------------- double dBuf0[], dBuf1[]; //+----------------------------------------------------------------------------+ //| Custom indicator initialization function | //+----------------------------------------------------------------------------+ void init() { SetIndexBuffer (0, dBuf0); SetIndexEmptyValue(0, EMPTY_VALUE); SetIndexStyle (0, DRAW_LINE); SetIndexBuffer (1, dBuf1); SetIndexEmptyValue(1, EMPTY_VALUE); SetIndexStyle (1, DRAW_LINE); } //+----------------------------------------------------------------------------+ //| Custom indicator deinitialization function | //+----------------------------------------------------------------------------+ void deinit() { Comment(""); } //+----------------------------------------------------------------------------+ //| Custom indicator iteration function | //+----------------------------------------------------------------------------+ void start() { double up, dn; int i, LoopBegin, kd=0, nb1, nb2, nd=0; string sdt; if (Period()>PERIOD_H1) { Comment("Индикатору i-AnyRange нужен ТФ младше H4!"); return; } else Comment(""); if (nDays==0) LoopBegin=Bars-10; else LoopBegin=nDays*1440/Period(); LoopBegin=MathMin(Bars-10, LoopBegin); for (i=0; i<LoopBegin; i++) { if (nd!=TimeDay(Time[i])) { nd=TimeDay(Time[i]); kd++; if (kd>nDays && nDays>0) return; sdt=TimeToStr(Time[i], TIME_DATE); nb1=iBarShift(NULL, 0, StrToTime(sdt+" "+Time1)); nb2=iBarShift(NULL, 0, StrToTime(sdt+" "+Time2)); if (nb1>nb2+1) { up=High[iHighest(NULL, 0, MODE_HIGH, nb1-nb2, nb2+1)]; dn=Low [iLowest (NULL, 0, MODE_LOW , nb1-nb2, nb2+1)]; } if (nb2>nb1+1) { up=High[iHighest(NULL, 0, MODE_HIGH, nb2-nb1, nb1+1)]; dn=Low [iLowest (NULL, 0, MODE_LOW , nb2-nb1, nb1+1)]; } } if ((nb1>=i && i>nb2) || (nb2>=i && i>nb1)) { dBuf0[i]=up; dBuf1[i]=dn; } else { dBuf0[i]=EMPTY_VALUE; dBuf1[i]=EMPTY_VALUE; } } } //+----------------------------------------------------------------------------+
Alekseu Fedotov:
Большое вам спасибо Alekseu!! Вы были очень добры !! Можно ли с помощью этого цикла автоматически определять дневные максимумы и минимумы в течение определенного периода времени?

Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь