實現有序排列的多空均衡權益策略

在上一篇文章中(https://www.fmz.com/digest-topic/4187),咱們介紹了配對交易策略,並演示瞭如何利用數據和數學分析來建立和自動化交易策略。多空均衡權益策略是適用於一籃子交易標的的配對交易策略的天然延伸。其特別適用於品種衆多且有相互關聯性的交易市場,好比數字貨幣市場和商品期貨市場。算法

 
基本原則
多空均衡權益策略是同時作多和作空一籃子交易標的。就像配對交易同樣,肯定哪一種投資標的價格便宜,哪一種投資標的價格昂貴.不一樣的是,多空均衡權益策略會將全部投資標的排在一個選股池中,以肯定哪些投資標的相對便宜或者昂貴。而後,它將基於排名作多頭部前n個投資標的,而且以等金額作空底部n個投資標的(多頭頭寸的總值=空頭頭寸的總值)。
 
還記得咱們以前說配對交易是一個市場中立的策略嗎?多空均衡權益策略也是如此,由於多頭和空頭頭寸等額確保策略將保持市場中性(不受市場波動影響)。該策略在統計上也很穩健;經過對投資標的進行排名並持有多個頭寸,你能夠對你的排名模型進行屢次開倉,而不只僅是一次性風險開倉。你純粹押注的只有你排名方案的質量。
 
什麼是排名方案?
排名方案是能夠根據預期的表現爲每一個投資標的分配優先級的模型。其中的因子能夠是價值因子,技術指標,訂價模型或上述全部因子的組合。例如,你可使用動量指標對一系列趨勢跟蹤投資標的進行排名:預計具備最高勢頭的投資標的將繼續表現良好並得到最高排名; 動量最小的投資標的表現最差,收益率最低。
 
該策略的成功幾乎徹底在於所使用的排名方案,即你的排名方案可以將高績效投資標的與低績效投資標的分開,更好地實現多空投資標的策略的回報。所以,制定排名方案很是重要。
 
怎樣制定排名方案?
一旦咱們肯定了排名方案,咱們顯然但願可以從中獲利。咱們這樣作是經過投入相同數量的資金來作多排名靠前的投資標的,並作空排名底部的投資標的。這確保了策略只會按照排名的質量按比例賺錢,而且將是"市場中立"的。
 
假設你正在對全部投資標的m進行排名,有n美圓投資,並但願持有總共2p(其中m> 2p)的倉位。若是排名rank 1的投資標的預計會表現最差,那麼排名爲m的投資標的預計將表現最佳:
  • 你將投資標的排列爲:1,......,p這樣的位置,作空2/2p美圓的投資標的
  • 你將投資標的排列爲:m-p,......,m這樣的位置,作多n/2p美圓的投資標的
注意:因爲價格跳動致使的投資標的價格不會老是均勻地劃分n/2p,而且必須以整數購買某些投資標的,因此會有一些不精確的算法,算法應儘量接近這個數字。對於運行n = 100000和p = 500的策略,咱們看到:
 
n/2p = 100000/1000 = 100
 
這對於價格大於100的分數會形成很大的問題(如商品期貨市場),由於你不能開倉分數價格的倉位(數字貨幣市場這個問題不存在)。咱們經過減小分數價格交易或增長資原本緩解這種狀況。
 
讓咱們來看一個假設的例子吧
  • 在發明者量化平臺搭建咱們的研究環境
首先,爲了工做的順利進行,咱們須要搭建咱們的研究環境,本文咱們使用發明者量化平臺(FMZ.COM)進行研究環境的搭建,主要是爲了後期可使用此平臺的方便快捷的API接口和封裝完善的Docker系統。在發明者量化平臺的官方稱呼中,這個Docker系統被稱爲託管者系統。
 
  • 關於如何部署託管者和機器人,請參考我以前的文章:https://www.fmz.com/bbs-topic/4140
  • 想購買本身雲計算服務器部署託管者的讀者,能夠參考這篇文章:https://www.fmz.com/bbs-topic/2848
在成功部署好雲計算服務與託管者系統後,接下來,咱們要安裝Python目前最大的神器:Anaconda。爲了實現本文所需的全部相關程序環境(依賴庫,版本管理等),最簡單的辦法就是用Anaconda。它是一個打包的Python數據科學生態系統和依賴庫管理器。
  • 關於Anaconda的安裝方法,請查看Anaconda官方指南:https://www.anaconda.com/distribution/
  • 本文還將用到numpy和pandas這兩個目前在Python科學計算方面十分流行且重要的庫。以上這些基礎工做也可參考我以前的文章,裏面有關於如何設置Anaconda環境和numpy和pandas這兩個庫的介紹,詳情請見: https://www.fmz.com/digest-topic/4169
咱們生成隨機投資標的和隨機因子,對其進行排名。讓咱們假設咱們將來的回報實際上取決於這些因子值。


如今咱們有因子價值和收益了,咱們能夠看到若是咱們根據因子價值對投資標的進行排名,而後開倉多頭和空頭頭寸會發生什麼。



咱們的策略是在一籃子投資標的池中作多排名第一的;作空排名第10的。這個策略的回報是:

其結果爲:4.172。把錢放在咱們的排名模型上,以讓其可以從低績效投資標的中分離高績效投資標的。在本文接下來的內容中,咱們將討論如何評估排名方案。基於排名的套利賺錢的好處在於它不受市場無序的影響,反而能夠利用它。
 
讓咱們考慮一個現實世界的例子
咱們爲標準普爾500指數中不一樣行業的32只股票加載數據並嘗試對它們進行排名。

讓咱們以一個月時間週期的標準化動量指標做爲排名依據

如今咱們將分析咱們股票的行爲,看看咱們的股票在市場中如何在咱們選擇的排名因子中運做。
 
分析數據
股票行爲
咱們看看咱們選擇的一籃子股票在咱們的排名模型中是如何表現的。爲此,讓咱們計算全部股票的一週遠期回報。而後咱們能夠看看每一個股票的1周前向回報與以前30天動量的相關性。表現出正相關的股票是趨勢跟隨,表現出負相關的股票是均值迴歸。


咱們全部的股票都在必定程度上均值迴歸!(顯然咱們選擇的宇宙就是這樣運做的)這告訴咱們,若是股票在動量分析中得分排名很高,咱們應該預計其下週表現不佳。
 
動量分析得分排序與收益之間的相關性
接下來,咱們須要看看咱們的排名得分和市場整體的前向回報之間的相關性,即預計回報率的預測與咱們的排名因子的關係,較高的相關性等級是否能夠預測較差的相對回報,又或者反之亦然?爲此,咱們計算全部股票的30天的動量和1周遠期回報之間的每日相關性。


每日相關性表現的很是嘈雜,但很是輕微(這是預期到的,由於咱們說過全部的股票都會均值迴歸)。咱們還要看看1個月前向回報的平均每個月相關性。


咱們能夠看到平均相關性再次略微爲負,但每月也會變化很大。
 
平均一籃子股票回報率
咱們已經計算了從咱們的排名中取出的一籃子股票的回報。若是咱們對全部股票進行排名而後將它們分紅nn組,那麼每組的平均收益是多少?第一步是建立一個函數,該函數將給出每個月給定的每一個籃子的平均回報和排名因子。

咱們根據此分數對股票進行排名時計算每一個籃子的平均回報。這應該讓咱們能夠了解很長一段時間內他們的關係。
 


彷佛咱們可以將高績效者與低績效者分開了。
 
利差(基差)一致性
固然,這些只是平均關係。爲了瞭解這關係是多麼一致,以及咱們是否願意進行交易,咱們應該隨着時間的推移來改變看待它的方法和態度。接下來,咱們將查看它們前兩年的月度利差(基差)。咱們能夠看到更多變化,進行進一步的分析以肯定這個動量分數是否能夠交易。




最後,若是咱們作多最後一個籃子而且每月作空第一個籃子,那麼讓咱們看一下回報(假設每一個證券的資本分配相等)

年回報率:5.03%
咱們看到,咱們有一個很是微弱的排名方案,只能溫和地將高績效股票與低績效股票區分開來。 此外,這個排名方案沒有一致性,每個月變化很大。
 
找到正確的排名方案
要實現多空均衡權益策略,你實際上只須要肯定排名方案。以後的一切都是機械的。一旦你有一個多空均衡權益策略,你能夠交換不一樣的排名因子,別的都不用太大的改動。這是一種很是方便的方法,能夠快速迭代你的想法,而無需擔憂每次調整所有代碼。
 
排名方案也能夠來自幾乎任何模型。它不必定是基於價值的因子模型,它能夠是一種機器學習技術,能夠提早一個月預測回報並根據該等級進行排名。
 
排名方案的選擇與評估
排名方案是多空均衡權益策略的優點所在,也是最重要的組成部分。選擇一個好的排名方案是一個系統的工程,並無簡單的答案。一個很好的起點是選擇現有的已知技術,看看你是否能夠稍微修改它們以得到更高的回報。 咱們將在這裏討論幾個起點:
  • 克隆和調整:選擇一個常常討論的內容,看看是否能夠稍微修改它以得到優點。一般狀況下,公開的因子將再也不有交易信號,由於它們已徹底套利出市場。可是,有時它們會引導你朝着正確的方向前進。
  • 訂價模型:任何預測將來回報的模型均可能是一個因子,都有潛在的可能用於對你的一籃子交易標的進行排名。你能夠採用任何複雜的訂價模型並將其轉換爲排名方案。
  • 基於價格的因子(技術指標):基於價格的因子,如咱們今天所討論的,獲取有關每種權益的歷史價格的信息,並使用它來生成因子價值。例子多是移動平均指標,動量指標或波動率指標。
  • 迴歸與動量:值得注意的是,有些因子認爲價格一旦朝着一個方向發展,就會繼續這樣作。有些因子偏偏相反。二者都是關於不一樣時間範圍和資產的有效模型,而且研究基礎行爲是基於動量仍是基於迴歸是很重要的。
  • 基本因子(基於價值):這是使用基本價值的組合,如PE,股息等。基本價值包含與公司的現實世界事實相關的信息,所以在許多方面能夠比價格更強大。
最終,發展預測因子是一場軍備競賽,你正試圖保持領先一步。因子會從市場中被套利而且具備使用壽命,所以你必須不斷地開展工做以肯定你的因子經歷了多少衰退,以及可使用哪些新因子來取代它們。
 
其餘考慮因素
從新平衡頻率
每一個排名系統都會在稍微不一樣的時間範圍內預測回報。基於價格的均值迴歸可能在幾天內可預測,而基於價值的因子模型可能在幾個月內具備預測性。肯定模型應該預測的時間範圍很是重要,並在執行策略以前進行統計驗證。你固然不但願經過嘗試優化從新平衡頻率來過分擬合,你將不可避免地找到一個隨機優於其餘頻率.一旦肯定了排名方案預測的時間範圍,嘗試以大約該頻率進行從新平衡,以便充分利用你的模型。
 
資本能力和交易成本
每種策略都有最小和最大的資本容積,最低門檻一般由交易成本決定。交易太多股票將致使高交易成本。假設你想購買1000股,那麼每次從新平衡將產生幾千美圓的成本。你的資本基礎必須足夠高,以使交易成本佔你的策略產生的回報的一小部分。例如,若是你的資本爲100,000美圓且你的策略每個月賺取1%(1000美圓),則全部這些回報將被交易成本佔用。你須要以數百萬美圓的資本運行該策略獲利超過1000股。
 
最低的資產門檻,主要取決於交易的股票數量。然而,最大容量也很是高,多空均衡權益策略可以交易數億美圓而不會失去優點。這是事實,由於該策略相對不常常從新平衡.總資產數量除以交易的股票數量,每股的美圓價值會很是低,你沒必要擔憂你的交易量會影響市場。假設你交易1000股,也就是100,000,000美圓。若是你每月從新平衡整個投資組合,那麼每一個股票每個月會只交易100,000美圓,這對於大多數證券而言不足以成爲重要的市場份額。
相關文章
相關標籤/搜索