2011年7月24日 星期日

程式編寫入門7 - HHV

這次介紹一下 HHV function,其實 HHV 的意思就是 Highest High Value,它能協助我們找出特定期間內的最高值,這個最高值所指的可以是價格、成交量、甚至 RSI 。

HHV(DATA ARRAY, PERIODS)

以下為 HHV() 的一些例子:

HHV(C,20)
解釋:最近 20天的最高收市價(包括今日)。

HHV(V,10)
解釋:最近 10天的最高成交量(包括今日)。

2011年5月21日 星期六

出場策略(2):Chandelier Exit

上次介紹了拋物線系統 (SAR) ,SAR 最大的特色是止賺位的移動速度會愈來愈快,以保障既有的利潤。短線交易者傾向賺夠了就跑,絕不會對倉位有所留戀,因此 SAR 很適合他們。但對中長線投資者來說,止賺位的加速移動卻成了最大的缺點,請看下圖:

現貨金 - SAR


想像你是順勢交易者,預期金市將出現大升浪,於是在 09年 9月初進場,然後金價果然節節上升。一切看來都很完美,但可惜你選擇了 SAR 作為你的出場訊號,SAR 在 9月 21日發出止賺訊號,你只好在 995美元附近「止賺」,眼巴巴看著金價最後升至 1226美元!

在這裡我想介紹一個較適合中長線投資者的出場指標:Chandelier Exit

2011年3月5日 星期六

出場策略(1):Parabolic SAR

無論是否採用機械化的交易系統,投資者都需要作出兩個決定:(1) 何時進場,與及 (2) 何時出場。新手往往將重點放在進場訊號上,認為只要找到最佳的入市位,就能夠保證賺大錢。但專業玩家會將時間和精力花在出場策略上,因為他們知道這才是決定輸贏的關鍵。

很多投資者都有以下經驗:成功在低位入市,但升少少就獲利離場,結果錯過了一個大升浪;或入市後帳面曾賺到可觀利潤,卻因為沒有及時出場,結果在市況逆轉下利潤化為烏有。如果不想重蹈覆轍,就要在出場策略方面多下功夫。

出場策略包括止蝕及獲利兩個部份,但很多投資者都不願談及止蝕。一個利好的進場訊號意味著可能出現新的升浪,若你入市持好倉會有優勢,但不是「必贏」,即使訊號的準確率再高也好,仍代表有時會失效,這時止蝕位就能幫你盡快離場,避免損失擴大。

2011年2月9日 星期三

程式編寫入門6 - Ref function

編寫交易系統時,會發現很多時候需要用到一天或兩天前的數據,這時我們就會用到 Ref() function:

Ref(DATA ARRAY, PERIODS)

以下為 Ref() 的一些例子:

Ref(H,-1)
解釋:昨天的最高價。

Ref(RSI(14),-1)
解釋:昨天 RSI(14) 的數值。

Ref(C,-1)>Ref(C,-2)
解釋:昨天收市價高於前天收市價。

2011年1月16日 星期日

如何評估系統的測試結果

當你編寫了一個自以為有效的交易系統後,必須利用歷史資料進行測試,確定它真的能夠幫你賺錢。這一點很重要,除非你確定自己的系統有效,否則你很容易會對它失去信心。

很多人花錢參加昂貴的投資課程,學到神奇的交易方法後,沒有進行歷史測試 (back-testing) 就拿來實戰,結果往往遇到兩、三次的虧損便信心盡失,於是又再踏上尋找之旅,希望找到另一個「聖杯」。這樣的過程不斷重複,他們不明白問題其實出在自己身上,世上沒有穩賺不賠的交易方法,如果輸兩、三次就放棄,就算是再好的系統,交到他們手上也沒有用。

現在,讓我們嘗試比較兩個不同的交易系統,圖 1 是 StochRSI 系統的測試報告 (已扣除佣金及滑移價差),圖 2 則是 Moving Average Crossover (10天/30天) 系統。在這裡我只想評估系統的測試結果,至於買賣規則就不多作解釋了。