程式交易是什麼?能為我們帶來哪些好處?

隨著近幾年資訊電腦科技進步,程式交易在期權市場已經蔚為主流,常常聽到人人談論MultiCharts、API、自動交易乃至人工智慧(AI),到底甚麼是程式交易?能賺錢嗎?一般人可以學嗎?我們將透過一系列教學帶交易人深入淺出認識程式交易,並嘗試提供給有心學習者快速上手的指引。本系列文第一篇,先帶大家認識,相比傳統的主觀交易法,程式交易能為我們做什麼?
 
>>讀完本文您可以學到什麼?
 
1. 對程式交易有基本認識
2. 程式交易與傳統主觀交易的差異
3. 了解程式交易能做到哪些事情
4. Multicharts跟PowerLanguage語法沒有那麼難

程式交易是什麼?

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

目前市場上程式交易客主要分兩類:

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

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

為什麼需要程式交易

如果您是一個接觸期權交易有一小段時間的交易人,回想一下是什麼原因讓您虧損,是看錯方向?是賺小賠大?還是根本沒有依據只憑感覺下單?從某個角度來講,程式交易可以說是為了彌補人為主觀交易的不足而生,主觀交易的主要缺陷有二,一是人腦難以應付快速又大量的資訊決策,二是盈虧壓力下的人性弱點。但不是說主觀交易就是錯的,這個領域也有很多贏家,或者應該說成功的交易人是應兩者兼備!下面列出程式交易的優點,並比對傳統主觀交易的缺點,讀者可以一邊讀一邊思考,自己在交易的路上還需要補強哪些,程式交易可以如何幫上忙?

克服人性弱點

先讓讀者做個測驗,以下兩個情境,請問您會各自如何選擇:

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

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

如果您的選擇分別是A與D,那您可要留意了,跟多數一般人一樣,您可能也內建了”賺小賠大”的基因。為什麼呢?其實從期望值的角度解題,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」的程序,而且是不需要真的拿錢去市場測試,可以大幅降低學習成本。

投資交易的輔助工具

許多人認知的程式交易就是寫策略然後自動下單,其實程式交易軟體可以做的東西不僅於此。以下舉幾個另類應用為例:
 
1. 統計研究市場現象。例如我們可以寫程式碼去統計禮拜一到禮拜五哪一天的振幅最大。這些工作自然EXCEL也可以做到,但程式交易軟體(MultiCharts)本身擁有完整資料庫以及技術分析相關函式,比起直接在EXCEL處理要更有效率。
 
2. 自寫技術指標。期貨商提供的軟體,每家內建技術指標都是大同小異,想要有跟別人不一樣的看盤系統,主觀交易者也可以利用MultiCharts自己寫指標,我們在坊間看到的一些看起來很特別的指標如買賣力道指標紅買綠賣指標等,其實都可以自己寫。
 
3. 做為其他理財投資的進出依據。例如我們曾發表過一篇「存股與程式交易:存股搭配程式空單避險策略」,就是提出運用程式交易來幫存股族做避險決策,可大為降低績效波動風險。
 
就算交易人最終不是走向自動交易,程式交易的觀念、指標或是應用,都可以作為輔助工具,拿來提升不管是期權交易或是投資理財的績效。

投資組合管理

「不要把所有雞蛋放在同一個籃子」是投資理財的終極圭臬之一,透過多商品多策略的組合,提高勝率、降低風險都是可能辦到的。期權交易因為行情速度很快,如要同時交易多個商品,沒有透過程式的管理或是自動交易機制終究是很難辦到。
 
此外,近年程式交易發展重心已經從策略開發轉移到資金管理層次,議題從多商品多策略投組配置到最佳下注比例與槓桿大小等都有,可謂百家爭鳴,這是強調數學與統計的程式交易領域獨有的現象,在現貨市場我們絕少看到如此深度的探討。因此,最後我們要說,從學習程式交易的過程,即便我們最後沒有真正進行自動交易,我們學得這些系統性交易的概念,例如講究邏輯、統計還有下注與槓桿的觀念,這些都有助於我們在交易或投資理財的領域更有競爭優勢。

快速結論

程式交易能帶給我們什麼好處?程式交易協助我們進出有據以及克服心魔,此外,程式交易提供績效回測、完成的統計數據,有利於我們快速修正與複製策略;再進一階,把程式交易概念的應用到其他投資領域等等,都可賦予我們更多交易上的優勢。
 
但我們以傳統的主觀交易為對照,來突顯程式交易的優勢,但絕非貶抑主觀交易,事實上程式交易的策略靈感從何而來?斷不是憑空想像或是東抄西抄來的,如果沒有第一線面對市場,深入地觀察行情甚至參與行情,就絕無可能歸納出交易規則並進而發現交易機會,可以說好的主觀交易者更有可能發展出成功的程式交易。說到底程式交易也就是一項好工具,但要怎麼用它?給它注入怎麼樣靈魂?才是成敗關鍵。
 
最後,既然程式交易有這麼多優點,我們要怎麼學習能?下一篇我們要告訴大家,學程式交易沒有想像中那麼難,以及學習的竅門為何。
 
 

期貨線上開戶 期貨營業員專區

/統一期貨相關連結/

 

統一期貨FB統一期貨YouTube統一期貨LINE統一期貨IG