第1章 | 為什麼要學程式交易?有什麼好處?

統一Multicharts申請流程

常常聽到投資人討論「程式交易」,到底什麼是程式交易?

程式交易也可稱為系統化交易,就是把從市場資訊、從價格變動等觀察到的交易現象,整理歸納成交易邏輯,經過統計驗證後,不帶主觀情感機械式地執行買賣,例如長短均線黃金交叉就買進,死亡交叉就賣出,這樣反覆執行其實就是程式交易的概念。

再來就是我們要選擇哪個”平台”跑程式交易,目前市場上程式交易客主要分兩類:

1.採用MultiCharts這類套裝軟體。MultiCharts是專為程式交易開發的軟體,可以大幅減少我們進入程式交易的門檻。我們可以透過MultiCharts把交易邏輯編寫成程式語法(PowerLanguage),加上MultiCharts提供回測歷史績效、參數最佳化等功能協助我們檢驗、調整策略,最後再透過下單機完成自動交易。

2.自寫程式串API。另外一派程式交易者具備更高端的程式專業,可自行開發交易程式(例如以C#、Python等語言)並串接期貨商API來進行自動交易。

建議在取名時開頭第一個字母可以用符號,例如:_my strategy、$my indicator等等,因為PowerLanguage已經內建有許多策略或指標,我們自己寫的會一起參雜(以字母排序)。這樣在開啟舊檔時,自寫的部分會放在最前面。

為什麼需要程式交易

有人說期貨市場贏家是極少數,試著回想一下過去虧損的狀況,是看錯方向?是賺小賠大?還是根本沒有依據只憑感覺下單?

行為財務學提供了許多有趣但深刻的觀點,原來會賠錢很多時候是因為人天生”不理性”所造成!不相信?來試試以下的心理測驗:

以下兩題請問您會各自如何選擇?

第一題:
A
:確定贏得$250
B
25%機率贏得$100075%機率什麼也沒得到。

第二題:
C
:確定損失$750
D
75%機率損失$100025%機率沒有任何損失。

選好了嗎?請看答案(翻牌):

A:確定贏得$250

選擇落袋為安

其實A=B,兩者的期望值都是250元。選A不選B,代表你跟多數人一樣,賺一點就跑。

B:25%機率贏得$1000,75%機率什麼也沒得到

獲利情況下願意抱單

其實A=B,兩者的期望值都是250元。恭喜你,你異於常人,心臟比別人大顆,能挑戰大波段獲利。

C:確定損失$750

停損認輸

其實C=D,兩者的期望值都是-750元。選C不選D,代表你在不利情境下願意選擇忍痛停損。

D:75%機率損失$1000,25%機率沒有任何損失

不甘停損

其實C=D,兩者的期望值都是-750元。選D卻不選C,表示你跟大多數投資人一樣,都有不甘認輸的壞毛病!

如果您的選擇分別是AD,那您可要留意了,跟多數一般人一樣,您可能也內建了賺小賠大的基因。為什麼呢?其實從期望值的角度解題,

A($250)=B(25%*$1000+75%*0=$250)

同理,

C(-$750)也等於D(75%*-$1000+25%*0=-$750)

但在第一題賺錢的情境,您選擇了A(先落袋為安),卻在第二題賠錢的情境裡,卻選擇了D(不停損,拚拚看)。這樣的情境與選擇,套回期貨交易裏,是不是很熟悉?

行為財務學證實了人天生的決策不理性,這些人性弱點常常把交易帶向虧損甚至毀滅,但既然是人性自然是不好克服(或修練),例如上面的測驗證明人性就是容易「賺小賠大」,這是每位交易人在實際下單都會遇到的課題,雖然都知道「Cut loss short, let profit run」,但捫心自問,真的很難做到!

現在有了程式交易,你不用悔恨、不用剁手指,把交易邏輯訂清楚,交由程式去執行,該停損就無血無淚地停損,該抱單就牢牢抱著。

克服人性弱點,這正是程式交易帶給我們最大的一個優勢。

研究已經證實人性普遍存在弱點,導致我們賺小賠大,你內心的聲音絕對是惡魔而非天使啊!

績效檢驗並避免隨機交易

憑感覺下單是新手最常犯的毛病,也就是殺進殺出,賺了也不知道為何而賺,以為是自己很厲害,賠了也無從檢討修正。

嘗到苦頭後,新手慢慢地從隨機交易進步成長,會開始找交易書籍來研讀、參加坊間投顧老師課程,學某某指標、某某操盤法,總算是有個套路、有個邏輯來下單進出了吧?但是這些指標、戰法真如想像或是如老師講的這麼美好嗎?

此時程式交易的第二個優勢出列:透過軟體的績效回測功能,可忠實地告訴交易人策略的賺賠、風險、勝率等數字,數據跟統計都呈現出來,我們就可以進一步評估並修正策略,甚至進而開發出新的交易策略。
有憑有據來交易,這正是程式交易帶給我們第二項優勢。

快速學習/複製/修正操作技巧

傳統的主觀交易不容易學習,一方面是主觀交易”絕學”不容易邏輯化,甚至例如「盤感」這樣的技巧更是無以名之,再來是主觀交易很大塊要素是「經驗」,但經驗不容易快速複製。

程式交易則容易得多,我們可以從程式交易的程式碼清楚解讀策略開發者的原意與巧思,進一步複製或學習。因此,要讓自己的功力大增,網路上可以找到許多經典交易策略或指標的程式碼,細細解讀揣摩,就像初學書法臨帖,可以更快學成又不易走偏。

另外,透過歷史績效回測報告,我們可以很快地進行修正→再回測→再修正,也就是「trial and error」的程序,而且是不需要真的拿錢去市場測試,可以大幅降低學習成本。

網路上或是書本上可以找到許多前人開發的經典指標或策略,我們都可以把它們寫入MultiCharts,修改成自己的祕寶。

投資交易的輔助工具

許多人認知的程式交易就是寫策略然後自動下單,其實程式交易軟體可以做的東西不僅於此。以下舉幾個另類應用為例:

  1. 自寫技術指標。期貨商提供的軟體,每家內建技術指標都是大同小異,想要有跟別人不一樣的看盤系統,主觀交易者也可以利用MultiCharts自己寫指標,我們在坊間看到的一些看起來很特別的指標如買賣力道指標、紅買綠賣指標、散戶指標等,其實都可以自己寫。
  2. 做為其他理財投資的進出依據。例如現在很流行的存股,定期定額是基本做法,但也可以進一步設法提高績效,採取定期不定額或是定額不定期,怎麼做?一樣找出邏輯規律,再統計與驗證,最後機械式執行,不就是程式交易的應用!

快速結論

隨著科技進步與市場進化,程式交易已經成為主流工具,且學習門檻已經大幅降低。程式交易幫助我們:

  • 克服人性弱點
  • 檢驗績效
  • 快速學習進化
  • 輔助其他投資理財

透過MultiCharts這套軟體,我們可以快速上手程式交易,不僅應用在期權交易上,充分利用這項工具,投資理財可以更有效能、更科學、也更有信心。

發表迴響