//+------------------------------------------------------------------+ //| EVWMA | //| 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 1 #property indicator_color1 DeepPink //---- extern int VolumeDivisor=1; extern int N=100; //---- double ScaledVol=0, VolDiff=0; double X[100], Y[100]; bool Violation=false; //---- buffers double EVWMA[]; //+------------------------------------------------------------------+ //| Custom indicator initialization function | //+------------------------------------------------------------------+ int init() { string short_name; //---- indicator line SetIndexStyle(0,DRAW_LINE,EMPTY,2,DeepPink); SetIndexBuffer(0,EVWMA); SetIndexEmptyValue(0,0); //---- name for DataWindow and indicator subwindow label short_name="EVWMA"; IndicatorShortName(short_name); SetIndexLabel(0,short_name); //---- SetIndexDrawBegin(0,1); //---- return(0); } //+------------------------------------------------------------------+ //| Custor indicator deinitialization function | //+------------------------------------------------------------------+ int deinit() { return(0); } //+------------------------------------------------------------------+ //| Custom indicator iteration function | //+------------------------------------------------------------------+ int start() { int counted_bars=IndicatorCounted(),i,shift,count; //---- if (counted_bars==0) {EVWMA[Bars]=Close[Bars]; counted_bars=1;} i=(Bars-counted_bars); for(shift=i; shift>=0;shift--) { ScaledVol=Volume[shift]/VolumeDivisor; VolDiff=N - ScaledVol; if(VolDiff<0 && Violation==false) Violation=true; if (Violation==true) EVWMA[shift]=EVWMA[shift+1]; else EVWMA[shift]=(VolDiff * EVWMA[shift+1] + ScaledVol * Close[shift])/N ; Violation=false; //---- } return(0); } //+------------------------------------------------------------------+
Sample
Analysis
Market Information Used:
Series array that contains close prices for each bar
Series array that contains tick volumes of each bar
Indicator Curves created:
Implements a curve of type DRAW_LINE
Indicators Used:
Custom Indicators Used:
Order Management characteristics:
Other Features: