Risk & volatility

Historical volatility

Historical volatility is a measure of how widely a stock’s returns varied over a past period, usually expressed as the standard deviation of returns at a specified daily or annualized frequency.

Calculate it: Value at Risk (VaR) Calculator for a Stock Position →

What it means

A stock’s past prices can be converted into a series of returns; historical volatility summarizes how much those returns fluctuated. It measures the size of past moves, not their direction. A stock that rose and fell sharply can have higher historical volatility than one whose returns stayed near zero.

Always check the measurement period and frequency. Daily volatility describes variation in daily returns. Annualized volatility scales a daily estimate for comparison over a trading year; it does not mean the stock will move by that percentage in a year. Historical volatility describes an observed sample, not a forecast or a maximum possible loss.

How it is calculated

One common method uses the sample standard deviation of daily simple returns:

r_t = (P_t / P_(t−1)) − 1; r̄ = (Σ r_t) / n; σ_daily = √[Σ(r_t − r̄)² / (n − 1)]; σ_annualized = σ_daily × √252

  • P_t is the adjusted closing price on day t; P_(t−1) is the previous adjusted closing price. Adjusted prices help account for corporate actions such as splits and dividends.
  • r_t is the day’s simple return, expressed as a decimal; r̄ is the mean of the sampled daily returns.
  • n is the number of daily returns, not the number of prices. The sum runs across all n returns, and n − 1 is the sample-variance denominator; at least two returns are required.
  • σ_daily is daily historical volatility, and σ_annualized is its annualized version. Multiply by 100 to express either as a percentage. The factor 252 is an approximate number of trading days in a year; square-root-of-time scaling is a convention whose assumptions may not hold in practice.

Other estimators use additional information: Parkinson uses intraday highs and lows, while Yang–Zhang incorporates overnight and intraday moves. An estimate depends on its method, data and lookback window.

Worked example

Suppose a hypothetical stock has five adjusted closing prices: US$100, US$110, US$110, US$99 and US$99. These produce four daily simple returns:

  1. US$110 / US$100 − 1 = 10%.
  2. US$110 / US$110 − 1 = 0%.
  3. US$99 / US$110 − 1 = −10%.
  4. US$99 / US$99 − 1 = 0%.

The mean return is 0%. Using decimal returns, the sum of squared deviations from that mean is 0.10² + 0² + (−0.10)² + 0² = 0.02. Divide by 4 − 1 = 3 and take the square root: σ_daily = √(0.02 / 3) ≈ 0.08165, or 8.16% per trading day. Annualizing mechanically gives 8.16% × √252 ≈ 129.6%. Four observations are far too few for a stable estimate; the example only illustrates the arithmetic.

Why it matters before you trade

Historical volatility helps put a proposed position’s size and potential daily fluctuations in context. For the same dollar position, a higher daily volatility estimate generally implies a larger volatility-based risk estimate, all else equal. It can also inform a pre-trade check of execution conditions: a stock with large price moves may have less predictable costs between deciding on a trade and its fill.

It does not capture every risk. Returns can gap around news, trading can become less liquid, and the next period can differ markedly from the sampled one. Spread, market impact and position size therefore matter alongside volatility.

How PreTrAIde uses it

PreTrAIde performs pre-trade analysis on a user-built stock basket before any order is placed. Its quantitative layer estimates daily volatility using blended estimators: Parkinson, close-to-close, Yang–Zhang and a simplified GARCH(1,1). It also calculates 1-day 95% value at risk and produces volatility scores for each stock and the basket. The resulting GO, NO-GO or MODIFY verdicts are decision support, not trade recommendations. Users place any trades themselves through their own broker.

Common mistakes

  • Confusing daily and annualized percentages: An annualized figure is not a daily move or a guaranteed yearly range.
  • Treating the estimate as a prediction: A past sample cannot establish future volatility or rule out extreme losses.
  • Ignoring methodology: Different lookback windows, return definitions, price adjustments and estimators can produce different results.
  • Equating volatility with trading cost: Volatility measures return dispersion; bid-ask spread and market impact describe different aspects of execution.

Frequently asked questions

How do you calculate historical volatility from stock prices?

Calculate returns from consecutive prices, then take their standard deviation over the chosen lookback period. For daily returns, multiplying daily volatility by the square root of approximately 252 gives a conventional annualized estimate.

What is the difference between historical and implied volatility?

Historical volatility is calculated from observed past returns. Implied volatility is inferred from option prices using an option-pricing model; the two measures need not match.

Does high historical volatility mean a stock will fall?

No. Historical volatility measures the magnitude of past return variation, not the direction of future returns. It also cannot rule out moves larger than those in the sample.

Related terms

Risk & volatility

Parkinson volatility estimator Yang-Zhang volatility estimator GARCH model Expected shortfall (CVaR) Beta Alpha Drawdown Maximum drawdown All glossary terms →

Check your next trade before you place it

Build a basket, run a pre-trade analysis, and get a GO, NO-GO or MODIFY verdict with the cost, liquidity and risk behind it.

Start your free trial Try the free tools

Educational content, not investment advice. PreTrAIde is analysis software, not a broker: it never executes orders, and its verdicts are decision support, not recommendations to buy or sell.