DOCS Introduction to Financial Derivatives
Contracts built on top of other assets — and they run the financial world
Learning Objectives
- •Understand what derivatives are and why they exist
- •Know the main types: forwards, futures, options, swaps
- •See how derivatives relate to quantitative trading
Explain Like I'm 5
A derivative is a contract whose value is derived from something else. A stock option's value depends on the stock price. A futures contract depends on the commodity price. They're called "derivatives" because they derive from an underlying asset. The concept is simple — they let you bet on price moves, hedge risk, or gain amplified exposure. What makes them fascinating is the math required to price them correctly.
Think of It This Way
Derivatives are like side bets at a sports game. The main "asset" is the game itself. But you can make side bets (derivatives) on: the final score (futures), whether a team scores more than 100 points (call option), the halftime lead (barrier option). The side bets derive their value from the game's outcome. Most of the financial action is in the side bets, not the game itself.
1Types of Derivatives
2Why Quants Care About Derivatives
3How Derivatives Connect to Everything
4Common Beginner Mistakes
Long Call vs Long Put Payoff at Expiry (K=100, Premium=5)
Key Formulas
Put-Call Parity
Fundamental relationship between call (C), put (P), stock (S), strike (K), rate (r), and time (T). If this doesn't hold, there's a risk-free arbitrage opportunity.
Hands-On Code
Basic Derivative Payoffs
import numpy as np
def option_payoff(spot_prices, strike, premium, option_type='call', position='long'):
"""Compute option payoff at expiration."""
if option_type == 'call':
intrinsic = np.maximum(spot_prices - strike, 0)
else:
intrinsic = np.maximum(strike - spot_prices, 0)
if position == 'long':
payoff = intrinsic - premium
else: # short
payoff = premium - intrinsic
print(f"=== {position.upper()} {option_type.upper()} @ K={strike} ===")
print(f"Premium paid: {premium:.2f}")
print(f"Max loss: {premium:.2f}" if position == 'long' else f"Max loss: unlimited")
return payoff
# Example: long call on SPX at strike 5000
# spot = np.linspace(4800, 5200, 100)
# payoff = option_payoff(spot, strike=5000, premium=50, option_type='call')Computes option payoff at expiration for calls and puts, showing the asymmetric risk profile that makes derivatives powerful for risk management.
Knowledge Check
Q1.You buy a call option with strike $100 for a premium of $5. The stock ends at $108 at expiration. What's your profit?
Assignment
Plot payoff diagrams for: long call, short call, long put, short put, and a straddle (long call + long put at same strike). Understand how combining options creates complex payoff structures.