Volatility波动性指标在計算最高價和最低價之間的價差。以在最大和最小之間的振幅為基礎來斷定波動價值
計算公式
1.先計算n日的 Range = High - Low 的指數型移動平均
REMAt = REMAt-1 + 2/(n+1) * ( Rt - REMAt-1)
2.計算n日移動平均的變動率:
Volatility = (REMAt - REMAt-n) / REMAt-n
在Easywin裡面可以找到這個指標 動能指標
volatility並不是方向性指標,當CV值上升,表示行情波動變大,當CV值下降,表示行情趨向盤整
在multicharts也可以找到這個指標
內建程式碼如下
Volatility = XAverage( TrueRange, Len ) ; 真實區間的指數平均
VolatilityClassic = AverageFC(TrueRange, Len); 真實區間的簡單移動平均
有些不同的小變化
套用在主圖上面觀察研究
似乎當K棒的長度越長,Volatility就會上升,用來表示當時的震盪幅度變劇烈
寫成交易策略又是如何呢
看過一些前輩的文章,多數認為波動率上升到一定的數值就可以採用順勢突破的操作,於是 把volatility再次平均
value1 = Volatility(10);
value2 = AverageFC(value1,10);
當value1>value2的時候,如果突破N天高點或低點就進場
加上停損點
if marketposition=1 then sell next bar at entryprice-stl stop
if marketposition=-1 then buytocover next bar at entryprice +stl stop
另一種簡單的寫法可以用setstoploss當作停損,它的好處是會在當根K棒執行
透過Multicharts的好處就是可以把想法邏輯轉換成買賣訊號,快速回測印證模擬交易的績效軌跡
這樣的想法也許不怎麼複雜,但是不用經過太多修飾,就可以產生不錯的效果
在這幾年台指期的波動率下降,因此許多突破型的策略漸漸失靈,利潤也逐漸下降,但是若能搭配其他的策略運行,透過大賺小賠,還是能保持一定穩定
至於volatility是不是好用,就留給有興趣的朋友繼續研究了,希望有機會也分享心得
留言列表