//-------------------------------------------------------------------- // linelevel.mq4 // Предназначен для использования в качестве примера в учебнике MQL4. //--------------------------------------------------------------- 1 -- #property indicator_separate_window // Индик. рисуется в отдельн. окне #property indicator_buffers 1 // Количество буферов #property indicator_color1 Red // Цвет линии double Buf_0[]; // Открытие индикаторного массива //--------------------------------------------------------------- 2 -- int init() // Специальная функция init() { SetIndexBuffer(0,Buf_0); // Назначение массива буферу SetIndexStyle (0,DRAW_LINE,STYLE_SOLID,2);// Стиль линии SetIndexLabel (0,"Разница High и Low"); SetLevelValue (0, 0.0010); // Задан уровень горизонт. линии SetLevelValue (1,-0.0010); // Задан ещё один уровень return; // Выход из спец. ф-ии init() } //--------------------------------------------------------------- 3 -- int start() // Специальная функция start() { int i, // Индекс бара Counted_bars; // Количество просчитанных баров Counted_bars=IndicatorCounted(); // Количество просчитанных баров i=Bars-Counted_bars-1; // Индекс первого непосчитанного while(i>=0) // Цикл по непосчитанным барам { Buf_0[i]=High[i]-Low[i]; // Значение 0 буфера на i-ом баре if(Open[i]>Close[i]) // Если свеча чёрная.. Buf_0[i]=-Buf_0[i]; // .. то реверс значения i--; // Расчёт индекса следующего бара } return; // Выход из спец. ф-ии start() } //--------------------------------------------------------------- 4 --