2011年1月15日 星期六

適性的波動率指標


程式交易小學堂─期貨投機事業的王道
衡量波動率的方式百百種,常見的就有 ATR、最高減最低、均線的標準差等等族繁不及備載,功能都是為了計算出在一段取樣的期間,價格的波動程度。至於計算價格的波動程度做什麼?都是為了幫助交易的決策,很少是直接使用波動率本身來做為作多/做空方向的規則。舉例來說:著名的海龜操作法,以 20日最高/最低點作為突破進場的規則,恐怕不是當年小海龜們大獲利的關鍵,他們以波動的程度決定進場部位的規模,隨著波動越來越大,持有口數會越來越多,當波動開始降低,持有口數隨之降低,至於他們所用的波動程度衡量與對照到該持有多少口數,這就有勞自己去 Google了。

『依市場波動調整部位大小』就是應用上述的觀念來的,只是當我們手上持有部位越大,市場的價格波動也就直接在我們的帳面損益上等倍數放大。不用說也知道,我希望看到的是當系統訊號獲利出場擁有倍數放大的獲利,系統訊號虧損出場我不要讓虧損也等倍數放大,因此:『持有部位大小決定停損』。

接下來才進入這篇文章要講的重點:依照個別的交易系統去設計該系統所使用的波動率指標。這個意思是說,每一個交易系統的進出場規則的設計都不同(廢話,不然幹嘛搞多系統),我們可以也必須去觀察系統的進場後主要的獲利是發生在怎樣波動狀況或是說波動範圍,然後我們就設計那種這個系統可能波動範圍的波動率,言傳不容易,讓我用一個當沖的系統作為例子來解說。

我定義這個當沖的系統,以每天第一根K棒的紅/黑(收盤大於/小於開盤)來做為進場的方向決定,一天就只進場這麼一次,出場的設計除了有絕對點數停損跟隨式移動停損(出場)、可能還有各式各樣自己喜歡的出場方式,反正就是當天第一根見紅作多、見黑棒康,後續只出場不再進場,如果當天的出場條件都沒有被觸發,則時間到了收盤前也要出場,因為...當沖嘛~

從這樣簡單的概念應該不難想像,這個系統的獲利波動範圍會取決於每天第一根K棒的收盤價到整天收盤的價格最大移動距離,而不是當天的最高到最低,因為我們只做一邊/一段嘛。以下我抓了兩個圖來協助表達


其實你的交易系統必須夠簡單,才比較有可能能夠判斷並且定義出我們的"利基"在哪裡?最好不要企圖發展一個"全"都賺的系統,而是某些價格類型能賺的系統,然後多弄幾個別的系統去組合成自己的投機部隊,特別是在"當沖"這種每天都是全新開始的交易模式,我們能有很多很多的進場機會啊。當然,這又是另一個大題目了。

我知道大家都會希望在看到想法或是範例的時候,最好有程式碼可以"學習",是吧^^
這是在計算昨天有利波動的範例,前提當然是上述的系統定義,你得因應自己的系統想出自己的有利波動範圍在哪裡,然後取來做你那個系統專用的波動率指標。


至於你想把這樣的指標用來當做有趨勢性的延伸,在昨天有利波動範圍大/小的時候,今天下大/小口數,或者是採用趨勢/盤整交替呈現的循環特性來對著幹,當昨天有利波動大/小,今天就大/小口數下單,那是你個人的選擇與信念了。

這一切都得建立在單一系統進場訊號夠簡單的前提之下,畢竟,很多很多(我看過幾十上百組>"<)的進場訊號共同存在同一系統的話,我自己是真的無法思考哪些波動會是對我的系統有利的。當然,我不能不代表你不能。

熱門文章