Волатильность попробуйте по этому индикатору ATR Darma сделать, вместо Silence может картинка по лучше будет......
//+------------------------------------------------------------------+ //| ATR Darma.mq4 | //+------------------------------------------------------------------+ //---- indicator settings #property indicator_separate_window #property indicator_buffers 2 #property indicator_color1 Purple #property indicator_color2 LightSeaGreen #property indicator_level1 1 //---- indicator parameters extern int ATR_Period = 20; extern int SignalLine_Period = 10; extern int SignalLineShift = 0; extern int SignalLineMa_Method = 0; // 0 SMA , 1 EMA , 2 SMMA , 3 LWMA extern int ShowBars = 500; //---- indicator buffers double ATR_Buffer[]; double MA_ATR_Buffer[]; int draw_begin0; //+------------------------------------------------------------------+ //| Custom indicator initialization function | //+------------------------------------------------------------------+ int init() { //---- indicator buffers mapping //---- drawing settings draw_begin0 = ATR_Period; SetIndexEmptyValue(1,0.0000); SetIndexStyle(1,DRAW_LINE,STYLE_SOLID,1); SetIndexBuffer(1,ATR_Buffer); SetIndexLabel(1,"ATR"); SetIndexDrawBegin(1,draw_begin0); SetIndexEmptyValue(0,0.0000); SetIndexStyle(0,DRAW_LINE,STYLE_SOLID,1); SetIndexBuffer(0,MA_ATR_Buffer); SetIndexLabel(0," ("+SignalLine_Period+") Period MA of ATR"); SetIndexDrawBegin(0,draw_begin0); //---- name for DataWindow and indicator subwindow label IndicatorShortName("ATR Darma"); //---- initialization done return(0); } //+------------------------------------------------------------------+ //| | //+------------------------------------------------------------------+ int start() { int limit,i,shift; int counted_bars=IndicatorCounted(); //---- check for possible errors if(counted_bars<1) for(i=1;i<=draw_begin0;i++) MA_ATR_Buffer[Bars-i]=0; ATR_Buffer[Bars-i]=0; //---- last counted bar will be recounted if(counted_bars>0) counted_bars--; //limit=Bars-counted_bars; limit = ShowBars; if (ShowBars >= Bars) limit = Bars - 1; //----------------------------------------------------------------------------------------------------------------- //---- ATR_Buffer for(i=0; i<limit; i++) ATR_Buffer[i] = iATR(Symbol(),0,ATR_Period,i); //---- MA_ATR_Buffer for(i=0; i<limit; i++) MA_ATR_Buffer[i]=iMAOnArray(ATR_Buffer,0,SignalLine_Period,SignalLineShift,SignalLineMa_Method,i); //----------------------------------------------------------------------------------------------------------------- //---- done return(0); }
+10 отличный комплект!!!
+10.Отличная работа - и с точки зрения трейдерства, и с точки зрения программинга.
Да, кстати, а что, если использовать такой индикатор волатильности?
//+X================================================================X+ #property indicator_separate_window #property indicator_buffers 1 #property indicator_color1 DodgerBlue #property indicator_width1 2 //---- input parameters extern int AtrPeriod=20; //---- buffers double AtrBuffer[]; double TempBuffer[]; //+------------------------------------------------------------------+ //| Custom indicator initialization function | //+------------------------------------------------------------------+ int init() { string short_name; //---- 1 additional buffer used for counting. IndicatorBuffers(2); //---- indicator line SetIndexStyle(0,DRAW_LINE); SetIndexBuffer(0,AtrBuffer); SetIndexBuffer(1,TempBuffer); //---- name for DataWindow and indicator subwindow label short_name="N_turtles("+AtrPeriod+")"; IndicatorShortName(short_name); SetIndexLabel(0,short_name); //---- SetIndexDrawBegin(0,AtrPeriod); //---- return(0); } //+------------------------------------------------------------------+ int start() { int i,counted_bars=IndicatorCounted(); //---- if(Bars<=AtrPeriod) return(0); //---- initial zero if(counted_bars<1) for(i=1;i<=AtrPeriod;i++) AtrBuffer[Bars-i]=0.0; //---- i=Bars-counted_bars-1; while(i>=0) { double high=High[i]; double low =Low[i]; if(i==Bars-1) { TempBuffer[i]=high-low; AtrBuffer[i]=high-low; } else { double prevclose=Close[i+1]; TempBuffer[i]=MathMax(MathMax((high-prevclose),(prevclose-low)),(high-low)); } i--; } //---- if(counted_bars>0) counted_bars--; int limit=Bars-counted_bars; for(i=limit-1; i>=0; i--) AtrBuffer[i]=((AtrPeriod-1)*AtrBuffer[i+1]+TempBuffer[i])/AtrPeriod; //---- return(0); } //+------------------------------------------------------------------+
ЯЯ начинающий пользователь. Не могу установить. Подскажите, что, куда и как устанавлиается, если не тяжело. Заранее спасибо.
А почему ошибку выдает??? 2009.08.20 11:20 iK_ex_LinReg_v1 EURUSD,M15: invalid lots amount for OrderSend function
Savl:
А почему ошибку выдает??? 2009.08.20 11:20 iK_ex_LinReg_v1 EURUSD,M15: invalid lots amount for OrderSend function
А почему ошибку выдает??? 2009.08.20 11:20 iK_ex_LinReg_v1 EURUSD,M15: invalid lots amount for OrderSend function
так отож ...
прикрепил советник, прикрепил индикатор к инструменту, а он что-то не рисуется.
прикрепил советник, прикрепил индикатор к инструменту, а он что-то не рисуется.
Я так понимаю, прикрепил на демо счете или на реале, но не тестере? Если да, то рисовать будет тогда, когда будет найден флет. А это зависит от заданного параметра ширины канала (MaxSL). Он задается в пунктах. Поэтому внимательней: для 4-х знаков это может быть, например, 50, а для 5-ти - 500
ikatsko:
Я так понимаю, прикрепил на демо счете или на реале, но не тестере? Если да, то рисовать будет тогда, когда будет найден флет. А это зависит от заданного параметра ширины канала (MaxSL). Он задается в пунктах. Поэтому внимательней: для 4-х знаков это может быть, например, 50, а для 5-ти - 500
благодарю... а ействительно... ошибка 4051 - достала... как бороться, уважаемый
прикрепил советник, прикрепил индикатор к инструменту, а он что-то не рисуется.
Я так понимаю, прикрепил на демо счете или на реале, но не тестере? Если да, то рисовать будет тогда, когда будет найден флет. А это зависит от заданного параметра ширины канала (MaxSL). Он задается в пунктах. Поэтому внимательней: для 4-х знаков это может быть, например, 50, а для 5-ти - 500
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Индикатор утреннего флета + советник + оптимизатор:
Во время утреннего флета индикатор строит канал по принципу линейной регрессии.
Советник имеет функцию реверсного входа в рынок в течение дня после завершения первой сделки.
Оптимизатор позволяет выбрать лучший вариант параметров после прогона на тестере.
Картинки на основание оптимизированных параметров с 01.07.2009 по 1.07.2010:
Author: Ivan Katsko