Description Usage Arguments Details Author(s) References See Also Examples

CAPM is estimated assuming that betas and alphas change
over time. It is assumed that the market prices of
securities fully reflect readily available and public
information. A matrix of market information variables,
*Z* measures this information. Possible variables in
*Z* could be the divident yield, Tresaury yield, etc.
The betas of stocks and managed portfolios are allowed to
change with market conditions:

1 | ```
CAPM.dynamic(Ra, Rb, Rf = 0, Z, lags = 1, ...)
``` |

`Ra` |
an xts, vector, matrix, data frame, timeSeries or zoo object of the asset returns |

`Rb` |
an xts, vector, matrix, data frame, timeSeries or zoo object of the benchmark asset return |

`Rf` |
risk free rate, in same period as your returns |

`Z` |
an xts, vector, matrix, data frame, timeSeries or zoo object of k variables that reflect public information |

`lags` |
number of lags before the current period on which the alpha and beta are conditioned |

`...` |
any other passthrough parameters |

*beta(zt) = b0 +
Bp'zt*

where *zt = Zt - E[Z]*

- a normalized vector of the deviations of *Zt*,
*Bp*

- a vector with the same dimension as *Zt*.

The coefficient *b0* can be interpreted as the
"average beta" or the beta when all infromation variables
are at their means. The elements of *Bp* measure
the sensitivity of the conditional beta to the deviations
of the *Zt* from their means. In the similar way
the time-varying conditional alpha is modeled:

*alpha(zt)
= a0 + Ap'zt*

The modified regression is therefore:

*r_{pt+1}=α_{0p}+A_{p}'z_{t}+b_{0p}r_{bt+1}+B_{p}'[z_{t}r_{bt+1}]+
μ_{pt+1}*

Andrii Babii

J. Christopherson, D. Carino, W. Ferson. *Portfolio
Performance Measurement and Benchmarking*. 2009.
McGraw-Hill. Chapter 12.

Wayne E. Ferson and Rudi
Schadt, "Measuring Fund Strategy and Performance in
Changing Economic Conditions," *Journal of Finance*,
vol. 51, 1996, pp.425-462

1 2 3 4 5 6 7 8 9 | ```
data(managers)
CAPM.dynamic(managers[,1,drop=FALSE], managers[,8,drop=FALSE],
Rf=.035/12, Z=managers[, 9:10])
CAPM.dynamic(managers[80:120,1:6], managers[80:120,7,drop=FALSE],
Rf=managers[80:120,10,drop=FALSE], Z=managers[80:120, 9:10])
CAPM.dynamic(managers[80:120,1:6], managers[80:120,8:7],
managers[80:120,10,drop=FALSE], Z=managers[80:120, 9:10])
``` |

Embedding an R snippet on your website

Add the following code to your website.

For more information on customizing the embed code, read Embedding Snippets.