【程式交易系列】#2 什麼是量化交易(Quantitative Trading)?

量化交易(Quantitative Trading)同時具有幾個同義詞,像是計量交易程式交易(Programming Trading)和演算法交易(Algorithmic Trading),其實意義都是相同的,以客觀且科學化的方式計算相關指標並判斷交易決策訊號,例如計算技術指標的移動平均,當股價高過移動平均線時,進場買進,反之則進場賣出,使用比較科學化一致性的方式來判斷。


量化交易特性

狹義的量化交易或程式交易就是以計算技術指標,並以程式進行方向性交易(Directional Trading),也就是我們比較常看到的交易策略,像市面上的幾個程式交易套裝軟體,如TradeStation與MultiCharts等軟體,主要就是以技術指標進行方向性交易為主,使用的程式語言是比較貼近一般人的PowerLanguage,讓一般投資人與程式交易的距離拉近了不少。

廣義的量化交易則是包含高頻交易(High Frequency Trading, HFT)或套利交易(Arbitrage)的複雜性策略,這兩類的交易策略在軟硬體都具有一定的門檻,比較多還是以專業的金融法人機構使用,例如投資銀行的自營交易室或避險基金,這些交易可能都不是計算技術指標而已,還會需要計算一些統計模型或金融商品評價模型,例如選擇權造市則必須要持續計算Black-Scholes Options Pricing Model(Python財金應用:Black-Scholes選擇權訂價模型(1)),並在標的資產價格變動時快速進行抽換單。

不論是狹義或是廣義量化交易,核心宗旨都是相同的,就是利用電腦程式輔助計算數值,建立出一套客觀的交易準則。

我可以進行量化交易嗎?

前面講了一堆名詞希望大家不要嚇到,進行量化交易可簡單可複雜,如果你曾經在Excel上面分析股票的交易策略,那你絕對沒有問題,頂多在學一些程式語言而已,如果你連Excel分析股票都沒碰過的話,建議可以先去下載某檔股票的歷史資料(【網路爬蟲】臺灣證券交易所歷史資料教學(1))到Excel觀摩一下,好好看一下你的資料是長什麼樣,甚至可以畫畫圖,好好思考一下如果只有這些資料要怎麼樣賺錢呢?

這系列文章作為「打造Python客製化自動交易平台」線上課程的新手教學文章,希望大家能在上課前就具有量化交易的思維,而不會直接陷入龐雜的程式碼中打滾,搞得自己好像是工程師一樣,如果不知道目的就跑去維護密密麻麻的程式碼,相信我還沒上到一半你就會想放棄了,必須先具有思維與架構後,再一步一步的撰寫量化交易的每個環節與功能。

量化交易架構圖

下圖為一般進行量化交易或程式交易的架構圖,一般比較常看到的內容多為白色虛線內的內容,其餘的教學內容比較少,大多需要自行摸索,而最新設計的課程就是帶著大家將白色虛線外的內容建構完成,同時也會從一些簡單的範例來完成所有的量化交易環節。

結論

相信會來看這些文章的各位並不是一個無腦存股族,希望能夠自己掌控交易策略,並發揮創意來設計並優化交易策略,量化交易或程式交易確實是個很好的進入領域,而量化交易可簡單可複雜,可以用Excel進行回測或是用肉眼回測,但是要做到最完整的量化交易與自動交易,勢必要會有更多的技術門檻存在,對於一般人來說這些內容可能較為陌生也較為複雜,需要學會操作券商API、資料庫與多線程計算,所以我將利用十幾個小時的時間帶領大家一起完成一個同步具有回測與自動下單功能的「大平台」。


雷大的Python投資筆記電子報

歡迎訂閱雷大的Python投資筆記電子報,每週將會發布定期市場分析文章與不定期的專案研究文章:

  1. 國際金融市場分析
  2. 量化交易策略分享
  3. Python程式撰寫教學

立即訂閱最新文章