Wednesday, July 13, 2011

More Thoughts on US Death Spiral

What troubles me most about today’s environment is the persistent belief that crisis large or small results in a US dollar rally and lower Treasury rates. However, what happens if the US dollar and US Treasury rates are the source of the crisis? Then the US enters a death spiral and the currency, stocks, and bonds suffer simultaneously and equally, and unfortunately there is nowhere in traditional asset allocation to hide.

Recent events are simply a phenomenon begun in 1998 with $4-$5 Trillion Asian Central Bank reserve building and local currency devaluation. There are limits to the monetary and fiscal policies pursued so vigorously since 2000, and I think we have found those limits and will face much more severe consequences.

For more see earlier posts:

New Favorite Test of US Monetary Policy Limits

Nine Lives of the Fed Put

Unsustainable Gift

Death Spiral of a Country

From TimelyPortfolio
From TimelyPortfolio
From TimelyPortfolio

If we look past 1998, the relationship looks much different.

From TimelyPortfolio
From TimelyPortfolio
From TimelyPortfolio

R code (click to download):

require(quantmod)
require(PerformanceAnalytics)   getSymbols("SP500",src="FRED")
getSymbols("DGS10",src="FRED")
getSymbols("DTWEXB",src="FRED")
getSymbols("DTWEXM",src="FRED")   fedData <- na.omit(merge(SP500,DGS10,DTWEXB))
fedData <- merge(ROC(fedData[,1],type="discrete",n=1),
ROC(fedData[,2]/fedData[,3],type="discrete",n=1))
colnames(fedData) <- c("SP500","US10y/USDBroad")   #jpeg(filename="performance since 2007.jpg",quality=100,
# width=6.25, height = 6.25, units="in",res=96)
chart.CumReturns(fedData["2007::"],legend.loc="bottomright",
main="SP500 and US 10y Rate/Broad Dollar Index")
#dev.off()   #jpeg(filename="correlation.jpg",quality=100,
# width=6.25, height = 6.25, units="in",res=96)
chart.Correlation(fedData["2007::"],
main="SP500 and US 10y Rate/Broad Dollar Index
Correlation since 2007"
)
#dev.off()   #jpeg(filename="rolling correlation.jpg",quality=100,
# width=6.25, height = 6.25, units="in",res=96)
chart.RollingCorrelation(fedData["2007::",1],fedData["2007::",2],n=250,
main="SP500 and US 10y Rate/Broad Dollar Index
Rolling 250 Day Correlation"
)
#dev.off()   fedData <- na.omit(merge(SP500,DGS10,DTWEXM))
fedData <- merge(ROC(fedData[,1],type="discrete",n=1),
ROC(fedData[,2]/fedData[,3],type="discrete",n=1))
colnames(fedData) <- c("SP500","US10y/USDMajor")   #jpeg(filename="performance.jpg",quality=100,
# width=6.25, height = 6.25, units="in",res=96)
chart.CumReturns(fedData,legend.loc="topleft",
main="SP500 and US 10y Rate/Broad Dollar Index")
#dev.off()   #jpeg(filename="correlation.jpg",quality=100,
# width=6.25, height = 6.25, units="in",res=96)
chart.Correlation(fedData,
main="SP500 and US 10y Rate/Broad Dollar Index
Correlation Since 1973"
)
#dev.off()   #jpeg(filename="rolling correlation.jpg",quality=100,
# width=6.25, height = 6.25, units="in",res=96)
chart.TimeSeries(runMean(runCor(fedData[,1],fedData[,2],n=250),n=250),
main="SP500 and US 10y Rate/Broad Dollar Index
Rolling 250 Day Average of Rolling 250 Day Correlation"
)
#dev.off()

Created by Pretty R at inside-R.org

1 comment:

  1. Hi there,
    These scatter plots look to not be reflected by the regression line you've used.

    Consider having a look at them when using a 0.5 quantile regression (you can use the rq function from the quntreg package), to see how different the results are.

    Cheers,
    Tal

    ReplyDelete