FernholzDecomp: Fernholz's Decomposition for a Buy-and-hold Toy Market

Description Usage Arguments Details Value References See Also Examples

Description

The function FernholzDecomp computes the Fernholz decomposition of a functionally generated portfolio.

Usage

1
FernholzDecomp(market, portfolio, plot = TRUE)

Arguments

market

a toymkt object where market$buy.and.hold is TRUE.

portfolio

an fgp object represents a functionally generated portfolio.

plot

TRUE or FALSE. If TRUE, the Fernholz decomposition will be plotted. The default value is TRUE.

Details

Functionally generated portfolios (see fgp) and Fernholz's decomposition play an important role in stochastic portfolio theory.

In this context, the benchmark portfolio is a buy-and-hold market portfolio (modeled as a toymkt object in this package). The portfolio weights of the benchmark is represented by the market weight μ(t). The portfolio manager chooses portfolio weights π(t).

Let V(t) be the growth of $1 of the manager's portfolio divided by that of the benchmark. Initially V = 1 and it increases when the manager outperforms the market. The quantity log(V(t)) is called the relative log return.

For a functionally generated portfolio, the portfolio weights π(t) are deterministic functions of the current market weight μ(t). More precisely, the portfolio weights π(t) are given by the derivatives of log(Φ) at μ(t), where Φ is called the generating function. See the references for more details (the notation here follows that of Pal and Wong (2014)).

In this case, Fernholz's decomposition states that the relative log return has the decomposition

log(V(t)) = [log(Φ(μ(t))) - log(Φ(μ(0)))] + Θ(t),

where Θ(t) is called the drift process. Note that the first term depends only on the current and initial positions of the market weights. The drift process is determined by the portfolio and the cumulative amount of market volatility. This is the decomposition implemented by the function FernholzDecomp. See also Chapter 6 of Fernholz (2002).

Value

A list containing the following components.

portfolio

growth of $1 of the portfolio.

benchmark

growth of $1 of the market portfolio.

relative.return

cumulative excess log return with respect to the market portfolio.

generating function

change of the log of the generating function.

drift

drift process.

References

Fernholz, E. R. (2002) Stochastic portfolio theory. Springer.

Pal, S. and T.-K. L. Wong (2014). The geometry of relative arbitrage. arXiv preprint arXiv:1402.3720.

See Also

fgp

Examples

1
2
3
4
# Plot the Fernholz decomposition for the entropy-weighted portfolio
data(applestarbucks)
market <- toymkt(applestarbucks)
output <- FernholzDecomp(market, EntropyPortfolio, plot = TRUE)

Example output

Loading required package: zoo

Attaching package: 'zoo'

The following objects are masked from 'package:base':

    as.Date, as.Date.numeric

Warning message:
In toymkt(applestarbucks) :
  Since initial.weight is not given, the benchmark is assumed to be equal-weighted initially.

RelValAnalysis documentation built on May 2, 2019, 3:09 a.m.