Skip to content
All library documents

Annualizing Volatility from Daily Returns with Limited Data

Article Quant Q&A · Author: C.A

Summary

The document asks how to estimate monthly stock volatility when only about a month of daily closing prices is available. Its answer uses the standard square-root-of-time scaling under an assumption that daily log returns are independent and identically distributed. Monthly volatility is estimated by multiplying daily volatility by the square root of the assumed number of trading days in a month; annual volatility uses the corresponding yearly trading-day count.

The answer also corrects a notation misunderstanding: the example’s monthly calculation uses a square-root multiplier, not a direct multiplication by the number of days. The method explains how to scale a daily estimate, but it does not make a short sample more reliable or establish that a year of data is required for correctness. Estimates from limited observations remain uncertain, and the scaling can fail when returns are dependent or volatility changes over time. The response does not discuss confidence intervals, alternative estimators, or adjustments for non-trading days.

Key ideas

  • Daily volatility can be scaled to a longer horizon by the square root of the number of trading periods, under independent and identically distributed returns.
  • Monthly and annual estimates use different assumed counts of trading days.
  • The example’s monthly scaling uses a square root, rather than multiplying daily volatility directly by the period count.
  • A short return history can produce an uncertain estimate, and the scaling assumption may not hold when volatility or return dependence changes.

Tags

Full text
# Volatility for time periods with little data


# Volatility for time periods with little data












When I want the monthly volatility of stock and I only have data for about one month and I do calculation like this:

```
  Date  Close      Daily Returns   STDEV               STDEV * 24
    2015-07-15  162.1           
    2015-07-14  164.5   0.0148056755    0.0165791585    0.0812209576
    2015-07-13  165     0.0030395137        
    2015-07-10  160.7   -0.0260606061       
    2015-07-09  158     -0.0168014935       
    2015-07-08  154.2   -0.0240506329       
    2015-07-07  154.6   0.0025940337        
    2015-07-06  157.5   0.0187580854        
    2015-07-03  160.8   0.020952381     
    2015-07-02  161.2   0.0024875622        
    2015-07-01  161     -0.0012406948       
    2015-06-30  156.1   -0.0304347826       
    2015-06-29  158     0.0121716848        
    2015-06-26  162.5   0.0284810127        
    2015-06-25  162     -0.0030769231       
    2015-06-24  160.7   -0.0080246914       
    2015-06-23  162.9   0.0136901058        
    2015-06-22  159.4   -0.021485574        
    2015-06-19  156.6   -0.017565872        
    2015-06-16  157.8   0.0076628352        
    2015-06-15  156     -0.0114068441       
    2015-06-12  159     0.0192307692        
    2015-06-11  158.9   -0.0006289308       
    2015-06-10  159.3   0.0025173065
```

So I get 8.1% in monthly volatility. Is this correct calculation or do I have to have one year of data for it to be "correct"? Cheers

## Answer by rbm (score 4)

https://quant.stackexchange.com/a/26338

Not sure why you're multiplying by 24?

EDIT: got confused by your `STDEV * 24`, you meant (and calculated) `STDEV * SQRT(24)`

If $X_i$ is random variable representing daily log returns, and assuming that log returns are i.i.d. then volatility of monthly return is

$\sigma_{monthly}=\sqrt{21}\times\sigma_{daily}$

(assuming 252 days a year, i.e. $252/12=21$ per month).

and consequently, the yearly vol is

$\sigma_{annual}=\sqrt{252}\times\sigma_{daily}$

Shown in full with attribution under the source's licence. Licence: CC BY-SA 4.0 (Stack Exchange)

This summary was written by Stratmill's research agent from the original; it is not a copy of the source.