MC裡面的KD指標名稱是Stochastic Slow

但要注意一件事情

MC裡面的KD跟我們台灣各家看盤軟體包含手機APP的KD是不同的

主要不同點在於K值跟D值的平滑處理手段不同

figure-1

聰明的讀者應該可以很簡單看出兩者之間是否存在不小差異


如果要在MC裡面使用我們台灣通俗使用的KD指標的話該怎麼辦?

說真的只能自己編寫了

當然網路是一個好東西 只要有心 一些基本的東西都找的到

曾經有程式交易的老司機(忘記是誰了不過真的該感謝他)寫過通俗版的KD指標函數

這裡有需要的讀者就自己拿去彙編吧

以下是KD的函數 函數名稱請設定為Stochastic_

figure-2

figure-3

設定好之後將下方這段程式碼複製貼上後並且編譯就可以

inputs: 

PriceValueH( numericseries ),  

PriceValueL( numericseries ), 

PriceValueC( numericseries ), 

StochLen( numericsimple ), 

Len1( numericsimple ),                                                         

                         

Len2( numericsimple ),                                                         

                 

SmoothingType( numericsimple ),                                                   

                             

oFastK( numericref ), 

oFastD( numericref ), 

oSlowK( numericref ), 

oSlowD( numericref ) ;


variables: 

var0( 0 ),               

var1( 0 ),                 

var2( 0 ),                

var3( 0 ),                  

var4( 0 ),                

var5( 0 ),                  

var6( 0 ), 

var7( 0 ) ;


Stochastic_ = 1 ;


var0 = Lowest( PriceValueL, StochLen ) ;

var1 = Highest( PriceValueH, StochLen ) ;

var2 = PriceValueC - var0 ;

var3 = var1 - var0 ;


if var3 > 0 then

oFastK = var2 / var3 * 100 

else 

begin

oFastK = 0 ;

Stochastic_ = -1 ;

end ;


if SmoothingType = 1 then             

begin

var6 = Len1 - CurrentBar ;

condition1 = var6 > 0 and CurrentBar > 0;

if condition1 then

begin

                                                                           

var4 = ( Cum( var2 ) + var6 * var2[ CurrentBar - 1 ] ) / Len1 ;

var5 = ( Cum( var3 ) + var6 * var3[ CurrentBar - 1 ] ) / Len1 ;

end

else

begin

var4 = Average( var2, Len1 ) ;

var5 = Average( var3, Len1 ) ;

end ;

if var5 > 0 then

oFastD = var4 / var5 * 100 

else

begin

oFastD = 0 ;

Stochastic_ = -1 ;

end ;

var7 = Len2 - CurrentBar ;

condition1 = var7 > 0 and CurrentBar > 0 ;

if condition1 then

                                                                           

oSlowD = ( Cum( oFastD ) + var7 * oFastD[ CurrentBar - 1 ] ) / Len2 

else

oSlowD = Average( oFastD, Len2 ) ;

end

else if SmoothingType = 2 then           

begin

oFastD = XAverageOrig( oFastK, Len1 ) ;

oSlowD = XAverageOrig( oFastD, Len2 ) ;

end ;


oSlowK = oFastD ;


編譯後 如果要製作成指標 寫法如下


inputs:rsv(9),kk(3),dd(3); 


vars:var0(0),var1(0),ks(0),ds(0);

Value1=Stochastic_(high,low,close,rsv,kk,dd,2,var0,var1,ks,ds);


Plot1(ks,"SlowK");

Plot2(ds,"SlowD");

plot3(var0);


附註說明:

plot3的var0就是RSV值

拍手 拍手
好文章需要你的鼓勵
拍手 拍手
追蹤

推薦文章

您需要 後才能開始留言
還沒有人討論誒,快來搶沙發...
聲音節目
沒有描述
--:--
--:--
1.0x
播放速度
2.0x
1.75x
1.5x
1.25x
1.0x
0.75x
收藏節目
播放清單
沒有播放清單
沒有待播放的清單
返回播放器
接著播放
清除全部
沒有待播放的清單