日次リターンから年率ボラティリティを算出
記事 Quant Q&A · 著者: Orvar Korvar
サマリー
ローリング期間の日次株式リターンから推定したボラティリティを年率換算する方法を説明します。リターンが独立同分布で、分散が経過時間に比例するという前提では、日次リターンの標準偏差が日次ボラティリティの推定値になります。年間252取引日として、この日次推定値に252の平方根を掛けると年率ボラティリティになります。推定期間内の観測数は推定に使うデータ量を左右しますが、年率換算係数は変えません。
一見すると別の方法に見える、6日間のボラティリティに252を6で割った値の平方根を掛ける計算は、入力値が6日間の累積リターンのボラティリティである場合に適用されます。換算前に、測定したリターンがどの時間単位を表すかを確認することが重要です。この説明は、リターン分布と独立性について述べられた前提に依拠しています。依存関係、ボラティリティの変化、または異なる観測頻度があると、単純な平方根時間則による換算が不正確になる場合があります。ここでは日次リターンを扱い、標本標準偏差と母標準偏差などの推定方法の選択には踏み込みません。
主なアイデア
- 年率換算はローリング推定期間の長さではなく、各リターンが表す時間間隔によって決まります。
- 日次リターンのボラティリティを年率換算するには、年間取引日数の平方根を掛けます。
- 累積リターンのボラティリティを入力とする場合は、そのリターンの時間間隔に基づく平方根時間調整を使います。
- この換算方法は、リターンが独立しており、分散が経過時間に比例することを前提とします。
- 年率換算の前に、入力値が日次リターンか複数日リターンかを確認してください。
タグ
全文
# Annualized rolling volatility?
# Annualized rolling volatility?
I have 600 days of closing prices of a stock. I want to calculate the annualized volatility for 6 day window. How do i do that?
If I calculate the std dev of the first 6 days, i get, say 1%. This is the daily volatility of the first 6 days. To annualize it, should i just multiply 1% with sqrt(252)? Or, is this 1% the daily volatility of 6 days? In that case i should multiply with sqrt(252/6)? Is this number 1% the daily volatility for 1 day, or is it the dayily volatility for 6 days?
I dont get it, I am missing a parameter. The period should also be involved in the calculation, right?
So to annualize 6 day volatility, i multiply with sqrt(252/6)? And when do i multiply with sqrt(252)?
UPDATE1: Ami44 writes that the correct procedure to annualize a 6 day window, is to multiply with sqrt (252/6). See Converting 30day annualized vol to 2day annualized vol
UPDATE2: in the answer below, ForeignVolatility says that I should multiply with sqrt (252). This is contradictory to "UPDATE1" above. So I am confused. Should I multiply with sqrt (252) or sqrt(252/6)? And, if I have a 30 day window, should I still multiply with sqrt (252), or should I use sqrt(252/30)? Great confusion. Some say Ba, and other say Bu.
## Answer by foreignvol (score 4, accepted)
https://quant.stackexchange.com/a/70867
We work in annual units because $T=1$ means one year. This means that the time units must be converted to portions of a year. For example, in the case of daily observations, $\Delta t = 1 / 252$. Hence, in your example, we multiply by $\sqrt{252}$ because it's assumed that the variance is measured daily.
More generally, say you have $n$ returns observed with frequency $\Delta t$ arbitrary. Assume they are i.i.d. and follow a distribution $N(0,\sigma^2\Delta t)$. You then have $$ \mathbb E\left[\frac 1n \sum_{t=1}^n r_t^2\right] = \frac 1n \sum_{t=1}^n\mathbb E\left[r_t^2\right] = \frac 1n \sum_{t=1}^n\sigma^2\Delta t = \sigma^2\Delta t. $$ What you described, the sdt dev of the first 6 days, corresponds to the square-root to an estimation of the LHS with $n=6$. The value you're looking for is $\sigma^2$. Hence, you need to multiply by $1/\sqrt{\Delta t} = 1/(1/\sqrt{252}) = \sqrt{252}$.出典を明記したうえで、ライセンスに従って全文を掲載しています。 ライセンス: CC BY-SA 4.0 (Stack Exchange)
この要約は原文をもとにStratmillのリサーチエージェントが作成したもので、出典の複製ではありません。