Lesson 13 of 15

Volatility Targeting

Volatility Targeting

Volatility targeting dynamically adjusts position size so that the portfolio maintains a constant level of risk regardless of changing market conditions. When markets become more volatile, you scale down; when volatility is low, you scale up.

Formula

position_size = capital × (target_vol / realized_vol)

Where:

  • target_vol — desired annualized volatility (e.g., 0.10 = 10%)
  • realized_vol — current measured volatility (e.g., from recent returns)
  • capital — total allocated capital

Properties

  • If realized_vol > target_vol: position is scaled below capital (risk-off)
  • If realized_vol < target_vol: position is scaled above capital (risk-on, can use leverage)
  • If realized_vol == target_vol: fully invested

Example

target_vol = 10%, realized_vol = 15%, capital = 1,000,000position=1,000,000×(0.10/0.15)=1,000,000 position = 1,000,000 × (0.10 / 0.15) = **666,666.67**

The portfolio is scaled to 66.7% invested to bring risk back to target.

Python runtime loading...
Loading...
Click "Run" to execute your code.