Description Usage Arguments Value Author(s) References See Also Examples
The Minimum Track Record Length responds to the following question: "How long should a track record be in order to have a p-level statistical confidence that its Sharpe ratio is above a given threshold?". Obviously, the main assumption is the returns will continue displaying the same statistical properties out-of-sample. For example, if the input contains fifty observations and the Minimum Track Record is forty, then for the next ten observations the relevant measures (sharpe ratio, skewness and kyrtosis) need to remain the same as the input so to achieve statistical significance after exactly ten time points.
1 2 3 4 5 6 7 8 9 10 11 12 13 |
R |
an xts, vector, matrix, data frame, timeSeries or zoo object of the returns input |
Rf |
the risk free rate |
refSR |
a single value or a vector when R is multicolumn. It defines the reference Sharpe Ratio and should be in the same periodicity as the returns (non-annualized). |
p |
the confidence level |
weights |
(if R is multicolumn and the underlying assets form a portfolio) the portfolio weights |
n |
(if R is NULL) the track record length of the returns |
sr |
(if R is NULL) the sharpe ratio of the returns |
sk |
(if R is NULL) the skewness of the returns |
kr |
(if R is NULL) the kurtosis of the returns |
ignore_skewness |
If TRUE, it ignores the effects of skewness in the calculations |
ignore_kurtosis |
If TRUE, it ignores the effects of kurtosis in the calculations |
A list containing the below
min_TRL: The minimum track record length value (periodicity follows R)
IS_SR_SIGNIFICANT: TRUE if the sharpe ratio is statistically significant, FALSE otherwise
num_of_extra_obs_needed: If the sharpe ratio is not statistically significant, how many more observations are needed so as to achieve this
Tasos Grivas <tasos@openriskcalculator.com>, Pulkit Mehrotra
Bailey, David H. and Lopez de Prado, Marcos, The Sharpe Ratio Efficient Frontier (July 1, 2012). Journal of Risk, Vol. 15, No. 2, Winter 2012/13
1 2 3 4 5 6 7 8 9 10 11 | data(edhec)
MinTrackRecord(edhec[,1],refSR = 0.23)
MinTrackRecord(refSR = 1/12^0.5,Rf = 0,p=0.95,sr = 2/12^0.5,sk=-0.72,kr=5.78,n=59)
### Higher moments are data intensive, kurtosis shouldn't be used for short timeseries
MinTrackRecord(edhec[,1:2],refSR = c(0.28,0.24), ignore_skewness = FALSE, ignore_kurtosis = FALSE)
MinTrackRecord(edhec[,1:2],refSR = c(0.28,0.24), ignore_skewness = FALSE, ignore_kurtosis = TRUE)
MinTrackRecord(edhec[,1:2],refSR = c(0.28,0.24), ignore_skewness = TRUE, ignore_kurtosis = TRUE)
MinTrackRecord(edhec[,1:2],refSR = 0.26,weights = c(0.5,0.5),
ignore_skewness = FALSE, ignore_kurtosis = FALSE)
|
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.