據國外分析師預估,美股有超過一半的交易由程式完成。隨著科技和網路持續進步,國內外的各大機構也大量應用程式進行交易,不管是選股、股票交易、期貨交易、甚至是投資組合管理,多多少少能夠看到程式交易的身影。究竟程式交易是什麼?看完這篇文章,你將了解以下幾件事情:
- 什麼是程式交易?
- 程式交易的優缺點
- 常見的交易策略有哪些?
什麼是程式交易?
程式交易簡單來說就是把交易行為中原本由人類在做的事情,全部或部分改交由程式來自動執行。
通常投資人的交易流程包含以下幾個步驟:
1. 蒐集資訊
包含從看盤軟體得到股價、交易量等資訊、與朋友討論時得到相關標的資訊或是透過網路影片、Podcast、新聞媒體等媒介接收到關於個股或產業的消息等。
2. 進行買賣決策
自主投資人經過一系列的分析後進行買賣決策。例如因為財報數字亮眼決定買進、看好產業未來發展潛力、相信公司管理層而佈局或是因技術指標轉強決定進場,也有可能是聽到朋友推薦、參考選股排行,或是定期定額買入 ETF 等。
3. 執行下單動作
使用 APP、電腦軟體或打電話給營業員進行下單。
4. 管理投資組合
持續關注投資部位的股價表現、財務表現等,決定是否加減碼、停損、停利等。
Source:富果研究部
但在程式交易的世界,以上行為(或是部分行為)會改交由程式來執行,包含以下幾個過程:
1. 蒐集資訊
利用 API 串接相關資料庫或是透過爬蟲得到市場資訊(如價格、成交量、財報數字,甚至蒐集個股的網路聲量等),隨著各類資訊的機器可讀性上升,除了傳統的財務資料外,各類總經數字、104 職缺數量、停車空位狀況、天氣狀況、Facebook 按讚數等非傳統的投資資料也都可匯入做為投資判斷的參考數據和資料。
2. 進行買賣決策
根據程式開發者事前設計好的交易策略,由程式判斷買進與賣出的時間和點位,並在相關條件滿足時發送買賣訊號。
3. 執行下單動作
串接交易 API 後由程式自動執行買進或賣出的委託,並且確認後續的成交與庫存狀況;或是策略本身就是針對下單設計,例如常見的鋪價下單等。
4. 管理投資組合
持續更新投資部位資訊,根據交易策略中的設定,決定是否加減碼、停損、停利、重整投資組合(Rebalance)等。
可以看出程式交易的一大特色就是把人類過去的決策行為改以程式碼來呈現,因此程式交易能夠不受心理影響的重複執行交易行為,接下來我們來看看程式交易的優缺點有哪些。
程式交易的優缺點有哪些?
優點:
1. 嚴謹遵守紀律
程式自動化進行交易能夠絕對理性的執行所有策略判斷出的結果,因此能夠大幅減少投資人非理性交易行為(例如追高殺低、凹單等),設計出來的策略也能夠最真實的表現其績效。
2. 節省盯盤時間也節省精力
透過程式交易我們可以將設計好的投資策略交給程式全部自動化運行,因此投資人不用時時刻刻坐在電腦前盯盤,也不會因為各種外務而錯失投資時機(例如要下單的時候,被抓去開會)。
程式不像人類一樣需要休息,只要交易所是開市的時間,就能夠不間斷的進行交易,還可以同時關注多個市場(例如台美港股)進行跨時區交易。
3. 同時關注多種商品
程式能夠同時監控多個商品,且不侷限於單一市場,台股、美股、商品期貨、外匯甚至虛擬貨幣等都能夠同時關注,幫助我們接收和處理原先單靠一顆大腦無法應付的資訊。
4. 可較快速的透過回測進行策略評估
由於程式交易的可重現性,我們可以透過過往的股價數據等進行回測,協助我們以科學化的方式,驗證該投資策略在過去歷史行情中,所呈現的損益與績效,藉此來判斷未來的獲利性。
雖然我們也可以用手動的方式進行回測,但程式的運算速度可以大幅提升回測效率與測試的標的數量,讓我們在短時間內可以完成一定時長的回測工作。
然而,這邊要特別強調一點:過去能夠賺錢的策略不代表未來一定賺錢,我們僅能透過回測盡量尋找一個與正報酬相關係數較高的策略,市場並不存在一個在未來必定賺錢的策略(也就是所謂的投資聖杯)。而透過回測並配合一定的統計方法論,也有機會找到一個過去不會賺錢但難說未來不會賺錢的策略(從統計上無法否定虛無假設)。
但要知道市場的狀態和特性並不是一成不變的,所以當發現策略在各種監測的數據都與過去不同時,我們仍需持續視市場狀況調整策略內容。
缺點:
需要有程式能力,進入門檻較高
可用於進行程式交易的工具十分多元,我們可以根據使用場景的不同選擇相對應的工具,
但想要進行程式交易就代表要有一定的程式基礎(除非花錢請人協助開發)。即使市面上有一些為程式交易而生的付費軟體(例如 Multicharts、MT4 / MT5 等)可以讓投資人不需要太多程式能力就可以開始使用,但仍需要花費數週的時間上手,更不用說其他通用程式語言(例如 Python、R、C++、Java 等),都需要從最基本語法開始學起。
Source:富果研究部
除此之外,會程式並不代表就可以透過程式交易賺到錢,更重要的是程式交易背後運作的理論和策略開發,而要找到能賺錢的策略,其中的過程同樣需要投入大量時間研究,並非一朝一夕就能夠精通。因此,即使程式交易有許多優點,也不一定適合每個人使用。
接下來,我們來介紹一下程式交易常見的方式以及策略有哪些。
常見的交易策略有哪些?
1. 回歸或分群分析(Regression / Cluster Analysis):透過回歸分析模型或概念,嘗試預測未來股價走勢
i. 機器學習預測模型
我們可以利用不同的資料(在機器學習領域稱作特徵,例如公司營收、大股東持股比、營收毛利率等)來建構機器學習模型,藉此來嘗試預測未來的股價走勢。
機器學習是透過選取不同特徵並調整權重,計算出一條符合股價走勢的回歸曲線,之後等到新的一批特徵資料公布後(可能是每月新公布的營收等)帶入建構好的回歸模型當中,來進行走勢的預測。
機器學習所要處理的特徵資料量非常大,因此難以透過人工計算的方式來達成,且程式也能夠替我們篩選出較重要的特徵,進一步協助建構更有效的模型以提升預測的準確度。
機器學習也有許多演算法是針對分群(Cluster,把資料分到指定的幾個類別中),因此也可以透過把特徵與「漲」、「平盤」或「跌」進行標計,透過建構模型後,進行未來漲跌的分類判斷。
ii. 趨勢跟隨策略與均值回歸策略
這兩個策略都是利用股價產生的趨勢線來進行操作。趨勢策略認為在股價趨勢產生之後將不易反轉,因此會在走勢產生明顯趨勢後進場,並在趨勢消失後出場,是一個在多空趨勢下都可以使用的交易策略。
均值回歸策略的核心想法則是認為價格最終將趨向回歸均價(也就是說極端值無法長久,最後會回歸均值),這個策略會在程式定義的趨勢通道進行操作(由下緣支撐價位與上緣壓力價位組成),在價格觸碰通道下緣時進場並在通道上緣出場,或是在價格觸碰到上緣時放空並在下緣回補。
我們可以利用程式來協助我們判斷趨勢的產生、計算支撐價位和壓力價位等,並在符合策略設定時發出交易訊號來執行交易。由於趨勢跟隨策略與均值回歸策略的開發難度相較其他策略低,因此也是大多數程式交易者入門會使用的策略之一。
2. 統計套利(Statistical Arbitrage):利用過去價格變化的統計結果,在價差異常時進行套利
i. 市場中性套利(Market Neutral Arbitrage)
市場中性套利是指透過組合相關性較高的標的(例如可口可樂與百事可樂、台積電與聯電等),在兩者的價差出現異常時,同時做多較弱勢的標的和放空較強勢的標的,等到兩者價差回歸正常關係時平倉,來獲得價差在發散和收斂之間所產生的報酬。
我們直接透過一個實際的例子來看看:
假設我們認為台積電(市:2330)與聯電(市:2303)的股價走勢相似,長期來看的變動趨勢應該雷同(同漲同跌)。
然而即便如此,股價的變動也不會完全相同,兩者股價的差距仍有時會拉大或縮小,但可以猜想應該是暫時現象,長期而言還是會回歸一致走勢。於是我們就可以在兩者價差明顯發散時,例如聯電漲多、台積電漲少時,同時放空聯電和做多台積電(等值的部位),等到價差收斂後平倉,即可獲得套利所產生的報酬。
Source:富果研究部
ii. 跨市場套利(Cross Market Arbitrage)
這個策略主要是基於購買力平價理論而發展,購買力平價理論認為同一種商品在不同市場中應具有相同的價格。但在現實中,受匯率、出口政策等因素影響,同一種商品在不同交易所中價格往往不同,存在著一定的價差。
一般而言,這個價差會在一個穩定的區間中波動,但有時也會出現短暫價差的異常,而跨市場套利就是透過捕捉相同商品在不同市場的價差異常來獲利。
例如倫敦金屬交易所(LME)與上海期貨交易所(SHFE)都會進行銅的商品期貨交易,當 LME 的銅價明顯低於 SHFE 的銅價時,我們可以在買入 LME 銅期貨的同時,賣出 SHFE 的銅期貨,之後等到兩個市場的期貨價差恢復正常時再平倉來從中獲利。
又例如台灣股市目前把整股交易和零股交易拆分成兩個市場交易,同一支股票的價格會在盤中產生價差,此時也會出現能夠套利的機會。(但手續費等摩擦成本經常會吞噬套利空間,因此也不易透過套利來獲利)
高頻交易者也時常透過跨市場套利來創造獲利,這群交易者的交易頻率非常高,甚至達數毫秒就交易一次的程度,但也因為高頻交易存在,美股不同交易所(例如 NYSE 和 Nasdaq)之間的價差才能被快速消除,市場效率也能大為提升。
iii. 衍生性金融商品套利
衍生性金融商品通常都會連結到一個實際的商品(可能是實體商品,例如石油、毛豬、銅等,或是金融商品,例如指數),而衍生性金融商品的價格很可能因為市場情緖、流動性消失或是下錯單而大幅偏離,出現明顯的價格錯誤,而透過發現這樣的價格錯誤並進行套利,也是一種常見的套利方式。
以上三種套利模式我們也都可以透過手動交易來達成,但在電腦能力發達的今日,套利機會往往都會被速度更快的程式捕捉到,套利的空間可能在我們下單前就已被程式交易滿足,因此目前市場中的套利交易大多是由程式交易來完成。
除此之外,這樣的套利策略通常對資金的要求較高,對於一般投資人而言較難以進入,大部分都是專門進行套利策略的公司或是機構法人在操作。
3. 資產配置:運用資產配置理論,透過程式計算較佳資產配置組合並自動調整
現代投資組合理論(Modern Portfolio Theory)被譽為投資學的聖經之一,我們可以應用這個理論計算投資組合的預期風險與預期報酬率之間的關係,協助找出投資組合中各標的占有不同比例時相對應的預期報酬和風險。
其中預期風險部分,現代投資組合理論利用股價的標準差(也就是股價的波動度)來進行評估,認為一個標的的股價波動越大,風險就越大。
如同前面的台積電和聯電的例子,市場中兩兩標的之間的波動可能呈現高度正相關,但同時也有可能呈現無相關甚至負相關(即其中一檔漲時另一檔通常會跌),因此我們可以透過在投資組合中加入一些相關係數較低的標的來降低整體投資組合波動度,達到分散投資風險的效果。
由於我們投資組合中的股票可能高達數十種以上,如果要用手動的方式計算整體組合標準差的話將會相當費時,而程式除了能夠快速幫我們計算各個標的間的相關係數外,更可以接著根據各標的權重計算出整體組合的預期風險與預期報酬率,協助我們找出較佳的配置比例。此外,如果希望進一步運用程式監控投資組合,我們也可以在一段週期(可能是一個月、一年)後更新的股價資料並重新計算,調整各標的的比重。
結論
程式交易的運用範疇十分多元,除了能夠協助我們以理性的方式進行交易,更可以完成一些人類一個腦兩隻手難以執行的策略。加上近年來隨機器學習模型(AI 運算)的普及,使用於金融領域的應用與投資方法創新已越來越常見。
過去程式交易好像只有機構法人會大量使用,但現在隨著高算力的普及,加上程式語言的學習成為主流,越來越多個人投資人試著自行開發自動化的程式交易(演算法交易)或是透過程式來挑選投資標的與計算投資權重,更加理性且紀律地進行自主投資。
此篇文章研究團隊為讀者們簡單介紹了程式交易的概念和優缺點,及數個常見的交易策略和方式。而我們將於後續的研究報告持續帶大家深入認識開發交易策略的過程和方式,歡迎讀者持續關注。若對程式交易有興趣的讀者,也可以參考富果推出的富果台股 API。
▼ 理財果汁機的讀者有福啦!
使用本富果帳戶推薦碼,完成開戶後即獲得 108 枚富果幣!
自我揭露與聲明:
本人/本撰寫相關團體(以下簡稱我)目前無持有本文提到之股票的多方部位,且預計不會在未來 72 小時內增加持股。我與本文所提到的公司沒有商業關係,撰寫本文僅為分享,並無收取任何報酬。本文之資訊僅供分析參考,不保證內容之完整性與正確性,也不構成任何買賣有價證券之要約或宣傳。
責任編輯:邱翊雲(合格證券投資分析人員)
一、 未經合法授權,請勿翻載,本站內容僅供參考,本公司不負任何法律責任。
二、 投資人若依此以為買賣依據,須自負盈虧之責。
三、 與本網站有關一切糾紛與法律問題,均依中華民國相關法令解釋及適用之。
閱讀進度