I have a series of price returns of an asset (4 days worth of data). They are relatively high-frequency.
My ultimate goal is to calculate realized volatility, but using a student's t-distribution.
I have fit a two-scale realized volatility (TSRV) model to the returns, then scaled that by sqrt(252) to annualized volatility. The results look reasonable and are close to industry reported numbers. However, I want a student's t-distribution instead.
And the returns don't look normally distributed. So, I'd like to fit a student's t-distribution. Following the advice I have found online, the degrees-of of freedom can be calculated from the excess kurtosis:
k <- np.mean(rets**4) / np.mean(rets**2)**2
excessK <- k-3
df <- 6/excessK + 4
variance <- nu / (nu-2)
sd <- sqrt(nu-2/2)
My questions:
- How do I scale it to an annualized basis?
- How do I determine the optimal sampling frequency? (Obvious 1 second has too much noise, but 1 day is missing data.)
- With an assumed Gaussian distribution, the TSRV methods work well. Is there an equivalent process for a t-distribution?
Thank you!