I want a running mean estimator that acts as a mode through mean reversion cycles of target amplitude or frequency. The key characteristics should be:
- adaptation to local volatility
- determination of diffusion related squared return
- determination of jump related squared return
- determination as to how much of the jump should be absorbed into the mean
- model of mean reversion
- calibrated to a desired long-run rate of reversion
- allowance for changes in reversion constant and reversion to long run
- model of mean
- innovations scaled by sigma term (with MR component and jumps removed)
- recursive backward estimation of ML
- implicitly decide how innovation is distributed amongst mean, mean-reversion, and noise
A SDE-based Approach
The model is an expanded variant of the familiar Ornstein–Uhlenbeck process, with specialized mean-reversion, mean, and volatility processes. It also attempts to correct for jumps. Let’s start with the following SDEs (in continuous time):
There are many approaches to modeling volatility (all with issues). Initially I had though to use a predictive model based on:
- intensity process (based on “first exit” duration)
This is a very complex process. First approximations have been to use ACD, a family of AR models for duration. ACD models perform very poorly on HF data however. It seems that a markov chain model recognizing the patterns will be most appropriate.
- amplitude process
The amplitudes of squared returns seem to follow a largely AR process. This seems fairly well behaved.
Before fully committing to a complex volatility model thought its makes sense to first try with a non-predictive measure of realized variance. I will use:
The choice of α determines the degree of smoothing with previous values based on how local (and noisy) we want this function to be. For example, here is the estimate with a smoothing factor of 60 and a threshold of 3e-5:
Using Ito’s lemma we discretise the processes as follows:
Simplifying the volatility term in S(t), we first determine the variance of the SDE:
We reorganize as follows:
Putting it together
We can now model this discretely as a state-space based filter, searching for parameters that fit a-posteriori idealized view on the mode and mean-reversion process. Post-parameterization, the process can be used in real-time to provide an estimate of the mode.
As you may have seen I took a (useful) 2-3 week diversion before coming back to the SDE based approach. This is not a final model by any means, but I think a a solid starting point. The purpose of the above is as a one of a number of factors in a multi-factor strategy that want to optimize further.