[MT4指标]Average_Change
//+------------------------------------------------------------------+
//| This has been coded by MT-Coder |
//| |
//| Email: [email protected] |
//| Website: mt-coder.110mb.com |
//| |
//| For a price I can code for you any strategy you have in mind |
//| into EA, I can code any indicator you have in mind |
//| |
//| Don't hesitate to contact me at [email protected] |
//+------------------------------------------------------------------+
//+------------------------------------------------------------------+
//| This is the basic version of the Average Change indicator |
//| This indicator reflects the effect of the latest |
//| price changes. |
//| Try to get some trading signals out of that! Enjoy! |
//+------------------------------------------------------------------+
#property copyright "Copyright ? 2009, MT-Coder."
#property link "http://mt-coder.110mb.com/"
#property indicator_separate_window
#property indicator_buffers 1
#property indicator_color1 White
//---- input parameters
extern int ACPeriod=15;
//---- buffers
double MainBuffer;
double TempBuffer;
//+------------------------------------------------------------------+
//| Custom indicator initialization function |
//+------------------------------------------------------------------+
int init()
{
string short_name;
//---- 1 additional buffer used for counting.
IndicatorBuffers(2);
IndicatorDigits(Digits);
//---- indicator line
SetIndexStyle(0,DRAW_LINE);
SetIndexBuffer(0,MainBuffer);
SetIndexBuffer(1,TempBuffer);
//---- name for DataWindow and indicator subwindow label
short_name="Average Change("+ACPeriod+") - by [email protected]";
IndicatorShortName(short_name);
SetIndexLabel(0,"Average Change");
//----
SetIndexDrawBegin(0,ACPeriod);
//----
return(0);
}
//+------------------------------------------------------------------+
//| Four legs |
//+------------------------------------------------------------------+
int start()
{
int i,counted_bars=IndicatorCounted();
//----
if(Bars<=ACPeriod) return(0);
//----
int limit=Bars-counted_bars;
if(counted_bars>0) limit++;
for(i=0; i=ACPeriod) i=Bars-counted_bars-1;
while(i>=0)
{
MainBuffer=MathPow(Open,5)/MathPow(TempBuffer,5);
i--;
}
return(0);
}
//+------------------------------------------------------------------+
Average_Change.jpg
