Forward and Futures Pricing and Hedging › Hedging Equity Portfolio Risk
Quantitative FinanceAll chapters Forward and Futures Pricing and Hedging › Hedging Equity Portfolio RiskOne section · Sections in this chapter7 / 11 ↓
Reading tools Definitions & inline links
Choose your expertise level to adjust how many terms are explained. Beginners see more tooltips, experts see fewer to maintain reading flow. Hover over underlined terms for instant definitions.
Article links
Make inline references clickable
Let's work through a complete example of hedging equity portfolio risk with index futures. This practical application brings together the theoretical concepts we've developed and demonstrates how professional portfolio managers implement hedging strategies.
Problem Setup
You hold $10 million in a diversified US equity portfolio. The portfolio has a beta of 1.15 relative to the S&P 500. With market uncertainty rising, you want to reduce market exposure over the next three months using E-mini S&P 500 futures.
The E-mini S&P 500 futures contract has a multiplier of $50 per index point. Current futures price is 5,000. Your goal is to determine how many contracts to sell to neutralize your portfolio's market sensitivity.
Calculating the Hedge
For equity portfolios, beta serves a similar role to the minimum variance hedge ratio. If the portfolio has beta , a 1% market move translates to approximately a portfolio move. The hedge ratio is therefore . This makes intuitive sense: a portfolio that moves more than the market (high beta) requires more futures contracts to hedge than a portfolio that moves less than the market (low beta). We can calculate the required number of contracts as follows:
# Portfolio hedging calculation
portfolio_value = 10_000_000 # $10 million
portfolio_beta = 1.15
futures_price = 5000
contract_multiplier = 50
# Value of one futures contract
futures_contract_value = futures_price * contract_multiplier
# Number of contracts to fully hedge
n_contracts_full = portfolio_beta * portfolio_value / futures_contract_value
# Round to nearest whole number (can't trade fractional contracts)
n_contracts = round(n_contracts_full)Equity Portfolio Hedge Calculation ============================================= Portfolio value: $10,000,000 Portfolio beta: 1.15 Futures price: 5,000 Contract multiplier: $50 Futures contract value: $250,000 Contracts needed (exact): 46.00 Contracts to trade: 46
You should short 46 E-mini S&P 500 futures contracts to hedge your portfolio's market exposure. The slight difference between the exact calculation and the rounded number creates a small residual exposure, but this is unavoidable since fractional contracts cannot be traded.
Simulating Hedge Effectiveness
We can verify the hedge by simulating portfolio values across a range of market returns. This analysis demonstrates how the hedge performs in different market scenarios, from sharp declines to strong rallies:
import numpy as np
# Simulate hedge performance across different market scenarios
market_returns = np.linspace(-0.20, 0.20, 100) # -20% to +20%
# Portfolio return approximation: alpha + beta * market_return
alpha = 0.02 # Assume 2% alpha from stock selection
portfolio_returns = alpha + portfolio_beta * market_returns
# Futures P&L (short position)
actual_contracts = n_contracts
futures_notional = actual_contracts * futures_contract_value
futures_pnl = (
-futures_notional * market_returns
) # Short futures gains when market falls
# Unhedged vs hedged portfolio values
unhedged_values = portfolio_value * (1 + portfolio_returns)
hedged_values = portfolio_value * (1 + portfolio_returns) + futures_pnl
The hedged portfolio remains relatively stable regardless of market moves. The slight upward slope in the hedged line reflects the portfolio's alpha: stock-specific returns that aren't eliminated by the index hedge. This is the intended result. You retain alpha while eliminating beta (market) risk. In essence, the hedge isolates your stock-picking skill from the market's overall direction.
Partial Hedging and Beta Targeting
Sometimes full hedging isn't the goal. You might want to reduce beta from 1.15 to 0.5 rather than eliminating it entirely. Perhaps market conditions warrant caution but not complete defensive positioning. The number of contracts becomes:
where:
- : number of contracts
- : current portfolio beta
- : desired target beta
- : portfolio value
- : futures price
- : contract multiplier
This formula generalizes our full hedge calculation. When the target beta is zero, we recover the full hedge formula. When the target beta equals current beta, zero contracts are needed. The formula can also produce negative contract counts when you want to increase beta, indicating that long futures positions are required rather than short positions.
def contracts_for_target_beta(
portfolio_value, current_beta, target_beta, futures_price, multiplier
):
"""Calculate contracts needed to achieve target beta."""
return (
(current_beta - target_beta)
* portfolio_value
/ (futures_price * multiplier)
)
# Different beta targets
targets = [1.0, 0.5, 0.0, -0.5]
contracts_needed = [
contracts_for_target_beta(
portfolio_value, portfolio_beta, t, futures_price, contract_multiplier
)
for t in targets
]Beta Targeting with Futures ================================================== Current portfolio beta: 1.15 Target Beta Contracts Action -------------------------------------------------- 1.0 6.0 Short 0.5 26.0 Short 0.0 46.0 Short -0.5 66.0 Short

To go from beta 1.15 to a negative beta of -0.5, you would short significantly more contracts, effectively reversing market exposure. A negative beta means the portfolio profits when the market falls and loses when it rises. This might seem extreme, but some macro hedge funds deliberately take negative beta positions when they believe markets will decline.