require(fMultivar)
myFinCenter = "GMT"
# Download -> Data Slot -> As Time Series -> Close
# GET Closing Prices: 2005-06-01 until now - see help(yahooImport)
query = "s=^GDAXI&a=5&b=1&c=2005&d=0&q=31&f=2009&z=^GDAXI&x=.csv"
DAX.CLOSE = as.timeSeries(yahooImport(query)@data)[,"Close"]
query = "s=DCX.DE&a=5&b=1&c=2005&d=0&q=31&f=2009&z=DCX.DE&x=.csv"
DCX.CLOSE = as.timeSeries(yahooImport(query)@data)[,"Close"]
# Align to daily dates: --- So both time series will have afterwards the
same time stamps
# Consult help(timeSeries)
DAX.ALIGNED = alignDailySeries(DAX.CLOSE, method = "interp")
DCX.ALIGNED = alignDailySeries(DCX.CLOSE, method = "interp")
# Cut Common Piece from each: --- help(timeDate)
START = modify(c(start(DAX.ALIGNED), start(DCX.ALIGNED)), "sort")[2]
END = modify(c(end(DAX.ALIGNED), end(DCX.ALIGNED)), "sort")[1]
DAX.CUTTED = cutSeries(DAX.ALIGNED, from = START, to = END)
DCX.CUTTED = cutSeries(DCX.ALIGNED, from = START, to = END)
# Merge the two Series:
DCXDAX = mergeSeries(DCX.CUTTED, DAX.CUTTED at Data, units = c("DCX", "DAX"))
# Compute Return Series:
DCXDAX.RET = as.data.frame(returnSeries(DCXDAX))
# Compute Beta: --- linear Modelling:
c(Beta = lm(formula = DCX ~ DAX, data = DCXDAX.RET)$coef[2])
Beta.DAX
1.320997