Skip to content
MoneyDeck

Historical Volatility Calculator

Paste closing prices and get annualized historical volatility

Updated · Free, no signup

At least 3 prices. Non-numeric text is ignored.

Annualized volatility

17.73%

Volatility per period

1.117%

Average log return per period

0.417%

Returns used

20

Typical 1-month move (1σ)

$5.56

Typical 1-year move (1σ)

$19.27

Total price change

8.7%

  • 20 daily returns have a standard deviation of 1.117%; × √252 gives 17.73% annualized.
  • From $108.70, a one-standard-deviation move is about ±$5.56 over a month and ±$19.27 over a year (about 68% of outcomes, if returns are normal).

Price series

Period returns

#CloseReturnLog return
2101.201.2%0.01193
3100.50-0.692%-0.00694
4102.301.791%0.01775
5103.100.782%0.00779
6102.40-0.679%-0.00681
71041.563%0.0155
8103.20-0.769%-0.00772
9105.101.841%0.01824
10104.60-0.476%-0.00477
111061.338%0.0133
12105.20-0.755%-0.00758
13104.10-1.046%-0.01051
14105.801.633%0.0162
15107.201.323%0.01315
16106.50-0.653%-0.00655

About the Historical Volatility Calculator

This historical volatility calculator measures how much a stock, ETF, index, currency or crypto price has actually moved. Paste a list of closing prices, oldest first, choose whether they are daily, weekly or monthly, and it computes the standard deviation of the log returns and annualizes it — the same “realized” or “statistical” volatility that options traders compare with implied volatility.

Use it to compare the riskiness of two holdings, to check whether options look cheap or expensive relative to recent movement, or to size positions and stops. The result also translates volatility into a typical one-standard-deviation price move over the next day, month and year, assuming returns are roughly normally distributed.

By convention, daily data is annualized with 252 trading days, weekly with 52 and monthly with 12; crypto trades every day, so choose the 365-day option for it. Twenty to thirty daily closes give the common 20- or 30-day volatility; more data gives a steadier long-run figure. Past volatility does not predict future volatility, which changes quickly around earnings and market stress.

With the default inputs, the annualized volatility is 17.73%. Change any value above to recalculate instantly.

How to use the historical volatility calculator

  1. 1Download closing prices from your broker or a finance site.
  2. 2Paste them into the box, oldest first (commas, spaces or new lines all work).
  3. 3Choose the interval: daily, weekly or monthly.
  4. 4Read the annualized volatility and compare it with the option’s implied volatility.
  5. 5Use the 1-month and 1-year moves to sense-check targets and stop levels.

Formula and method

rₜ = ln(Pₜ ÷ Pₜ₋₁) σ = √[Σ (rₜ − r̄)² ÷ (n − 1)] σ_annual = σ × √N

Each period’s continuously compounded (log) return is the natural log of today’s close divided by the previous close. Historical volatility is the sample standard deviation of those n returns (dividing by n − 1), which measures how widely returns scatter around their average.

Volatility scales with the square root of time when returns are independent, so the per-period figure is annualized by multiplying by √N, where N is the number of periods in a year: 252 trading days, 365 calendar days for markets that never close, 52 weeks or 12 months. The typical move over a horizon of h periods is price × σ × √h, which covers roughly two-thirds of outcomes under a normal distribution.

Pₜ
Closing price in period t
rₜ
Log return in period t
r̄
Average log return
n
Number of returns (prices − 1)
N
Periods per year (252, 365, 52 or 12)

Worked examples

21 daily closes of a steadily rising stock

The 20 daily log returns average 0.417% with a sample standard deviation of 1.12%. Multiplying by √252 ≈ 15.87 gives annualized volatility of about 17.7%, typical of a large-cap stock in a calm market.

Monthly prices of a volatile stock

Twelve monthly returns swing between roughly −13% and +15%, giving a monthly standard deviation of 10.7%. Annualized with √12 that is about 37.2% — a high-volatility stock.

Weekly prices of an index fund

Nine weekly returns with a standard deviation of about 1.09% annualize to roughly 7.9% (× √52), a quiet stretch for a broad index fund.

Frequently asked questions

How do you calculate historical volatility?+

Take the natural log of each closing price divided by the previous close, compute the sample standard deviation of those log returns, and multiply by the square root of the number of periods in a year — √252 for daily trading data, √52 for weekly or √12 for monthly.

Why use 252 days instead of 365?+

Stock and bond markets trade about 252 days a year, so daily price changes only occur on those days. Using 252 annualizes the volatility of trading-day returns correctly. Crypto and some FX data have prices every calendar day, so 365 is appropriate there.

What is the difference between historical and implied volatility?+

Historical volatility is calculated from past price moves. Implied volatility is backed out of current option prices and reflects the market’s expectation of future movement. Traders compare the two: implied well above historical can mean options are expensive.

What is a normal volatility for a stock?+

Broad indexes such as the S&P 500 often run around 12%–20% annualized in normal markets. Large established companies are commonly 20%–35%, while small caps, biotech and crypto can exceed 60%–100%. Volatility rises sharply during sell-offs.

Should I use log returns or simple returns?+

Log returns are the standard for volatility because they add up over time and match the assumptions of the Black–Scholes model. For typical daily moves the difference from simple percentage returns is tiny, but log returns are more consistent for large moves.

Results are estimates for educational purposes and are not financial advice. Rates, fees and terms vary — confirm with your lender or a licensed advisor before making decisions.

Related tools