TQQQをシミュレーションする
レバレッジETFはどれほど乖離するのだろうか?と同じように、QQQ から TQQQ をシミュレーションしてみた。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 | # TQQQ のシミュレーション require(quantmod) require(PerformanceAnalytics) tqqq_cost_error=0.0000761135 # getSymbols("QQQ", from="2011-01-01", to="2018-05-01") # getSymbols("TQQQ", from="2011-01-01", to="2018-05-01") # QQQ.Adjusted TQQQ.Adjusted simulated_TQQQ # Annualized Return 0.1701381 0.4463346 0.4463346 # Worst Drawdown 0.1610440 0.4453689 0.4455394 # Annualized Sharpe Ratio (Rf=0%) 1.0284510 0.9076972 0.8993344 to_TQQQ<-function(QQQ,tqqq_cost_error){ TQQQ<-(QQQ*3)-tqqq_cost_error return(TQQQ) } # getSymbols("QQQ", from="2000-01-01", to="2018-05-01") getSymbols("QQQ",from="2011-01-01",to="2018-05-01") QQQ_return<-Return.calculate(Ad(QQQ)) sim_TQQQ_return<-to_TQQQ(QQQ_return,tqqq_cost_error) colnames(sim_TQQQ_return)<-"simulated_TQQQ" getSymbols("TQQQ",from="2011-01-01",to="2018-05-01") TQQQ_return<-Return.calculate(Ad(TQQQ)) QQQ_TQQQ<-merge(QQQ_return,TQQQ_return,sim_TQQQ_return) result<-merge(QQQ_return,TQQQ_return,sim_TQQQ_return) charts.PerformanceSummary(result) print(rbind(Return.annualized(result),maxDrawdown(result),SharpeRatio.annualized(result))) |
「SPXLをSPYから再現するには、1日の値動きを3倍してから0.0001080326を引けばいいようです。」に対して「TQQQ を QQQ から再現するには、1日の値動きを3倍してから 0.0000761135 を引けばよい」ことが分かる。ちょっと値が小さい気がするが、QQQ は SPY より新しく、TQQQ は SPXL より新しい ETF であり、(ETF そのものが成熟してきてコストが落ちているから)経費率が元から低いことや、期間が短いため、コスト変動(低下)の影響が少ないのであろう。
ディスカッション
コメント一覧
まだ、コメントがありません