# How to calibrate an O-U process based on historical data?

Background: I have been working on my master thesis project for the last few months and gave the final presentation on the 2023-06-01. As a part of the master thesis project, I did a complete derivation of the historical calibration of an O-U process when it is used to model interest rates and foreign exchange rates. The derivation process was excluded from the final report as the report became too long. Still, I'd like to share the knowledge with anyone might need it. So, enjoy! =)

Specifying an O-U process as follows: $$d{y(t)} = -\kappa(y(t) - \theta)d{t} + \sigma d{W(t)},$$ where $$\kappa$$ is the mean-reverting rate, $$\theta (t)$$ is the mean-reverting level, $$\sigma$$ is the volatility parameter, and $$W(t)$$ is a Wiener process.

Suppose there is a historical time series of $$y(t_i)$$ with $$t_i \in \{t_1,t_2,\ldots, t_N\}$$. The historical time points are equally spaced with $$t_1 < t_2 < \ldots < t_N$$ and $$\delta := t_{i+1} - t_i$$. The parameters of the O-U process can be calibrated based on historical data by using the formulas below.

Mean-reverting level $$\hat{\theta} = \frac{1}{N}\sum_{i=1}^{N}y(t_i)$$

Mean-reverting rate $$\hat{\kappa} = \frac{1}{2\delta}\frac{\sum_{i=2}^{N}(y(t_i) - y(t_{i-1}))^2}{\sum_{i=1}^{N}(y(t_i) - \hat{\theta})^2}$$

Volatility $$\hat{\sigma} = \sqrt{(2\hat{\kappa} - \hat{\kappa}^2 \delta)\frac{\sum_{i=1}^{N}(y(t_i) - \hat{\theta})^2}{N-1}}$$

• This is somewhat useful and looks correct on a cursory look. Not being (i) a question or (ii) an answered question, it may fail to pass various requirements for posts on quant.SE. Note: I perosnally would find this more interesting if irregular measurement times were considered. Commented Jun 18, 2023 at 23:36
• Thank you for the comments. Could you please elaborate on potential use cases of historical calibration based on data with irregular spaces between adjacent time points? Thanks! Commented Jun 21, 2023 at 12:01