1395  

VIMA是 variable-interval moving average 的簡稱,由R.G. Boomers所發明,是一條根據近期價格區間的變動大小所演變出來的移動平均線,有別於一般簡單移動均線只有計算到價格,從指標的公式來研究,VIMA隱含了波動率的概念,讓均線的變化程度更加靈敏

原理是先求出當根收盤價距離前N根收盤價的差值,然後找出近期的最高MaxDiff和最低差距MinDiff;計算當根的收盤價-前N根的收盤價 是落在(Maxdiff-MinDiff)的相對位置

直接從powerlanguage的公式解讀

inputs: MaxLength1(numericsimple), Length2(numericsimple),ShortestVIMALength(numericsimple), LongestVIMALength(numericsimple);

variables: VIMAOsc( 0 ),Length1( 0 ),MaxDiff( 0 ),MinDiff( 0 ),NormDiff( 0 ),VIMAOscMax( 0 ),VIMAOscMin( 0 ),VIMAOscNorm( 0),VIMALengthRange(LongestVIMALength - ShortestVIMALength);

VIMAOsc = 0;

for Length1 = 1 to MaxLength1

begin

MaxDiff = Highest(Close - Close[Length1], Length2);   計算近期最高的收盤價和前N根收盤價差距

MinDiff = Lowest(Close - Close[Length1], Length2);    計算近期最低的收盤價和前N根收盤價差距

if (MaxDiff - MinDiff)>0 then NormDiff = (Close - Close[Length1] - MinDiff) / (MaxDiff - MinDiff);   取百分比相對位置

VIMAOsc = VIMAOsc + NormDiff;  VIMA的差值變化

end;

VIMAOscMax = Highest(VIMAOsc, Length2);   根據差值的變化 取一段時間的最高位置

VIMAOscMin = Lowest(VIMAOsc, Length2);   根據差值的變化 取一段時間的最低位置

VIMAOscNorm = (VIMAOsc - VIMAOscMin) / (VIMAOscMax - VIMAOscMin);  取相對位置

VIMA = ShortestVIMALength + Round(VIMAOscNorm * VIMALengthRange, 0);

 1953  

相較於一般的移動平均線 VIMA相對貼近K棒的變動,利用VIMA的斜率變化當做依據寫成可以買進賣出的訊號似乎不錯,周末來研究看看,有心得再補充

 

arrow
arrow
    全站熱搜

    元大期貨楊宗儒 發表在 痞客邦 留言(0) 人氣()