PYTHONintermediate~55 min
Binomial / American Pricer
Build a Cox-Ross-Rubinstein lattice, confirm it converges to Black-Scholes, then price an American put and report the early-exercise premium.
Task brief
README.md
# Binomial / American Pricer **Role relevance:** Quant developer take-home **Estimated time:** 55 minutes **Difficulty:** Intermediate **Format:** Python (.py) ## What you are given - binomial_pricer_starter.py with the function signatures stubbed and a self-check harness - A closed-form Black-Scholes function, for the convergence check only ## What you must deliver 1. CRR tree parameters with a guard on the risk-neutral probability 2. European call and put by backward induction, converging to Black-Scholes 3. An American put via max(continuation, intrinsic) at each node 4. The early-exercise premium, and a comment on when it is largest ## Constraints & assumptions Standard library only - math and statistics, no numpy or scipy. Non-dividend-paying stock. One rolling array is enough storage; do not build the full tree. ## Submission note Complete the starter file, then compare your work against the mark scheme.
What you'll learn
- Price any option on a lattice by backward induction
- Understand why American puts can be exercised early and calls on a non-dividend stock cannot
- Demonstrate convergence of the tree to the closed form