Path: blob/master/sandbox/paper_analysis/data/preparedata.R
1433 views
123setwd("c:/Documents and Settings/Administrator/Desktop/risk budget programs")45library(zoo);67# Load the data89start = as.Date("1991-01-01") ; end = as.Date("2009-12-31") ;1011# Risky assets:1213data = as.data.frame(read.csv( file = "data/MSCI_Europe.csv",skip=6,sep=","))14colnames(data) = c("Date","Europe")15#data$Europe[(as.character(data$Europe)=="#NA")]=NA;16MSCI_Europe = zoo( data$Europe , order.by = as.Date( as.character(data$Date) , format = "%m/%d/%Y" ) )17MSCI_Europe = window( MSCI_Europe , start = start , end = end );1819data = as.data.frame(read.csv( file = "data/MSCI_Japan.csv",skip=6,sep=","))20colnames(data) = c("Date","Japan")21#data$Japan[(as.character(data$Japan)=="#NA")]=NA;22MSCI_Japan = zoo( data$Japan , order.by = as.Date( as.character(data$Date) , format = "%m/%d/%Y" ) )23MSCI_Japan = window( MSCI_Japan , start = start , end = end );2425data = as.data.frame(read.csv( file = "data/MSCI_US.csv",skip=6,sep=","))26colnames(data) = c("Date","US")27#data$US[(as.character(data$US)=="#NA")]=NA;28MSCI_US = zoo( data$US , order.by = as.Date( as.character(data$Date) , format = "%m/%d/%Y" ) )29MSCI_US = window( MSCI_US , start = start , end = end );3031#data = as.data.frame(read.csv( file = "data/barclaysglobalbond.csv",skip=6,sep=","))32#data = as.data.frame(read.csv( file = "data/usgovbond.csv",skip=6,sep=","))33data = as.data.frame(read.csv( file = "data/MLDOMMASTER.csv",skip=6,sep=","))34colnames(data) = c("Date","bond")35#data$bond[(as.character(data$bond)=="#NA")] = NA;36bond = zoo( as.numeric(data$bond) , order.by = as.Date( as.character(data$Date) , format = "%m/%d/%Y" ) )37bond = window( bond , start = start , end = end );3839data = as.data.frame(read.csv( file = "data/SPGSCI.csv",skip=6,sep=","))40colnames(data) = c("Date","SPGSCI")41#data$SPGSCI[(as.character(data$SPGSCI)=="#NA")]=NA;42SPGSCI = zoo( data$SPGSCI , order.by = as.Date( as.character(data$Date) , format = "%m/%d/%Y" ) )43SPGSCI = window( SPGSCI , start = start , end = end );4445data = as.data.frame(read.csv( file = "data/SP500.csv",skip=6,sep=","))46colnames(data) = c("Date","SP500")47#data$SP500[(as.character(data$SP500)=="#NA")]=NA;48SP500 = zoo( data$SP500 , order.by = as.Date( as.character(data$Date) , format = "%m/%d/%Y" ) )49SP500 = window( SP500 , start = start , end = end );5051data = as.data.frame(read.csv( file = "data/MSCI_EAFEbis.csv",skip=0,sep=","))52colnames(data) = c("Date","EAFE")53MSCI_EAFEbis = zoo( data$EAFE , order.by = as.Date( as.character(data$Date) , format = "%Y%m%d" ) )54MSCI_EAFEbis = window( MSCI_EAFEbis , start = start , end = end );5556# Data Brian5758data = as.data.frame(read.csv( file = "data/SPGSCIbis.csv",skip=6,sep=","))59colnames(data) = c("Date","SPGSCI")60SPGSCIbis = zoo( data$SPGSCI , order.by = as.Date( as.character(data$Date) , format = "%Y%m%d" ) )61SPGSCIbis = window( SPGSCIbis , start = start , end = end );6263plot(SPGSCIbis)6465# Middle interest rate on secondary market 3-month treasury bill:6667data = as.data.frame(read.csv( file = "data/TBill.csv",skip=6,sep=","))68colnames(data) = c("Date","TBill")69#data$TBill[(as.character(data$TBill)=="#NA")]=NA;70# The rates listed on Treasury bills are annualized discount rates, assuming a year has 360 days.71# T-bill discount rate = [face value-bill price]*(360/number of days until maturity)72# A three month T-Bill has a maturity of 91 days73# The bond equivalent yield associated to the T-Bill is74# T-bill yield = [ (face value - bill price)/bill price ]x(365/number of days until maturity)75# The annualized yield is then (take face value of 1000):76# bill price = 100 - (91/360)*rate77# yield = {[(91/360)*rate]/[100 - (91/360)*rate]}*(365/91)78# See e.g. Mizrach, Bruce and Neely, Christopher J.,The Microstructure of the U.S. Treasury Market(April 2008). FRB St. Louis Working Paper No. 2007-052B. Available at SSRN: http://ssrn.com/abstract=10702267980# Bond-equivalent annualized yield81data$TBill = (91/360)*(365/91)*data$TBill/(100-data$TBill*(91/360) ) ;82TBill = zoo( data$TBill , order.by = as.Date( as.character(data$Date) , format = "%m/%d/%Y" ) )83TBill = window( TBill , start = start , end = end );8485# International equity + bond portfolio8687data = merge( bond , MSCI_Europe , MSCI_Japan , MSCI_US , TBill)88colnames(data) = c( "Bond" , "Europe", "Japan" , "US" , "TBill")89data = na.locf(data);90head(data); plot(data);91write.zoo( data , file="data/intequitybonds/data.txt" , row.names=F )92save( data , file = paste( getwd(),"/data/intequitybonds/intequitybonds.Rdata" , sep="") )9394# Mixed portfolio9596data = merge.zoo( bond , SP500 , MSCI_EAFEbis , SPGSCIbis , TBill)97colnames(data) = c( "Bond" , "SP500", "EAFE" , "SPGSCI" , "TBill")98data = na.locf(data);99head(data); plot(data);100write.zoo( data , file="data/equitybondscommodity/data.txt" , row.names=F )101save( data , file = paste( getwd(),"/data/equitybondscommodity/equitybondscommodity.Rdata" , sep="") )102103104105106