MFI即為資金流量指數(shù),對于該指標的構(gòu)筑和解釋與相對強弱指標相似,區(qū)別只是在于:成交量對于資金流量指數(shù)是重要的。代碼及解讀如下:
Params
Numeric Length(14);//聲明數(shù)值參數(shù)Length,初值14.//
Numeric SmoothLength(6);//聲明數(shù)值參數(shù)SmoothLength,初值6.//
Numeric OverSold(20) ;//聲明數(shù)值參數(shù)OverSold,初值20.//
Numeric OverBought(80) ;//聲明數(shù)值參數(shù)OverBought,初值80.//
Vars
NumericSeries TypicalPrice;//聲明數(shù)值序列變量TypicalPrice。//
NumericSeries MoneyFlow;//聲明數(shù)值序列變量MoneyFlow。//
NumericSeries PMoneyFlow;//聲明數(shù)值序列變量PMoneyFlow。//
Numeric PType;//聲明數(shù)值變量PType。//
Numeric SumMoneyFlow; //聲明數(shù)值變量SumMoneyFlow。//
NumericSeries MFIValue;//聲明數(shù)值序列變量MFIValue。//
Numeric SumPMoneyFlow;//聲明數(shù)值變量SumPMoneyFlow。//
Numeric MFIAvg;//聲明數(shù)值變量MFIAvg。//
Begin
TypicalPrice = (High+Low+Close)/3;//開盤價、最高與最低三個價格的均值。//
PType = IIF(TypicalPrice >= TypicalPrice[1], 1, 0);//當前的k線的均值大于等于前一k線的均值的,則取值為1,否則取值0.//
MoneyFlow = Vol * TypicalPrice;//成交量乘以均值,即可得變量MoneyFlow值。//
PMoneyFlow = MoneyFlow*PType;//把上面求得的兩值相乘了。//
SumMoneyFlow = SummationFC(MoneyFlow, Length);//代入相應(yīng)數(shù)值與周期,快速求和,即可得SumMoneyFlow總值。//
SumPMoneyFlow = SummationFC(PMoneyFlow, Length);//同理,代入相應(yīng)數(shù)值與周期,快速求和,得到SumPMoneyFlow總值。//
If(SumMoneyFlow <> 0)//假如總值SumMoneyFlow不等于0.//
MFIValue = SumPMoneyFlow/SumMoneyFlow*100;//則把兩總值相除,再乘以100,即得MFIValue值。//
Else//總值等于0的。//
MFIValue = 0; //變量MFIValue賦值為0.//
MFIAvg = AverageFC(MFIValue, SmoothLength);//把相應(yīng)數(shù)值與周期6代入函數(shù)AvergeFC,求得均值,即為MFIAvg值。//
PlotNumeric("MFI",MFIValue);//畫線MFI,值為MFIValue值。//
PlotNumeric("MFI Avg",MFIAvg);//畫線MFIAvg,值為MFIAvg值。//
PlotNumeric("超買",OverBought);//畫線超買,值為80.//
PlotNumeric("超賣",OverSold);//畫線超賣,值為20.//
End