[R-sig-dyn-mod] How to estimate the Hurst exponent in a stable and effective way?
Thomas Petzoldt
Thomas.Petzoldt at TU-Dresden.de
Thu Jun 24 23:53:54 CEST 2010
Hello Mogei Wang,
technically speaking your usage seems mostly correct, though you may
consider to look the full output of the methods not only H.
Another technical hint: R is not C, so don't use trailing ";"
Now to the contents: as you observe yourself, different methods yield
different results, and sometimes even values outside (0,1). This can be
puzzling, but is not uncommon because all methods are approximations
which rely on certain assumptions.
There are lots of publications around, here are a few sources to start with:
1) A recent paper about the pros and cons, well readable and with
illustrative figures:
Serinaldi, F. (2010) Use and misuse of some Hurst parameter estimators
applied to stationary and non-stationary financial time series. Physica
A 398, 2770--2781.
2) A website with an "experience report" about Hurst exponents and some
additional links: http://www.bearcave.com/misl/misl_tech/wavelets/hurst/
3) Specifically for periodic time series the following may help you
(though I assume that periodicity of the test set was not really
intentional):
Montinari, A. et al. (1999) Estimating Long-Range Dependence in the
Presence of Periodicity: An Empirical Study. Mathematical and Computer
Modelling 29, 217--228.
To get some graphical insight you may consider to experiment a little
bit with time series with known behavior:
library(fractal)
# set.seed(12375) ##
rwalk <- cumsum(rnorm(2^12))
random <- rnorm(2^12)
straigt <- 1:(2^12)
## method "aggabs"
hurstBlock(rwalk)
hurstBlock(random)
hurstBlock(straight)
hurstBlock(rwalk, method="aggvar")
hurstBlock(random, method="aggvar")
hurstBlock(straight, method="aggvar")
hurstBlock(rwalk, method="higuchi")
hurstBlock(random, method="higuchi")
hurstBlock(straight, method="higuchi")
library(fArma)
## hurstSlider gives you a graphical interface and viaualization
hurstSlider(rwalk)
hurstSlider(random)
hurstSlider(straight)
Note also that all these methods have additional tuning parameters!
Thomas Petzoldt
PS: Thanks for pointing to package fArma, that I didn't know yet. As far
as I can see the results seem plausible, compared to package "fractal"
that I used recently.
More information about the R-sig-dynamic-models
mailing list