R

如何估計我在 R 上擁有的一些均值恢復數據的 Ornstein-Uhlenbeck 參數?

  • April 1, 2015

我的意思是恢復數據(2 個股票價格的差異,我想進行配對交易)。我想模擬我自己的均值還原數據,使其盡可能與我擁有的真實數據相似。

我想採用的方法是最小二乘回歸。最大概似法太複雜了。

謝謝你們。

類似於胡安吉爾的回答,但有點不同,我會基於說以下內容:

OU 流程

$$ dX_t = \kappa(\theta-X_t)dt + \sigma dW_t $$有時可以(Euler-Maryuama 離散化)離散化 $ n \Delta t,n=1,\ldots,\infty $ 這給出了 $ t = k \Delta t $ $$ X_{k+1} - X_k = \kappa \theta \Delta t -\kappa X_k \Delta t + \sigma (W_{k+1} - W_k), $$ 重新安排和設置 $ \sigma (W_{k+1} - W_k) = \sigma \sqrt{\Delta t} \epsilon_k $ 我們得到: $$ X_{k+1} = \kappa \theta \Delta t - (\kappa \Delta t - 1) X_k + \sigma \sqrt{\Delta t} \epsilon_k. $$ 因此,您可以對 AR(1) 過程進行建模,然後使用上面的等式辨識參數。 再想一想大概可以離開 $ X_{k+1} - X_k $ 在 lhs 上,然後簡單地進行回歸,但我不確切知道這種情況下的誤差項。

我在 R 程式碼中發現了這一點,使用了 MLE 方法。您可以在這個 Stack Overflow question中找到各種解決方案。

對於 Ornstein-Uhlenbeck 過程,最大概似參數是來自最小二乘回歸的參數。

如果您的流程是:

$$ dX=\kappa (\theta-X)dt+\sigma dW $$ 你可以做一個線性回歸的形式

$$ \frac{dX}{dt}=a+bX+\epsilon $$ 所以你的參數將是:

$$ \kappa=-b $$ $$ \theta=-\frac{a}{b} $$ $$ \sigma=std(\epsilon dt) $$

引用自:https://quant.stackexchange.com/questions/17156