
Vadmin
Пользователь-
Постов
426 -
Зарегистрирован
-
Посещение
Весь контент Vadmin
-
Собрал все индюки ,которые за 2 года работы накопились,их вроде больше 100..Кому надо давайте мыло.
-
Описания нет,но можно будет по ходу дела их обсуждать на практике.В принципе они интуитивно понятны . Утром вырисовывается ценовой канал.По тактике МФ,смотрим направление на всех временых интервалах скользящих средних и открываемся ,в низ при пробитии синих кружков,в верх при пробитии красных.Ну и ещё какой нить осцилятор прицепить,для более уверенного входа.
-
//+------------------------------------------------------------------+ //| 3LineBreak.mq4 | //| Copyright © 2004, Poul_Trade_Forum | //| Aborigen | //| http://forex.kbpauk.ru/ | //+------------------------------------------------------------------+ #property copyright "Poul Trade Forum" #property link "http://forex.kbpauk.ru/" #property indicator_chart_window #property indicator_buffers 2 //---- input parameters extern int Lines_Break=3; //---- buffers double HighBuffer[]; double LowBuffer[]; double VALUE1,VALUE2,Swing=1,OLDSwing; //+------------------------------------------------------------------+ //| Custom indicator initialization function | //+------------------------------------------------------------------+ int init() { string short_name; //---- indicator line SetIndexStyle(0,DRAW_HISTOGRAM,EMPTY,2,Blue); SetIndexStyle(1,DRAW_HISTOGRAM,EMPTY,2,Red); SetIndexBuffer(0,HighBuffer); SetIndexBuffer(1,LowBuffer); SetIndexEmptyValue(0,0); SetIndexEmptyValue(1,0); //---- name for DataWindow and indicator subwindow label short_name="3LineBreak"; IndicatorShortName(short_name); SetIndexLabel(0,short_name); //---- SetIndexDrawBegin(0,10); SetIndexDrawBegin(1,10); //---- return(0); } //+------------------------------------------------------------------+ //| Custor indicator deinitialization function | //+------------------------------------------------------------------+ int deinit() { //---- TODO: add your code here //---- return(0); } //+------------------------------------------------------------------+ //| Custom indicator iteration function | //+------------------------------------------------------------------+ int start() { int counted_bars=IndicatorCounted(),i,shift; //---- TODO: add your code here if (counted_bars==0) counted_bars=Lines_Break+1; i=(Bars-counted_bars); for (shift=i; shift>=0;shift--) { OLDSwing=Swing; VALUE1=High[Highest(NULL,0,MODE_HIGH,Lines_Break,shift+1)]; VALUE2= Low[Lowest(NULL,0,MODE_LOW,Lines_Break,shift+1)]; if (OLDSwing==1 && Low[shift]<VALUE2) Swing=-1; if (OLDSwing==-1 && High[shift]>VALUE1 ) Swing=1; if (Swing==1) { HighBuffer[shift]=High[shift]; LowBuffer[shift]=Low[shift]; } if (Swing==-1) { LowBuffer[shift]=High[shift]; HighBuffer[shift]=Low[shift]; } //---- } return(0); } //+------------------------------------------------------------------+
-
//+------------------------------------------------------------------+ //| Custom Moving Average.mq4 | //| Copyright © 2005, MetaQuotes Software Corp. | //| http://www.metaquotes.net/ | //+------------------------------------------------------------------+ #property copyright "Copyright © 2005, MetaQuotes Software Corp." #property link "http://www.metaquotes.net/" #property indicator_chart_window #property indicator_buffers 1 #property indicator_color1 Red //---- indicator parameters extern int ExtDepth=12; extern int ExtDeviation=5; extern int ExtBackstep=3; //---- indicator buffers double ExtMapBuffer[]; double ExtMapBuffer2[]; //+------------------------------------------------------------------+ //| Custom indicator initialization function | //+------------------------------------------------------------------+ int init() { IndicatorBuffers(2); //---- drawing settings SetIndexStyle(0,DRAW_SECTION); //---- indicator buffers mapping SetIndexBuffer(0,ExtMapBuffer); SetIndexBuffer(1,ExtMapBuffer2); SetIndexEmptyValue(0,0.0); ArraySetAsSeries(ExtMapBuffer,true); ArraySetAsSeries(ExtMapBuffer2,true); //---- indicator short name IndicatorShortName("ZigZag("+ExtDepth+","+ExtDeviation+","+ExtBackstep+")"); //---- initialization done return(0); } //+------------------------------------------------------------------+ //| | //+------------------------------------------------------------------+ int start() { int shift, back,lasthighpos,lastlowpos; double val,res; double curlow,curhigh,lasthigh,lastlow; for(shift=Bars-ExtDepth; shift>=0; shift--) { val=Low[Lowest(NULL,0,MODE_LOW,ExtDepth,shift)]; if(val==lastlow) val=0.0; else { lastlow=val; if((Low[shift]-val)>(ExtDeviation*Point)) val=0.0; else { for(back=1; back<=ExtBackstep; back++) { res=ExtMapBuffer[shift+back]; if((res!=0)&&(res>val)) ExtMapBuffer[shift+back]=0.0; } } } ExtMapBuffer[shift]=val; //--- high val=High[Highest(NULL,0,MODE_HIGH,ExtDepth,shift)]; if(val==lasthigh) val=0.0; else { lasthigh=val; if((val-High[shift])>(ExtDeviation*Point)) val=0.0; else { for(back=1; back<=ExtBackstep; back++) { res=ExtMapBuffer2[shift+back]; if((res!=0)&&(res<val)) ExtMapBuffer2[shift+back]=0.0; } } } ExtMapBuffer2[shift]=val; } // final cutting lasthigh=-1; lasthighpos=-1; lastlow=-1; lastlowpos=-1; for(shift=Bars-ExtDepth; shift>=0; shift--) { curlow=ExtMapBuffer[shift]; curhigh=ExtMapBuffer2[shift]; // if((curlow==0.0)||(curhigh==0.0)) continue; //--- if(curhigh!=0) { if(lasthigh>0) { if(lasthigh<curhigh) ExtMapBuffer2[lasthighpos]=0; else ExtMapBuffer2[shift]=0; };//я //--- if(lasthigh<curhigh || lasthigh<0) { lasthigh=curhigh; lasthighpos=shift; };// я lastlow=-1; };//я //---- if(curlow!=0) { if(lastlow>0) { if(lastlow>curlow) ExtMapBuffer[lastlowpos]=0; else ExtMapBuffer[shift]=0; };//z //--- if((curlow<lastlow)||(lastlow<0)) { lastlow=curlow; lastlowpos=shift; };//z lasthigh=-1; };// } for(shift=Bars-1; shift>=0; shift--) { if(shift>=Bars-ExtDepth) ExtMapBuffer[shift]=0.0; else { res=ExtMapBuffer2[shift]; if(res!=0.0) ExtMapBuffer[shift]=res; //if(res>0.0) ExtMapBuffer[shift]=res; } } }
-
//+------------------------------------------------------------------+ //| ZZZ.mq4 | //+------------------------------------------------------------------+ #property copyright "Istoniz" #property link "http://www.kg/" #property indicator_chart_window #property indicator_buffers 1 #property indicator_color1 Aqua //---- input parameters extern int Length=6; //---- buffers double ExtMapBuffer1[]; //+------------------------------------------------------------------+ //| Custom indicator initialization function | //+------------------------------------------------------------------+ int init() { //---- indicators SetIndexStyle(0,DRAW_SECTION); SetIndexBuffer(0,ExtMapBuffer1); SetIndexEmptyValue(0,0.0); //---- return(0); } //+------------------------------------------------------------------+ //| Custor indicator deinitialization function | //+------------------------------------------------------------------+ int deinit() { //---- //---- return(0); } //+------------------------------------------------------------------+ //| Custom indicator iteration function | //+------------------------------------------------------------------+ int start() { int barn=300; /* //-------------------------- int counted_bars=IndicatorCounted(); limit,barn=Bars-Length; if (counted_bars<0) return(-1); if (counted_bars>0) counted_bars--; limit=Bars-counted_bars+4*Length; //Comment(" limit = ",limit, " Bars = ",Bars); //-------------------------- */ //-------------------------- int shift,Swing,Swing_n,i,zu,zd,uzl; double LL,HH,BH,BL,NH,NL; Swing_n=0; Swing=0; uzl=0; BH =High[barn]; BL=Low[barn]; zu=barn; zd=barn; for ( shift=barn; shift>0 ; shift--) { LL=10000000; HH=-100000000; for ( i=shift+Length; i>shift+1 ; i--) { if ( Low<LL ) LL=Low; if ( High>HH ) HH=High; } if ( Low[shift]<LL && High[shift]>HH ) { Swing=2; if ( Swing_n==1 ) zu=shift+1; if ( Swing_n==-1 ) zd=shift+1; } else { if ( Low[shift]<LL ) Swing=-1; if ( High[shift]>HH ) Swing=1; } if ( Swing!=Swing_n && Swing_n!=0 ) { if ( Swing==2 ) { Swing=-Swing_n; BH=High[shift]; BL=Low[shift]; } uzl=uzl+1; if ( Swing==1 ) { ExtMapBuffer1[zd]=BL; } if ( Swing==-1 ) { ExtMapBuffer1[zu]=BH; } BH=High[shift]; BL=Low[shift]; } if ( Swing==1 ) { if ( High[shift]>=BH ) { BH=High[shift]; zu=shift; } } if ( Swing==-1 ) { if ( Low[shift]<=BL ) { BL=Low[shift]; zd=shift; } } Swing_n=Swing; } //---- return(0); } //+------------------------------------------------------------------+
-
//+------------------------------------------------------------------+ //| PriceChannel_Stop_v1.mq4 | //| Copyright © 2005, TrendLaboratory Ltd. | //| E-mail: igorad2004@list.ru | //+------------------------------------------------------------------+ #property copyright "Copyright © 2005, TrendLaboratory Ltd." #property link "E-mail: igorad2004@list.ru" #property indicator_chart_window #property indicator_buffers 6 #property indicator_color1 Blue #property indicator_color2 Red #property indicator_color3 Blue #property indicator_color4 Red #property indicator_color5 Blue #property indicator_color6 Red //---- input parameters extern int ChannelPeriod=5; extern double Risk=0.10; extern int Signal=1; extern int Line=1; extern int Nbars=1000; //---- indicator buffers double UpTrendBuffer[]; double DownTrendBuffer[]; double UpTrendSignal[]; double DownTrendSignal[]; double UpTrendLine[]; double DownTrendLine[]; //+------------------------------------------------------------------+ //| Custom indicator initialization function | //+------------------------------------------------------------------+ int init() { string short_name; //---- indicator line SetIndexBuffer(0,UpTrendBuffer); SetIndexBuffer(1,DownTrendBuffer); SetIndexBuffer(2,UpTrendSignal); SetIndexBuffer(3,DownTrendSignal); SetIndexBuffer(4,UpTrendLine); SetIndexBuffer(5,DownTrendLine); SetIndexStyle(0,DRAW_ARROW); SetIndexStyle(1,DRAW_ARROW); SetIndexStyle(2,DRAW_ARROW); SetIndexStyle(3,DRAW_ARROW); SetIndexStyle(4,DRAW_LINE); SetIndexStyle(5,DRAW_LINE); SetIndexArrow(0,159); SetIndexArrow(1,159); SetIndexArrow(2,241); SetIndexArrow(3,242); //---- name for DataWindow and indicator subwindow label short_name="PriceChannel_Stop_v1("+ChannelPeriod+")"; IndicatorShortName(short_name); SetIndexLabel(0,"UpTrend Stop"); SetIndexLabel(1,"DownTrend Stop"); SetIndexLabel(2,"UpTrend Signal"); SetIndexLabel(3,"DownTrend Signal"); SetIndexLabel(4,"UpTrend Line"); SetIndexLabel(5,"DownTrend Line"); //---- SetIndexDrawBegin(0,ChannelPeriod); SetIndexDrawBegin(1,ChannelPeriod); SetIndexDrawBegin(2,ChannelPeriod); SetIndexDrawBegin(3,ChannelPeriod); SetIndexDrawBegin(4,ChannelPeriod); SetIndexDrawBegin(5,ChannelPeriod); //---- return(0); } //+------------------------------------------------------------------+ //| PriceChannel_Stop_v1 | //+------------------------------------------------------------------+ int start() { int i,shift,trend; double high, low, price; double smax[5000],smin[5000],bsmax[5000],bsmin[5000]; for (shift=Nbars-1;shift>=0;shift--) { UpTrendBuffer[shift]=EMPTY_VALUE; DownTrendBuffer[shift]=EMPTY_VALUE; UpTrendSignal[shift]=EMPTY_VALUE; DownTrendSignal[shift]=EMPTY_VALUE; UpTrendLine[shift]=EMPTY_VALUE; DownTrendLine[shift]=EMPTY_VALUE; } for (shift=Nbars-ChannelPeriod-1;shift>=0;shift--) { high=High[shift]; low=Low[shift]; i=shift-1+ChannelPeriod; while(i>=shift) { price=High; if(high<price) high=price; price=Low; if(low>price) low=price; i--; } smax[shift]=high; smin[shift]=low; bsmax[shift]=smax[shift]-(smax[shift]-smin[shift])*Risk; bsmin[shift]=smin[shift]+(smax[shift]-smin[shift])*Risk; if (Close[shift]>bsmax[shift+1]) trend=1; if (Close[shift]<bsmin[shift+1]) trend=-1; if(trend>0 && bsmin[shift]<bsmin[shift+1]) bsmin[shift]=bsmin[shift+1]; if(trend<0 && bsmax[shift]>bsmax[shift+1]) bsmax[shift]=bsmax[shift+1]; if (trend>0) { if (Signal>0 && UpTrendBuffer[shift+1]==-1.0) { UpTrendSignal[shift]=bsmin[shift]; if(Line>0) UpTrendLine[shift]=bsmin[shift]; } else { UpTrendBuffer[shift]=bsmin[shift]; if(Line>0) UpTrendLine[shift]=bsmin[shift]; UpTrendSignal[shift]=-1; } if (Signal==2) UpTrendBuffer[shift]=0; DownTrendBuffer[shift]=-1.0; DownTrendLine[shift]=EMPTY_VALUE; } if (trend<0) { if (Signal>0 && DownTrendBuffer[shift+1]==-1.0) { DownTrendSignal[shift]=bsmax[shift]; if(Line>0) DownTrendLine[shift]=bsmax[shift]; } else { DownTrendBuffer[shift]=bsmax[shift]; if(Line>0)DownTrendLine[shift]=bsmax[shift]; DownTrendSignal[shift]=-1; } if (Signal==2) DownTrendBuffer[shift]=0; UpTrendBuffer[shift]=-1.0; UpTrendLine[shift]=EMPTY_VALUE; } } /* Comment("UpTrendLine[] = ",UpTrendLine[0], " DownTrendLine[] = ",DownTrendLine[0],"n", "UpTrendSignal[] = ",UpTrendSignal[0], " DownTrendSignal[] = ",DownTrendSignal[0],"n", "UpTrendBuffer[] = ",UpTrendBuffer[0], " DownTrendBuffer[] = ",DownTrendBuffer[0],"n", "EMPTY_VALUE = ",EMPTY_VALUE);*/ return(0); } //+------------------------------------------------------------------+
-
//+------------------------------------------------------------------+ //| PChannel_m.mq4 | //+------------------------------------------------------------------+ #property indicator_chart_window //Назначаем окно для вывода графика (там, где бары) #property indicator_buffers 3 //Выделяем для индикатора три буфера #property indicator_color1 DodgerBlue //Назначаем цвет для отображения данных 1 буфера #property indicator_color2 DodgerBlue //Назначаем цвет для отображения данных 2 буфера #property indicator_color3 DodgerBlue //Назначаем цвет для отображения данных 3 буфера //---- input parameters //объявление вводимых внешних параметров extern int Range=14; //по умолчанию вводимое значение равно 14 //---- buffers double UpBuffer[]; //обявление переменной UpBuffer типа "массив с плавающей точкой" double DnBuffer[]; //обявление переменной DnBuffer типа "массив с плавающей точкой" double MdBuffer[]; //обявление переменной MdBuffer типа "массив с плавающей точкой" //+------------------------------------------------------------------+ //| Custom indicator initialization function | //+------------------------------------------------------------------+ int init() //инициализация переменных { string short_name; //обявление переменной short_name типа "строковый" //---- indicator line SetIndexStyle(0,DRAW_LINE,1,2); //установка стиля для первого значения индикатора SetIndexStyle(1,DRAW_LINE,1,2); //установка стиля для второго значения индикатора SetIndexStyle(2,DRAW_LINE,2); //установка стиля для третьего значения индикатора SetIndexBuffer(0,UpBuffer); //значение записываемое в 0 буфер равно переменной UpBuffer SetIndexBuffer(1,DnBuffer); //значение записываемое в 1 буфер равно переменной DnBuffer SetIndexBuffer(2,MdBuffer); //значение записываемое в 2 буфер равно переменной MdBuffer //---- name for DataWindow and indicator subwindow label short_name="PriceChannel("+Range+")"; //переменной short_name присваиваем строковое //значение равное выражению IndicatorShortName(short_name); //для отображения на графике присвоим индикатору краткое //наименование SetIndexLabel(0,"Up Channel"); //для отображения на графике присвоим метке отображающей //значения 0 буфера имя Up Channel SetIndexLabel(1,"Down Channel"); //для отображения на графике присвоим метке отображающей //значения 1 буфера имя Down Channel SetIndexLabel(2,"Middle Channel"); //для отображения на графике присвоим метке отображающей //значения 2 буфера имя Middle Channel //---- SetIndexDrawBegin(0,0); //установка начальной точки прорисовки для 0 буфера SetIndexDrawBegin(1,0); //установка начальной точки прорисовки для 1 буфера SetIndexDrawBegin(2,0); //установка начальной точки прорисовки для 2 буфера //---- return(0); //возврат из секции инициализации } //+------------------------------------------------------------------+ //| PriceChannel | //+------------------------------------------------------------------+ int start() //начало программы (расчета) { int i; //объявление целочисленной переменной i,k,sch //---- for(i=Bars-1;i>=0;i--) { UpBuffer=High[Highest(NULL,0,MODE_HIGH,Range,i)]; DnBuffer=Low[Lowest(NULL,0,MODE_LOW,Range,i)]; MdBuffer=(UpBuffer+DnBuffer)/2; } return(0); } //+------------------------------------------------------------------+
-
Полностью поддерживаю точку зрения.
-
Хочу поделиться своим наблюдением по календарю новостей. Обратите внимание http://www.alpari-idc.ru/ru/analytics/fa/d...ily/051014.html - отсутствут новость на сегодня в 11:00 Gmt Federal budget (September),а вот тут http://www.forexite.com/default.html она имеется. На сколько я понимаю,этот паказатель имеет сильное влияние на рынок..Почему же тогда Алпари не упоминает об этом?Забыли? :D