kurtosis {PerformanceAnalytics} | R Documentation |
Kurtosis
Description
compute kurtosis of a univariate distribution
Usage
kurtosis(
x,
na.rm = FALSE,
method = c("excess", "moment", "fisher", "sample", "sample_excess"),
...
)
Arguments
x |
a numeric vector or object. |
na.rm |
a logical. Should missing values be removed? |
method |
a character string which specifies the method of computation.
These are either |
... |
arguments to be passed. |
Details
This function was ported from the RMetrics package fUtilities to eliminate a
dependency on fUtilties being loaded every time. This function is identical
except for the addition of checkData
and additional labeling.
Kurtosis(moment) = \frac{1}{n}*\sum^{n}_{i=1}(\frac{r_i - \overline{r}}{\sigma_P})^4
Kurtosis(excess) = \frac{1}{n}*\sum^{n}_{i=1}(\frac{r_i - \overline{r}}{\sigma_P})^4 - 3
Kurtosis(sample) = \frac{n*(n+1)}{(n-1)*(n-2)*(n-3)}*\sum^{n}_{i=1}(\frac{r_i - \overline{r}}{\sigma_{S_P}})^4
Kurtosis(fisher) = \frac{(n+1)*(n-1)}{(n-2)*(n-3)}*(\frac{\sum^{n}_{i=1}\frac{(r_i)^4}{n}}{(\sum^{n}_{i=1}(\frac{(r_i)^2}{n})^2} - \frac{3*(n-1)}{n+1})
Kurtosis(sample excess) = \frac{n*(n+1)}{(n-1)*(n-2)*(n-3)}*\sum^{n}_{i=1}(\frac{r_i - \overline{r}}{\sigma_{S_P}})^4 - \frac{3*(n-1)^2}{(n-2)*(n-3)}
where n
is the number of return, \overline{r}
is the mean of the return
distribution, \sigma_P
is its standard deviation and \sigma_{S_P}
is its
sample standard deviation
Author(s)
Diethelm Wuertz, Matthieu Lestel
References
Carl Bacon, Practical portfolio performance measurement and attribution, second edition 2008 p.84-85
See Also
Examples
## mean -
## var -
# Mean, Variance:
r = rnorm(100)
mean(r)
var(r)
## kurtosis -
kurtosis(r)
data(managers)
kurtosis(managers[,1:8])
data(portfolio_bacon)
print(kurtosis(portfolio_bacon[,1], method="sample")) #expected 3.03
print(kurtosis(portfolio_bacon[,1], method="sample_excess")) #expected -0.41
print(kurtosis(managers['1996'], method="sample"))
print(kurtosis(managers['1996',1], method="sample"))