【XQ回測說明】總報酬率算法

2022-12-05 10:21:34

摘要

時常有用戶詢問XQ回測中的報酬率到底是怎麼計算的呢? 在我們舊有的回測文章中(選股中心策略雷達自動交易)有詳細的解說, 但是選股中心、策略雷達與自動交易的回測到底有什麼差別以及用途呢? 此篇文章會著重於說明,XQ回測在各產品(選股中心、策略雷達與自動交易)上的差別, 以及我們開發的初衷及用途,期望能夠幫助在股海上奔波的各位。    

選股中心、策略雷達、自動交易回測差異

XQ的回測主要可以分成二種:一種沒有考慮資金,一種有考慮資金沒考慮資金的:策略雷達/選股中心回測 這二種腳本都是以是否觸發條件來判斷進出場,沒有部位大小的差別,也沒有資金的觀念。回測報告提供的總報酬率為時間加權報酬率,是一種不考慮資金、僅考慮交易時機的報酬率計算方式,主要是在幫助戰友們,判斷整個投資策略的有效性

有考慮資金的:自動交易

利用交易語法控制部位進出場,可以有部位大小的變化,回測報告提供的總報酬率為考量使用資金後的最大投入報酬率。回測報告的數值可以幫助戰友們,知道真正投入資本後,可以得到的預期報酬率    

加入有考慮資金回測的用意

為什麼會有資金的差別呢?因為一開始做的策略雷達、選股中心都只有符合/不符合(或說觸發/未觸發)的概念,主要是專注衡量策略本身的有效性,而先不考慮交易實務上會面臨的部位管理。 那如何使回測進一步考慮交易實務上的部位管理?後來開發的自動交易語法能夠做到這點,也才能夠導入資金的觀念。其實無論回測方法是否考慮資金,我們想呈現的皆是合理的回測數值。 這邊要請大家先想一下,回測報告的用途是: 1.跑出漂亮的績效數字 2.做為正式交易前的參考 我們覺得答案是2,所有的回測,最終都是為了交易賺錢。所以我們一直在努力合理化績效數字。接下來我們會跟大家一一說明,尚未考慮資金回測與有考慮資金回測的差別。    

投資組合回測 vs 單一商品回測

首先,總報酬率當中「尚未考慮資金」的時間加權報酬率與「有考慮資金」的最大投入報酬率,差異都是發生在投資組合(多商品)回測時加總報酬率計算方式若是單一商品、單一數量的簡化情況,二者報酬率的計算方式是沒有區別的 許多人,包含我們在內,剛開始使用回測工具皆是針對單一商品。 若只交易一種期貨商品就沒此區別,甚至可以說,交易期貨的人是達到一定程度之後,才會開始思考同時交易多商品的配置問題。但交易股票完全不一樣,較少人會只專門研究某一檔股票,交易股票天生就自帶一籃子股票的概念。而XQ的強項就是股票分析,自然的我們一開始設想的回測標的就是整個投資組合,雖然明知道這邊的難度很高、陷阱很多,我們也只能硬著頭皮上了。    

時間加權報酬率

單一商品的投資報酬率大家都會算,算起來也不會有什麼大問題。但一籃子商品的投資報酬率要怎麼算,就有點難度了。我們的第一版是傻傻的把每個商品的報酬率直接加總,簡單粗暴。但產品上線後,馬上發現代誌不是憨人想的那麼簡單,因為我們發現用XQ回測怎麼那麼容易找到聖盃。 在這行打滾久了之後,看到愈漂亮的報酬率、愈漂亮的績效曲線,心中有的絕對不是狂喜,而是恐懼,這中間一定有問題。問題出在哪呢?答案就出在我們直接把所有商品的報酬率加總變成總報酬率。這樣子只要一些簡單的小停損、大停利的策略,很容易就把整個報酬率往上衝高。因為直接加總這些報酬率其實是假設了使用者會有「無窮大」的資金,可以同時交易非常多的商品,這很明顯是不合理的。 經過一番研究,我們發現學理上其實可以利用「時間加權報酬率」來解決這個問題。原理是這樣的,假設你有一筆固定的錢,同時投資商品可以無限細分(不一定是1張,或1股),總之每次有訊號產生的時候,我們會平均分散這筆資金到所有的訊號上。 這就很像每個策略實際上是一個基金,基金的持股是由策略訊號所決定,平均分散到每次產生的訊號。調整之後,策略每日的總報酬,會等於每天持有商品的報酬平均,每天都會依照策略訊號下的持有商品重新再平衡。這就是各位現在看到的報酬率,雖然很難讓各位利用excel重新計算驗證,但調整後的報酬率就不會再有報酬率無限疊加的問題    

最大投入報酬率

後來,我們推進產品,提供了交易語法。在開發的過程中,我們就很小心的避免之前碰到的無窮資金問題。但是讓使用者自行設定資金,在外面分享策略的時候,過大或過小都會扭曲總報酬率的數值,我們想找一個不會被使用者設定所影響,又能客觀評估策略的報酬率計算方式。 最終我們提供的是最大投入報酬率 最大投入報酬率=淨利/最大投入金額,隨著整個策略執行,只要實際使用到的資金規模變大,最大投入金額就會愈大。評估淨利的基礎會隨著你的策略交易狀況調整,如此就能在比較不同策略時有一個可以客觀評估總報酬率的標準    

總結&下一步

其實工具在手,使用上端看個人的運用各有巧妙。現在我們了解到,XQ的回測主要有二種:一種沒有考慮資金,一種有考慮資金。那這兩者用途又分別是什麼?

沒考慮資金的:策略雷達/選股中心回測

大部份的使用者們皆是大範圍甚至全商品的在回測,策略雷達與選股中心在我們產品的定位上,也是作為「交易的輔助」。 因此策略雷達與選股中心最主要回測的用意在於,回測後個別的策略有效性,以及策略間報酬率的比較

有考慮資金的:自動交易

自動交易的最終目的是為了串接下單,因此大部份的人會先篩選過指定商品再回測,不太會去使用全市場商品跑回測,這時有考慮資金計算的「最大投入報酬率」,其評估就顯得更有意義,而這個「最大投入報酬率」的數字用意,是可以拿來評估實際執行後的期望報酬率

下一步

在自動交易上線後,我們的確發現報酬率的計算上,「最大投入報酬率」對使用者而言是比較好理解的數值。未來我們會利用介面設定的方式,讓策略雷達及選股中心的回測也能有最大投入報酬率的評估方式。 如果我們計算報酬率的方式,不符合您的需求,需要自行計算的朋友,也可以直接使用我們回測報告的「匯出」功能,將回測報告匯出成xlsx。其中的「交易分析」包含了完整的進出場明細,稍加調整後應該可以得出您需要的報表。     另外若對於我們報酬率算法或回測有任何的想法或是建議,歡迎可以mail到我們客服信箱:XQservice@XQ.com.tw