今日は、2007年以前のシミュレーションを行うための前段階として、レバレッジETFがどれだけ「指標の1日の動きの3倍」から乖離しているのかを調べていきます。
ここで言う乖離というのは、長期で持っていると指標とズレてくるとかそういう話ではなく、例えばSPXLがどれだけS&P500の日々の動きを3倍したものからズレているかということです。
ちょっと今日の記事は小難しい話が多くなってしまうかもしれませんが、より良いシミュレーションのための前提作りとなりますのでお付き合いくださいませ。
SPXLの乖離を調べる
まずは、SPXLが設定されてからの、SPYの日々の動きを3倍したものとSPXLがどれくらい乖離しているのかを調べます。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
require(quantmod) require(PerformanceAnalytics) getSymbols("SPY", from="2008-11-05") SPY3_return <- Return.calculate(Ad(SPY)) * 3 getSymbols("SPXL", from="2008-11-05") SPXL_return <- Return.calculate(Ad(SPXL)) result <- merge(SPXL_return , SPY3_return) charts.PerformanceSummary(result) Return.annualized(result) as.numeric(Return.annualized(SPY3_return) - Return.annualized(SPXL_return)) |
出力されるグラフがこちらです。

基本的な動きは同じですが、やはりそれなりに大きな乖離があるようです。
SPY×3のほうは年間平均リターンが34.92415%、SPXLは32.17216%ということで、SPXLはSPYの毎日の値動きを3倍したものから2.751987%下回っていることがわかりました。
では、これを補正していきます。
SPXLの乖離を補正する
両者には2%以上の乖離があることがわかりましたので、これを1日あたりの乖離率に直して、SPYを3倍にしたものから引いて比べてみます。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
require(quantmod) require(PerformanceAnalytics) getSymbols("SPY", from="2008-11-05") SPY3_return <- Return.calculate(Ad(SPY)) * 3 getSymbols("SPXL", from="2008-11-05") SPXL_return <- Return.calculate(Ad(SPXL)) diff_per_year <- as.numeric(Return.annualized(SPY3_return) - Return.annualized(SPXL_return)) diff_per_day <- ( 1 + diff_per_year )^(1/252)-1 diff_per_day SPY3_return <- SPY3_return - diff_per_day result <- merge(SPXL_return , SPY3_return) charts.PerformanceSummary(result) Return.annualized(result) |
次のグラフのようになりました。

今度はSPXLのほうが少しだけ強くなってしまいましたが、だいぶ近くなりました。
両者の年間リターン差は1%以下になっているのでこれでいいでしょう。
SPXLをSPYから再現するには、1日の値動きを3倍してから0.0001080326を引けばいいようです。
TMFの乖離を調べる
今度は同じ作業をTMFでもやっていきます。こちらはTLTの日々の値動きを3倍したものからの乖離を調べます。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
require(quantmod) require(PerformanceAnalytics) getSymbols("TLT", from="2009-04-16") TLT3_return <- Return.calculate(Ad(TLT)) * 3 getSymbols("TMF", from="2009-04-16") TMF_return <- Return.calculate(Ad(TMF)) result <- merge(TMF_return , TLT3_return) charts.PerformanceSummary(result) Return.annualized(result) as.numeric(Return.annualized(TLT3_return) - Return.annualized(TMF_return)) |
TMFの乖離は次のようになっています。

より乖離が大きく見えるのはSPXLよりも縦軸の幅が狭いというせいもありますが、実際にSPXLとSPYよりも大きなズレがあります。
TMFの年平均リターンは6.568294%、TLTの3倍は9.815092%でした。
両者の差は3.246799%となっていますので、これを補正していきましょう。
TMFの乖離を補正する
SPXLのときと同じように、1日の平均乖離幅を求めて、その分だけ補正していきます。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
require(quantmod) require(PerformanceAnalytics) getSymbols("TLT", from="2009-04-16") TLT3_return <- Return.calculate(Ad(TLT)) * 3 getSymbols("TMF", from="2009-04-16") TMF_return <- Return.calculate(Ad(TMF)) diff_per_year <- as.numeric(Return.annualized(TLT3_return) - Return.annualized(TMF_return)) diff_per_day <- ( 1 + diff_per_year )^(1/252)-1 diff_per_day TLT3_return <- TLT3_return - diff_per_day result <- merge(TMF_return , TLT3_return) charts.PerformanceSummary(result) Return.annualized(result) |
次のようになりました。

ほとんど重なりましたね!
両者の年間リターンの差は0.2%程度まで減らすことができました。
TMFをTLTから再現するには、1日の値動きを3倍してから0.0001271234を引けばいいようです。
本日の成果物
本日は、SPYとTLTからSPXLとTMFの動きを擬似的に再現するための変換関数をつくりました。
1 2 3 4 5 6 7 8 9 |
to_SPXL <- function(SPY) { SPXL <- (SPY * 3) - 0.0001080326 return(SPXL) } to_TMF <- function(TLT) { TMF <- (TLT * 3) - 0.0001271234 return(TMF) } |
ちょっと退屈な記事になってしまったかもしれませんが、これを使って明日からSPXLとTMFがなかった時代における可変レバレッジド・ポートフォリオのパフォーマンスを調べてみたいと思います。
その前に、どんな前提でシミュレーションをしているかを説明しておきたいと思いまして、今日の記事を書きました。
それではお楽しみに!
いつも興味深い記事をありがとうごさいます。
基準はSPYではなく^SP500TR(finance.yahoo.comにあります)と比較した方が良いのではないでしょうか?
その方がSPYの信託報酬や価格乖離の問題がないと思います。
次の記事でもSPYをシミュレーションに使う予定だったのでSPYとの比較となってますが、おっしゃる通りSP500TRでもよかったですね。いずれにせよ軽微な差なので、あまり気にしていません。
hiroakitさん
こんにちは。
可変レバレッジポートフォリオ素晴らしいとおもいます。
私もSTATAという統計ソフトを使用して同様のバックテスト行いましたが、リーマンショックを挟んだ期間で、”リスク許容度:大”でもSPYと比べて下落幅はほぼ同等でした。さらにBNDなしで”SPXL : TMF = 60 : 40″とする場合も試してみましたが、下落幅はやや大きくなるものの、nadirから約6ヶ月でSPY、”リスク許容度:大”を抜き、その後のパフォーマンスはかなりの差がありました。さらにリスクをとれる人は”リスク許容度:特大”としてBNDの割合をさらに下げることも可能かもしれません。もちろんリーマンショクを上回る暴落時は。。。。ではありますが。
私も少額から始めてみたくなりました。もう少し検討してみます。
はい、おっしゃる通りそれは可能です。
ただ、サイト運営者としてあまりリスクの高いポートフォリオを読者にオススメしたくないのと、よく意味がわかってない人が採用して何かそれがマイナスに動いたときどうせあとで文句を言ってきたりする人がいるんだろうなということを考慮して、あの3つのポートフォリオを公開したというのが正直なところになります。
逆に、「リスク極小」などのポートフォリオを作ることができるのもこれが「可変レバレッジ」である所以ですので。
ご返信いただけるとは大変光栄です。ありがとうございます。
leveraged ETF面白いですね。あれから夕食も忘れて解析していました。
散々解析した挙句、初心に帰ってリスク特大(SPXL : TMF = 60 : 40)が自分に一番あっていると思いましたので、年始まで気が変わらなければ総資産の1%程度を当ててみようと思います。基本は、3ヶ月に一度買い増しでrebalanceすることにしました。そうすれば3ヶ月に1回SPXL or TMFを買えば済みますので。
今の所、VDC + VHT + BLV (+Cash)という地味目なポートフォリオですので少し遊んでみてもいいかなと思ってます。
資産の1%で笑いました。
ずいぶんとお金持ちの方のようで羨ましい限りですね。
統計を重視することや、VDC、VHTなどのチョイスといい、僕と投資センスが似てる気がします。笑