發佈日期: 發佈留言

程式交易與量化交易是甚麼?軟體推薦與策略教學

程式交易與量化交易是甚麼?軟體推薦與策略教學

「程式交易(Program Trading)也可以稱為「量化交易 (Quantitative Trading) ,是透過電腦程式”全自動”執行投資交易。優勢在於可以大量節省時間盯盤,也可以同時關注多種商品。程式交易可以避免人性的主觀影響,透過軟體嚴格執行保持交易的一致性。

程式交易是甚麼?

把人的投資方法”程式化”,並讓程式自動買賣

舉個例子,一般我們要進行投資交易,大致需要經過以下幾個步驟:

  1. 接收資訊(從APP、看盤軟體、聽同事聽朋友講..)
  2. 做出買賣決策(電視上說是好股票所以買、從財報看出是好公司所以決定買進、看技術指標決定要賣..)
  3. 執行下單動作(從APP下單、用軟體下單、打電話下單..)

程式交易就是把以上所有原本由”人”在做的事情,全部由程式自動執行搞定!

程式交易的執行流程如下:

  1. 透過程式軟體API接收市場的資訊(如價格、成交量、財報、即時新聞、技術指標、機構推薦股票等)
  2. 由事先定義好的策略,計算出買賣點與停損停利點(如黃金交叉則買進,死亡交叉則賣出)
  3. 當出現買賣訊號時,由程式自動進行買進或是賣出(24小時7天隨時監控,再也不用擔心睡覺的時候大跌)
程式交易基本架構

程式交易與人工交易的差

人工交易是人工蒐集並整理市場資訊,如基本面(財報、資產負債表、配股配息等)、籌碼面(外資進出、各券商分點、大戶籌碼分布等)與技術面(高檔低檔、各種技術指標、各種型態等),經過統整分析各種資訊後,得出一個具體的投資決策(像是突破100元買進、價格低於80元低價買進等),最後再由人為下單買進或是賣出。
人工交易需要花費大量的時間和精力來整理各方面的資料,大多數人光是上班就沒甚麼時間了,各不用說特地撥出時間隨時關注市場的資訊。
加上市場的資訊量十分龐大,不知從何解讀起。一樣的資料給十個人,會有十種不同的投資決策。分析完畢得出結論之後準備下單,還會遇到人為主觀交易的恐懼與貪婪,若無法克服,將導致先前的努力全部白費。
這些問題都可以在程式交易中得到解決方案,程式交易者可以時間自由,並且24小時不間斷交易;也可以同時交易多種商品,分散投資風險。

程式交易的基本原則

在交易前事先以程式設定好交易條件,並跟隨市場趨勢,達成賠小賺大的模式,並由軟體找出明確的買賣點全自動進行交易。程式會完全客觀地看待市場,不對市場價格走勢預設立場,客觀靜待市場趨勢出現,追隨市場多空變動方向。並經過實際歷史資料驗證,由程式抓取實際歷史價位等數據,進行回測驗算,透過統計歸納驗證程式模組的可信度與有效性。


程式交易與量化交易的優勢

常常會有學生問我,程式交易跟人工主觀交易到底哪個比較好賺啊?
事實上是,都賺得到錢!各個流派都有高手,都有機會在市場上獲利。
那為什麼我最後選擇走程式交易呢?因為想要讓時間更自由!
投資交易很有趣沒錯,但面對幾乎24小時的市場,會讓自己精疲力盡,
做任何事情成功的秘訣其實都差不多,就是把簡單的事情,重複做。找到一個長期是正期望值的方法,不斷地執行它就對了!
既然是如此機械式的行為,推薦交給軟體執行,不只能提高運作效率,還可以解放自己的時間!
程式交易到底有那些優點呢?先上結論

程式交易的優點
1.省下大量時間
2.關注多種商品
3.評估可獲利性
4.避免主觀意識影響
程式交易的優勢

接下來我們來一一說明

程式交易優勢1:省下大量的時間

就如同上面所說的,程式交易最大的好處就是把投資策略交給程式去全自動化運行,讓自己不用再時刻坐在電腦前盯盤。

程式交易優勢2:同時關注多種商品

量化交易的另一大優勢則是可以同時監控大量的商品,台股、歐股、美股、黃金、原油,甚至是虛擬貨幣等等。讓你在睡覺時也可以隨時判斷市場的行情。

程式交易優勢3:評估可獲利性

常常聽分析師在講”黃金交叉買進,死亡交叉賣出”,或是”KD低檔黃金交叉買進,高檔死亡交叉賣出”,種種的江湖謠傳投資秘笈,但到底這樣做會不會賺錢?
透過程式交易的其中一個步驟”回測”,可以用科學化的方式,客觀的評估該投資方式在過去真實的歷史行情中,應該會呈現的損益與績效。
延伸閱讀:甚麼是回測

程式交易優勢4:避免主觀意識

這點可能要有點交易經驗的人看了才會有感覺,我們在做交易當中,難的不是學怎麼分析股票或是學基礎理論,難的是自己的心魔啊!
就跟減肥一樣,大家都知道只要少吃垃圾食物+多運動,基本上就能瘦下來。我也知道啊!只是真的很難做到。
程式冷酷無情,讓程式自動化執行交易,他會理性、高效率且毫無情緒的運行所有投資決策。
而停損,恰恰是所有交易動作中最難執行的。有多少投資高手,一生的心血就死在一次的不停損中。
透過程式交易,不管是執行任何的交易行為都是即時反應下單的,凹單、猶豫等常見的人為錯誤都會被排除掉。可以最忠實的反映出一個投資策略該有的績效,而不會受到人為操作的干擾影響。


常見的程式交易軟體推薦

我們這邊以台灣的環境來說明,大概在10多年前金融業內就開始在使用程式交易了,從最一開始的用按鍵精靈半輔助自動交易,到運用Excel的VBA語法、Multicharts、MT4 / MT5、R語言、Python、C語言、JAVA等等一系列的演進。
剛發展之初,各種工具與軟體都很少,所以一般是使用比較難的語言來進行,對非相關領域的朋友非進入門檻是真的很高。
不過隨著程式交易逐漸流行,有不少廠商也開發出專為程式交易而生的軟體。

常見的程式交易/量化分析軟體 – 學習難度比較

這邊大致分成兩類

  1. 專為程式交易而生的軟體:Multicharts、MT4 / MT5
  2. 通用型程式:Python、VBA、C語言、JAVA、R語言等等

那我適合學哪一種程式語言與軟體呢?
若你沒有學過程式語言,或是工程師相關的工作,推薦學”專為程式交易而生的軟體”。
若你是工程師,整天與程式碼為伍,或是真的下定決心要學一個使用場景較廣的語言,再來考慮”通用型程式”。

程式交易軟體推薦 – Multicharts與Python比較

程式交易可以投資交易的商品有哪些?

基本上所有商品都可以拿來給程式交易執行,前提是要有相對應的接口上程式串接。
從股票(台股/美股/各國股市)、ETF、期貨(台指期/小道瓊/黃金/原油/各類別期貨)、選擇權、虛擬貨幣(比特幣BTC/以太幣ETH)、債券等等的金融商品都可以透過API將資料串入程式。

在台灣實務上最常見的就是拿來選股與交易台指期,日後我們會有專門的文章來介紹各個商品如何來進行程式交易,有興趣的朋友趕緊追蹤我們的粉專吧!


程式交易常用的五大類型策略

一、趨勢策略-捕捉大行情的最佳幫手

趨勢策略(順勢策略)是在趨勢產生後,進場;在趨勢消失後,出場。是一個投資組合中最基本需配置的策略類型。
目標在捕捉到長波段的走勢,不利於盤整行情,會來回進出場消耗成本。
由於趨勢轉換需要時間,無法進場在最高點/最低點。
趨勢策略的重點在於如何定義趨勢成立,並搭配合理的進出場機制。

常用的趨勢指標:均線家族(MA)、威廉指標(Williams %R)、順勢指標(CCI)、平滑異同移動平均線指標(MACD)、趨向指標(DMI)

二、動能策略-在波動中靈活衝浪

在出現向上的大波動後,進場;在出現向下的大波動後,出場。
動能投資策略目標在行情剛開始噴出時就切入卡位,屬較敏感型的策略,進場成本一般會比趨勢型策略還好。
波動策略通常需要搭配方向性的濾網,才能達到比較好的效果。
波動會隨的不同的時間變動,重點在如何找到適合當時狀況的波動。

常用的動能指標:標準差(StandardDev)、平均真實區間(ATR)、動量指標(Momentum)

三、反轉逆勢策略-猜頭摸底

在價格跌太多出現相對低點時,進場;在價格漲太多出現相對高點時,出場。
是一般投資人最喜歡的策略~不過找到相對高低點後,務必嚴守停損,勿與趨勢為敵!
高(低)點為當下判斷出來的,若之後持續創新高(低),須尊重市場,停損!
一般來說勝率會較趨勢型策略來的高。

常用的反轉逆勢指標:樞紐點分析(Pivot)、乖離率(BIAS)、相對強弱指數(RSI)、隨機指標(KD)、拋物線指標(SAR)

四、通道策略-順勢逆勢兩相宜

先定義一個通道(支撐與壓力),在價格向上突破壓力後,順勢進場or逆勢出場;在價格向下跌破支撐後,順勢出場or逆勢進場。
較類似主觀人工交易的壓力支撐點位判斷,通道策略目標在捕捉到行情慣性改變的趨勢。
盤整行情可改為逆勢交易,關鍵在如何判斷使用順勢與逆勢的切換時間點。

常用的通道指標:凱勒通道(Keltner Channel)、唐奇安通道(Donchian Channel)、逆勢操作系統(CDP)、布林通道(Bollinger Bands)

五、籌碼策略-跟著大戶的腳步

分析大戶的未平倉量可以知道當天主力的資金流向,並推測未來市場的走勢。
擁有越多籌碼的人越能影響市場,主力是市場上影響力最大的一股力量,擁有最堅強的研究與操盤團隊,在市場上是長期贏家。
而散戶在市場中一般是輸家,跟散戶反向操作通常容易獲利。

常用的籌碼指標:外資籌碼、三大法人籌碼、散戶籌碼、買賣力道


為什麼需要這麼多類型的策略呢?

因為程式交易的重點就在於投資組合的多樣性
大家都知道投資要分散,才能夠將風險降低。在程式交易當中我們會透過”分散商品、分散週期、分散策略”來降低風險。
分散策略:就如同上面所提到的各類型策略,不同屬性的策略所擅長的行情以及所賺賠的日子會不同,所以可以達到互補的效果,讓整體的績效更平滑。
分散商品:每個不同的商品都有不同的經濟週期,股市、虛擬貨幣、原物料、農產品、債券等等,透過多角化的分散可以將投資組合的相關性降低。
分散週期:一般我們股票看的是日線,有可能從日的維度來看,盤整了好幾個禮拜。但是從5分K的角度來看,行情卻是暴漲又暴跌,有許多可供交易的機會。


程式交易-金融市場上不可逆的未來趨勢

隨著科技及網路的進步,程式交易已成為主流的交易方式,國內外的各大金融機構也將程式交易大量應用在金融投資上,不管是運用在選股、股票評估、期貨交易、甚至是運用在最新的比特幣上。美國高盛集團的總裁暨營運長索羅門(David Solomon)曾在2018年表示,全公司的人工交易員只剩三人,其餘皆被電腦取代了!交易所有流程都以程式自動運作,幾乎不用人工的介入,透過程式可以24小時隨時監控大量的商品,並在發現投資機會時以最快的速度進行交易。

全球”程式交易”所管理的資金規模以每年均 60%的速度爆炸性增長,2020年已超過1萬億美元,2024年將逼近3萬億美元。 資料來源:Statista

按讚追蹤量化通,一起成為台灣量化社群的一份子吧!

量化通臉書粉絲專頁:https://www.facebook.com/QuantPass
量化通Line社群,匿名討論,不用害羞儘管發問!
量化通官方Line帳號,加為好友,隨時接收最新訊息!

量化通 QuantPass – 量化投資 程式交易 一點通!

量化通 QuantPass 是個致力於全民量化金融教育的社群,我們希望透過由淺入深的內容,帶領大家以正確觀念來實踐自動化的金融投資研究分析。內容涵蓋傳統研究分析方法、量化分析、選股、爬蟲、API串接、回測、以及下單等跨領域多元知識,由各領域專家為大家提供最精闢的內容。
我們對於Python、Multicharts、MT4/MT5等主流的量化交易工具都有相對應的專家,希望可以帶給大家全方位的內容!