诚信为本
量力而为
当前位置:峰汇在线 > MetaTrader 4 > MT4指标 > 正文

趋势力量指标 TrendPower

TrendPower指标在副图创建曲线跟踪行情涨跌力度。

TrendPower指标图表效果:TrendPower指标

TrendPower指标源码:

//+------------------------------------------------------------------+
//|                                                   TrendPower.mq4 |
//|                       Copyright @2004, MetaQuotes Software Corp. |
//|                                       http://www.metaquotes.net/ |
//+------------------------------------------------------------------+
#property copyright "Copyright @2004, MetaQuotes Software Corp."
#property link      "http://www.125808047.com/"

#property indicator_separate_window
#property indicator_buffers 3
#property indicator_color1 LightSeaGreen
#property indicator_color2 YellowGreen
#property indicator_color3 Wheat

//---- input parameters
extern int ADXPeriod=14;
extern int SMAfast=5;
extern int SMAslow=55;
double LoTrigger=-0.125,HiTrigger=0.125;
int shift=0, MAType=1, cnt=0,  prevbars=0,loopbegin=0;
double sum=0, smconst=0, prev=0, weight=0, linear=0,IFish=0;
double  MAValue=0;
double signal=0,noise=0,efRatio=0,i=0, Fastest=0.6667, Slowest=0.0645;
bool first=true;
//---- buffers
double TrendBuffer[];
double LoBuffer[];
double HiBuffer[];
double PlusSdiBuffer[];
double MinusSdiBuffer[];
double TempBuffer[];
//+------------------------------------------------------------------+
//| Custom indicator initialization function                         |
//+------------------------------------------------------------------+
int init()
  {
//---- 3 additional buffers are used for counting.
   IndicatorBuffers(3);
//---- indicator buffers
   SetIndexBuffer(0,TrendBuffer);
   SetIndexBuffer(1,LoBuffer);
   SetIndexBuffer(2,HiBuffer);
    SetIndexStyle(0,DRAW_LINE,STYLE_SOLID,1,Red);
    IndicatorDigits(MarketInfo(Symbol(),MODE_DIGITS));
//---- name for DataWindow and indicator subwindow label
   IndicatorShortName("TrendPower("+SMAfast+")");
   
   SetIndexDrawBegin(0,TrendBuffer[shift]);
   SetIndexDrawBegin(1,ADXPeriod);
   SetIndexDrawBegin(2,ADXPeriod);
//----
   return(0);
  }
  
int deinit()
{
   Comment("www.125808047.com");
   return(0);
}  
  
//+------------------------------------------------------------------+
//| Average Directional Movement Index                               |
//+------------------------------------------------------------------+
int start()
  {
  // initial checkings
// check for additional bars loading or total reloading
if (Bars < prevbars )  first = true;
if (Bars-prevbars>1) first = true;
prevbars = Bars;
if (first) 
{
    // loopbegin prevent couning of counted bars exclude current
    loopbegin = Bars-SMAslow-1;
    if (loopbegin < 0) return(0);      // not enough bars for counting
    if (Period() > 70 ) 
    {
    LoTrigger=-0.15;
    HiTrigger=0.15;
    }
    else 
       {
    LoTrigger=-0.07;
    HiTrigger=0.07;
        };
    first = False;
   }
   
  loopbegin = loopbegin+1; 
 // Comment( loopbegin);            // current bar is to be recounted too
  for (shift = loopbegin; shift>= 0 ;shift--)
    {
    MAValue = 100 * (iMA(NULL,0,SMAfast,0,MODE_EMA,PRICE_CLOSE,shift)
     - iMA(NULL,0,SMAslow,0,MODE_EMA,PRICE_CLOSE,shift))
     *iATR(NULL,0,SMAfast,shift)
     /iMA(NULL,0,SMAslow,0,MODE_EMA,PRICE_CLOSE,shift)
     /iATR(NULL,0,SMAslow,shift);
    IFish=(MathExp(2*MAValue)-1)/(MathExp(2*MAValue)+1);
//    SetIndexValue(shift,IFish);
//Comment(IFish);
    TrendBuffer[shift]=IFish;
    loopbegin = loopbegin-1;     
    }
    return(0);
    }

打赏
版权所有转载请注明标题及链接:峰汇在线 » 趋势力量指标 TrendPower
上一篇:
下一篇:
分享到: 更多 (0)

如您觉得此文不错请扫码打赏!

支付宝扫一扫打赏

微信扫一扫打赏