拓端tecdat|R語言改進(jìn)的股票配對(duì)交易策略分析SPY
原文鏈接:http://tecdat.cn/?p=22034?
原文出處:拓端數(shù)據(jù)部落公眾號(hào)
相信大家都聽說過股票和債券的多元化投資組合。改進(jìn)的股票配對(duì)交易策略基本上使用了一種前進(jìn)的方法(參考文章中的概念),即最大化夏普比率,偏向于波動(dòng)率而不是收益率。也就是說,它使用72天的移動(dòng)窗口來最大化投資組合的不同權(quán)重配置之間的總收益,標(biāo)準(zhǔn)差提高到52的冪。說得通俗一點(diǎn),在1的冪數(shù)下,這是基本的夏普比率,在0的冪數(shù)下,只是一個(gè)動(dòng)量最大化的算法。
這個(gè)策略的過程很簡單:每個(gè)月重新平衡SPY和TLT之間5%的倍數(shù),之前最大化了以下數(shù)量(在72天窗口中返回波動(dòng)率^2.5)。
SPY和TLT組合
以下是獲取數(shù)據(jù)和計(jì)算必要數(shù)據(jù)的代碼:
require(quantmod)
getSymbols(c("SPY", "TLT"), from="1990-01-01")
for(i in 1:21)
??weightSPY <- (i-1)*.05
??config <- Return.portfolio(R = returns, weights=c(weightSPY, weightTLT)
period <- 72
接下來,建立權(quán)重的代碼:
weights <- t(apply(monthlyModSharpe, 1, findMax))
weights[is.na(weights)] <- 0
也就是說,在每個(gè)重新平衡的日期(每月的月末),簡單地采用使每月修改的夏普比率計(jì)算最大化的設(shè)置。接下來是收益表現(xiàn):
Performance(stratRets)
結(jié)果如下:

具有以下股票曲線:

并不完美,但相比之下,它的成分如何呢,我們來看看。
apply.yearly(Components, Return.cumulative)
以下是一些常見的統(tǒng)計(jì)數(shù)據(jù):

簡而言之,這一策略的表現(xiàn)似乎遠(yuǎn)遠(yuǎn)好于上述兩種成分。我們來看看股票曲線的比較是否反映了這一點(diǎn)。

事實(shí)上,雖然它確實(shí)在危機(jī)中出現(xiàn)了下跌,但當(dāng)時(shí)這兩個(gè)工具都在下跌,所以看起來這個(gè)策略在糟糕的情況下取得了最好的效果.以下是年度收益。
yearly(Return.cumulative)

然而,從2002年整體上看,雖然該策略很少會(huì)像兩個(gè)中更好的表現(xiàn)一樣,但它總是比兩個(gè)中更差的表現(xiàn)出色--不僅如此,即使在一個(gè)表現(xiàn)差的時(shí)候,該策略在回測(cè)的每一年中都取得了積極的表現(xiàn),例如2008年的SPY,以及2009年和2013年的TLT。以下是SPY在策略中的權(quán)重。
weightSPY <- do.call(rbind, weightSPY)
TimeSeries(alig, date.format="%Y", ylab="SPY權(quán)重", main="SPY-TLT配對(duì)中SPY的權(quán)重")

貴州茅臺(tái)和民生銀行組合
股票數(shù)據(jù)獲取及整理
## [1] "GZMT" "MSYH"
組合收益表現(xiàn)結(jié)果如下:

加入比較項(xiàng)-非組合下的單只表現(xiàn)

年化收益率比較
?
?

通過累積收益率、日收益率和最大回撤率,以及年化收益率比較,可以發(fā)現(xiàn)采用優(yōu)化方法的投資組合明顯優(yōu)于傳統(tǒng)的投資策略。
現(xiàn)在,雖然這對(duì)某些人來說可能是一個(gè)獨(dú)立的策略,但在我看來,動(dòng)態(tài)地重新加權(quán)兩個(gè)具有負(fù)相關(guān)性的收益流,與它們形成的成分相比,可能會(huì)產(chǎn)生一些較好的結(jié)果。此外,模擬實(shí)際組合收益率所采用的方法很有趣,不是簡單地依靠一個(gè)數(shù)字來總結(jié)兩種工具之間的關(guān)系,毫無疑問,這種方法作為一種一般的前進(jìn)方法,有著廣泛的應(yīng)用。

最受歡迎的見解
1.用機(jī)器學(xué)習(xí)識(shí)別不斷變化的股市狀況—隱馬爾科夫模型(HMM)的應(yīng)用
2.R語言GARCH-DCC模型和DCC(MVT)建模估計(jì)
3.R語言實(shí)現(xiàn) Copula 算法建模依賴性案例分析報(bào)告
4.R語言COPULAS和金融時(shí)間序列數(shù)據(jù)VaR分析
5.R語言多元COPULA GARCH 模型時(shí)間序列預(yù)測(cè)
6.用R語言實(shí)現(xiàn)神經(jīng)網(wǎng)絡(luò)預(yù)測(cè)股票實(shí)例
7.r語言預(yù)測(cè)波動(dòng)率的實(shí)現(xiàn):ARCH模型與HAR-RV模型
8.R語言如何做馬爾科夫轉(zhuǎn)換模型markov switching model
9.matlab使用Copula仿真優(yōu)化市場風(fēng)險(xiǎn)