Learn R Programming

PerformanceAnalytics (version 0.9.5)

KellyRatio: calculate Kelly criterion ratio (leverage or bet size) for a strategy

Description

Kelly criterion ratio (leverage or bet size) for a strategy.

Usage

KellyRatio(Ra, rf = 0, method="half")

Arguments

Ra
a vector of returns to perform a mean over
rf
risk free rate, in same period as your returns
method
method=half will use the half-Kelly, this is the default

Value

  • Kelly Ratio or Bet/Leverage Size

Details

The Kelly Criterion was identified by Bell Labs scientist John Kelly, and applied to blackjack and stock strategy sizing by Ed Thorpe.

The Kelly ratio can be simply stated as

bet size is the ratio of edge over odds

mathematically, you are maximizing log-utility

Kelly criterion says: f should equal the expected excess return of the strategy divided by the expected variance of the excess return, or

$$leverage=\frac{(\overline{R}_{s}-R_{f})}{StdDev(R)^{2}}$$

As a performance metric, the Kelly Ratio calculated retrospectively on a particular investment will give you a measure of the edge that investment has over the risk free rate. It may be use as a stack ranking method to compare investments in a manner similar to the various ratios related to the Sharpe ratio.

References

Thorp, Edward O. (1997; revised 1998). The Kelly Criterion in Blackjack, Sports Betting, and the Stock Market. http://www.bjmath.com/bjmath/thorp/paper.htm http://en.wikipedia.org/wiki/Kelly_criterion

Examples

Run this code
data(edhec)
                                                                                                                                                              edhec.length = dim(edhec)[1]
    start = rownames(edhec[1,])
    end = rownames(edhec[edhec.length,])

    rf.zoo = download.RiskFree(start = start, end = end)

    for (i in 1:ncol(edhec)) {print(colnames(edhec)[i]); print(KellyRatio(edhec[,i],rf=rf.zoo))}

Run the code above in your browser using DataLab