Exam FM — Common Traps Flashcards
A fast-recall cram deck of the classic Exam FM mistakes — timing, rate-conversion, premium/discount sign, amortization vs sinking fund, dollar- vs time-weighted return, duration and immunization slips — each card naming the trap and the fix.
Import this deck
Download all 36 cards and import them into your flashcard app (JSON or CSV — works with Anki). Using the Willys app? No import needed — this deck is already built in (Settings → Library → Browse).
Every deck is built into the Willys app
All of these decks — including the full practice problem banks — come built into Willys AI Flashcards & Quizzes for iPhone & iPad (Mac version coming soon), with FSRS + SM-2 spaced repetition, streaks, and exam-date cram mode. 14-day free trial, then $14.99. To load a deck in the app: Settings → Library → Browse, then pick your exam and deck.
More Exam FM decks:
Browse all 36 cards as a list
- TimingValuing a $10$-payment annuity-**due** at $i=6\%$ — the #1 error?Using the annuity-immediate factor and forgetting the timing shift. Due payments come at the **start** of each period, one period earlier, so they're worth $(1+i)$ more: $\ddot{a}_{\overline{n|}}=(1+i)\,a_{\overline{n|}}$. Likewise $\ddot{s}_{\overline{n|}}=(1+i)\,s_{\overline{n|}}$. Trap: applying $a_{\overline{10|}}$ when payments are at times $0,1,\dots,9$.
- TimingQuick check: how do the *subscripts* of immediate vs due annuities compare for the same $n$ payments?Same number of payments, different valuation date. $a_{\overline{n|}}$ values at one period before the **first** payment; $\ddot{a}_{\overline{n|}}$ values **at** the first payment. So $\ddot{a}_{\overline{n|}}=a_{\overline{n|}}(1+i)=1+a_{\overline{n-1|}}$ and $\ddot{s}_{\overline{n|}}=s_{\overline{n+1|}}-1$. Memorize one identity each direction so you can convert under pressure.
- TimingA loan is repaid with end-of-month deposits, but the problem says "due." Default assumption?Don't assume! If the cash flow timing isn't stated, **annuity-immediate** is the default on FM, but always re-read. The phrase "payments at the beginning of each period," "annuity-due," or "first payment today" signals due — multiply the immediate factor by $(1+i)$. Drawing a timeline of $t=0,1,2,\dots$ before plugging in prevents the whole class of timing errors.
- Rate conversionInterest is "$8\%$ compounded quarterly." You discount with $v=(1.08)^{-1}$. What broke?$8\%$ is a **nominal** annual rate $i^{(4)}=0.08$, not effective. The per-quarter rate is $\frac{i^{(m)}}{m}=\frac{0.08}{4}=0.02$. Either work in quarters at $2\%$, or convert to an annual effective rate $i=\left(1+\frac{i^{(m)}}{m}\right)^{m}-1=1.02^{4}-1\approx 8.24\%$. Never discount an annual nominal rate as if it were effective.
- Rate conversionNominal **discount** $d^{(m)}$ vs nominal interest $i^{(m)}$ — the conversion slip?They use *different* per-period operations. Effective: $\left(1+\frac{i^{(m)}}{m}\right)^{m}=\left(1-\frac{d^{(p)}}{p}\right)^{-p}=1+i=v^{-1}$. Trap: treating $d^{(m)}/m$ like an interest rate. The per-period **discount** factor is $\left(1-\frac{d^{(m)}}{m}\right)$, applied as a *deduction in advance*, not $\frac{1}{1+\,\cdot}$.
- Mismatched periodsPayments are annual but interest converts **monthly** at $i^{(12)}=12\%$. Which rate goes in $a_{\overline{n|}}$?Match the rate to the **payment** period. The annuity factor needs the *annual effective* rate over the payment interval: $i=\left(1+\frac{0.12}{12}\right)^{12}-1\approx 12.6825\%$. Trap: plugging $1\%$ (the monthly rate) or $12\%$ (nominal) directly into a yearly-payment annuity. First convert the conversion-period rate to the payment-period effective rate.
- Mismatched periodsMonthly payments, but the yield is given as an **annual effective** $i=6\%$. What's the fix?Convert the annual effective rate **down** to the monthly effective rate before valuing: $j=(1+i)^{1/12}-1=1.06^{1/12}-1\approx 0.4868\%$. Then use $n=12\times(\text{years})$. Trap: dividing $6\%$ by $12$ — that's only valid for a *nominal* rate, and an annual effective rate is not nominal.
- PerpetuitiesPerpetuity-immediate vs perpetuity-due present value — the constant people swap?Immediate (first payment at $t=1$): PV $=\dfrac{1}{i}$. Due (first payment at $t=0$): PV $=\dfrac{1}{d}=\dfrac{1+i}{i}=\dfrac{1}{i}+1$. Trap: using $\frac{1}{i}$ for a perpetuity starting **today**. Since $d=\frac{i}{1+i}$, the due perpetuity is exactly $(1+i)$ times the immediate one.
- PerpetuitiesIncreasing perpetuity-immediate $1,2,3,\dots$ — quoting $\frac{1}{i^2}$. Right or wrong?Wrong constant. The standard increasing perpetuity-immediate is $(Ia)_{\overline{\infty|}}=\dfrac{1}{i}+\dfrac{1}{i^{2}}=\dfrac{1+i}{i^{2}}$, **not** $\frac{1}{i^2}$ alone. The increasing perpetuity-**due** is $(I\ddot a)_{\overline{\infty|}}=\dfrac{1}{d^{2}}$. Memorize the due form as $\frac{1}{d^2}$ and the immediate as $\frac{1+i}{i^2}$ to avoid mixing them.
- Bond premium/discountIs a bond at a premium or discount? You compare coupon rate to yield blindly. When does that fail?It fails when redemption $C\neq$ face $F$. The correct test is the sign of $Fr-Ci$ (coupon minus yield-on-redemption): **premium** if $Fr>Ci$, **discount** if $Fr<Ci$. Price form: $P=C+(Fr-Ci)\,a_{\overline{n|}}$. Comparing $r$ to $i$ directly only works when $C=F$.
- Bond premium/discountPremium bond: which way does the book value move, and what's the amortized-coupon trap?A **premium** ($P>C$, $Fr>Ci$) writes the book value **down** to $C$. Each coupon $Fr$ splits into interest $i\cdot B_{t-1}$ plus a *write-down* of principal — the "premium amortization," which is $(Fr-Ci)v^{n-t+1}$ and **grows** over time. Trap: treating the whole coupon as interest income, or moving book value the wrong direction (discount accretes **up**).
- AmortizationAmortized loan: the interest portion of payment $t$. The error that wrecks the split?Interest in payment $t$ is $I_t=i\cdot B_{t-1}$ — the rate times the **prior** (outstanding) balance, *not* the original loan. Principal repaid is $P_t=R-I_t$. For a level payment $R$, principal grows **geometrically**: $P_{t+1}=P_t(1+i)$, so $P_t=R\,v^{n-t+1}$. Trap: using $i\times$ original balance, or assuming a level principal split.
- AmortizationOutstanding balance after $k$ payments — prospective vs retrospective mix-up?Both must give the same answer. **Prospective:** $B_k=R\,a_{\overline{n-k|}}$ (PV of remaining payments). **Retrospective:** $B_k=L(1+i)^{k}-R\,s_{\overline{k|}}$ (accumulated loan minus accumulated payments). Trap: using $a_{\overline{n|}}$ or $s_{\overline{n|}}$ instead of the *remaining* term $n-k$ / *elapsed* term $k$.
- Sinking fundSinking fund vs amortization: when is the **total cost** the same, and the common slip?When the sinking-fund rate $j$ equals the loan rate $i$, total outlay equals the amortization payment exactly. The sinking-fund outlay is $L\cdot i + \dfrac{L}{s_{\overline{n|}j}}$ (interest to lender plus deposit). Trap: forgetting the lender still gets $L\cdot i$ **every** period — the deposit alone is not the total payment. If $j<i$, sinking fund costs **more**.
- Sinking fundSinking fund: the borrower's net balance over time — what surprises people?Under the sinking fund method the **stated loan balance stays at $L$** the whole term (interest-only to the lender); only the *net* balance $L-\text{(fund value)}$ declines. Contrast with amortization, where the outstanding balance itself drops each period. Trap: amortizing the loan when the problem specifies a sinking fund — the fund accumulates at rate $j$, separate from the loan at rate $i$.
- Weighted returnsDollar-weighted vs time-weighted yield — which one is sensitive to cash-flow timing?**Dollar-weighted** (money-weighted) is an IRR: it solves the equation of value, so large deposits before strong sub-periods inflate it — it *is* affected by timing and amount of external cash flows. **Time-weighted** chains sub-period returns $\prod(1+r_k)-1$ and **removes** the effect of deposits/withdrawals, measuring the manager's performance. Trap: using the wrong one for the question asked.
- Weighted returnsDollar-weighted return, simple-interest approximation — the formula people misremember.$i\approx\dfrac{I}{A+\sum_t C_t(1-t)}$, where $I=B-A-\sum C_t$ is interest earned, $A$ is the start balance, and each contribution $C_t$ is weighted by the fraction of the year it's invested, $(1-t)$. Trap: weighting deposits by $t$ instead of $(1-t)$, or forgetting that a withdrawal is a **negative** $C_t$.
- Weighted returnsTime-weighted return with three sub-periods — the arithmetic trap.**Multiply**, don't add: $1+i_{TW}=\prod_{k}(1+r_k)$ where each $r_k=\dfrac{\text{value before next flow}}{\text{value after previous flow}}-1$. Compute each sub-period return on the balance **just after** the cash flow that started it. Trap: averaging the sub-returns, or letting a deposit leak into the return numerator (it must reset the base, not count as gain).
- ReinvestmentCoupons are reinvested at a **different** rate $j\neq i$. What yield are you actually solving for?The realized (reinvestment) yield, not the bond's stated yield. Accumulate the coupon stream at the reinvestment rate: total at maturity $=Fr\,s_{\overline{n|}j}+C$, then solve $P(1+i')^{n}=Fr\,s_{\overline{n|}j}+C$ for $i'$. Trap: assuming coupons compound at the bond's yield $i$ — that's only true when $j=i$.
- ReinvestmentAnnuity payments reinvested at rate $j$ while the annuity earns $i$ — the accumulated-value trap.Two rates, two roles. Level payments of $1$ for $n$ years, each reinvested to time $n$ at rate $j$, accumulate to $s_{\overline{n|}j}$ — this uses the **reinvestment** rate, not $i$. If only the interest is reinvested at $j$, the value is $n+i\,(Is)_{\overline{n-1|}j}$ style builds. Trap: blending the earning rate $i$ and reinvestment rate $j$ into a single $s_{\overline{n|}}$.
- Callable bondsA callable bond — pricing it to the **maturity** date. Why is that a trap for a premium bond?For a **premium** bond (priced above redemption), the issuer calls **early** to your disadvantage, so you must price to the **earliest** call date — that gives the lowest price (yield-to-worst). For a **discount** bond, the worst case is the **latest** date (maturity). Rule: premium → assume earliest call; discount → assume latest. Price at the worst-case date and quote that price.
- Callable bondsYield-to-worst on a bond with several call dates — the shortcut that fails.There's no formula shortcut: compute the price (or yield) at **every** possible redemption date and take the **minimum price** the investor would accept (equivalently the lowest yield). The premium/discount rule narrows it but you should still check each candidate when the call price varies by date. Trap: stopping at the first call date without confirming it's truly the worst.
- DurationConverting Macaulay duration to modified duration — the factor people drop.Divide by $(1+i)$: $D_{mod}=\dfrac{D_{mac}}{1+i}$. Macaulay is the PV-weighted average time $\dfrac{\sum t\,v^{t}CF_t}{\sum v^{t}CF_t}$; modified is $-\frac{1}{P}\frac{dP}{di}$. Trap: using $D_{mac}$ directly in the price-change estimate $\Delta P\approx -P\,D_{mod}\,\Delta i$. Under a continuous force, $D_{mod}=D_{mac}$ — but only then.
- DurationFirst-order price-change estimate — the sign and the duration type.$\Delta P\approx -P\cdot D_{mod}\cdot\Delta i$ — note the **minus** (price falls as yield rises) and that it's **modified** duration. With convexity: $\Delta P\approx -P\,D_{mod}\,\Delta i+\tfrac{1}{2}P\,C\,(\Delta i)^2$. Trap: dropping the negative sign, or pairing the estimate with Macaulay duration instead of modified.
- DurationPortfolio duration of two bonds — averaging the two durations. Correct?Only by coincidence. Portfolio duration is the **present-value-weighted** average: $D_P=\dfrac{\sum_k P_k D_k}{\sum_k P_k}$, weighting each bond's duration by its **price** (market value), not a simple mean. Trap: $(D_1+D_2)/2$ when the holdings have different values. Dollar durations *do* simply add: $\sum_k P_k D_{mod,k}$.
- ImmunizationRedington immunization — the convexity condition people state backwards.You need asset **convexity $\geq$** liability convexity: $C_A\geq C_L$ (assets more spread out around the duration point). The three conditions: (1) $PV_A=PV_L$, (2) $D_A=D_L$ (durations match), (3) $C_A\geq C_L$. Trap: writing $C_A\leq C_L$, or matching dollar duration but forgetting the present values must be equal first.
- ImmunizationRedington vs **full** immunization — what's the scope difference?**Redington** protects against *small* yield changes (local: matched PV and duration, asset convexity $\geq$ liability). **Full immunization** protects against shifts of *any* size, but typically requires a single liability bracketed by asset cash flows on both sides (one before, one after the liability date), with matched PV and duration. Trap: claiming Redington covers large shifts — it only guarantees the local minimum.
- Force of interestForce of interest $\delta$ vs effective rate $i$ — the conversion that trips people.$\delta=\ln(1+i)$, equivalently $1+i=e^{\delta}$ and $v=e^{-\delta}$. Accumulation under constant force: $a(t)=e^{\delta t}$. Trap: treating $\delta$ as if it were $i$ (it's the *continuously-compounded* rate, always slightly **less** than $i$), or forgetting $\delta=i^{(\infty)}=\lim_{m\to\infty}i^{(m)}$.
- Force of interestTime-varying force of interest $\delta_t$ — the integral people set up wrong.Accumulation from time $a$ to $b$ is $\exp\!\left(\displaystyle\int_{a}^{b}\delta_t\,dt\right)$, and the discount factor is its reciprocal $\exp\!\left(-\int_{a}^{b}\delta_t\,dt\right)$. Trap: plugging $\delta_t$ in as $e^{-\delta_t t}$ without integrating, or dropping/flipping the sign of the exponent. Always integrate the force over the interval first.
- Equation of valueEquation of value — the most common setup error before solving for $i$ or $n$.Picking a **comparison date** but accumulating/discounting some terms to a *different* date. Every cash flow must be valued at the **same** point in time: $\sum (\text{inflows})\,v^{t}=\sum(\text{outflows})\,v^{t}$ at one chosen date. Trap: mixing dates, which silently changes the equation. The chosen date doesn't affect the answer — but it must be consistent across all terms.
- Equation of valueEquation of value — the **sign** convention that flips the answer.Keep one consistent sign rule: inflows positive, outflows negative (or vice versa), then set the net PV to $0$: $\sum_t C_t\,v^{t}=0$. Trap: writing deposits and withdrawals with the same sign, or moving a term across the equals sign without negating it. For IRR, you're solving $NPV(i)=0$ with the signs intact.
- Equation of valueSolving for an unknown rate $i$ in an equation of value — what tool, and the verification trap?Use the **BA II Plus cash-flow/TVM worksheet** or linear interpolation between two trial rates; there's rarely a closed form. Trap: accepting an interpolated $i$ without plugging it back to check $NPV\approx 0$, and forgetting non-level cash flows can give **multiple** IRRs (sign changes in the flow stream). Verify the root and confirm the cash-flow signs change only as expected.
- Varying annuitiesIncreasing vs level annuity — using $a_{\overline{n|}}$ for $1,2,3,\dots,n$. The fix?Payments that **grow** need the increasing factor: $(Ia)_{\overline{n|}}=\dfrac{\ddot{a}_{\overline{n|}}-n\,v^{n}}{i}$, not $a_{\overline{n|}}$. For a level perpetuity it's $\frac{1}{i}$; for the increasing perpetuity $\frac{1+i}{i^2}$. Trap: treating an arithmetic-increasing stream as level, or confusing $(Ia)$ with $(I\ddot a)$ (due version, divide by $d$).
- Varying annuitiesGeometrically increasing annuity (payments grow at rate $g$) — the slick substitution people miss.Payments $1,(1+g),(1+g)^2,\dots$ valued at rate $i$ collapse to a level annuity at the **rate** $i^{*}=\dfrac{1+i}{1+g}-1=\dfrac{i-g}{1+g}$: PV $=\dfrac{1}{i-g}\left(1-\left(\frac{1+g}{1+i}\right)^{n}\right)=\dfrac{a_{\overline{n|}i^{*}}}{1+g}$. Trap: applying the arithmetic $(Ia)$ formula to a **geometric** grower, or fumbling the $i^{*}$ substitution.
- Term structureSpot rates vs the yield to maturity — discounting a bond with one flat $i$. When is that wrong?When you're given the **spot-rate curve** $s_1,s_2,\dots$: each cash flow at time $t$ must be discounted at *its own* spot rate, $CF_t(1+s_t)^{-t}$, **not** a single YTM. The YTM is the one rate that reproduces that price. Trap: using a flat rate when a term structure is provided. Forward rates link spots via $(1+s_t)^{t}=(1+s_{t-1})^{t-1}(1+f_{t-1,t})$.
- Equated timeMethod of equated time / replacing several payments with one — the rate-vs-time trap.To replace payments $C_t$ at times $t$ with a single equal payment at time $\bar t$, the **exact** date solves $\sum C_t v^{t}=\left(\sum C_t\right)v^{\bar t}$. The *approximate* method of equated time uses the dollar-weighted average time $\bar t=\dfrac{\sum t\,C_t}{\sum C_t}$ — which slightly **overstates** $\bar t$ (true value is a bit earlier). Trap: quoting the approximation as exact.