Capstone Read: The Multi-Period Trading Paper
Twenty lessons ago the mission said: read portfolio optimization papers and identify the decision variables, objective, constraints, assumptions, and solver class. Time to collect. Your target is Boyd, Busseti, Diamond, Kahn, Koh, Nystrup & Speth, “Multi-Period Trading via Convex Optimization” — the paper this course has been quietly walking toward since Lesson 0001. You now own every concept it uses. This lesson is the reading protocol.
The One-Step Skill
Read a quantitative finance methods paper in three deliberate passes — map, decode, interrogate — ending with a one-page reconstruction: variables, objective, constraints, solver class, and the assumptions you'd challenge. This protocol transfers to every paper after this one.
Pass 1 — Map (20 minutes, no math)
Read the abstract, introduction, and every section heading. Do not solve anything. You're drawing the paper's skeleton: where do costs live, where does risk live, where is the actual optimization stated, where are the simulations? Write down the three sentences you expect the paper to defend. (For this paper, one of them should be close to: “a simple MPC policy with convex costs beats common heuristics after transaction costs.”)
Pass 2 — Decode (the notation table is the paper)
Papers die in notation. Decode theirs into yours before reading any results:
their symbol your course concept
------------ -------------------
h_t dollar holdings the book, in dollars (cash is an asset!)
v_t total value the denominator
w_t = h_t / v_t Lesson 0001's weights — INCLUDING a cash weight
z_t normalized trades Lesson 0020's control; w_{t+1} tracks w_t + z_t
φ^trade(z) transaction costs: a kinked |z| term (0012/0015)
PLUS superlinear impact terms (0020's c·z² cousin,
incl. a 3/2-power flavor)
φ^hold(w) holding costs, e.g. borrow fees on shorts sᵀ(w)₋
ψ(w) the risk penalty; factor form FΣ_F Fᵀ + D (0017)
holding constraints your walls: long-only, leverage, factor
neutrality Fᵀw = 0 (0016), position caps (0003)
SPO single-period optimization — your Lesson 0019 build
MPO / MPC the planner; solve H periods, execute one (0020)
Two decoding habits that pay everywhere: (1) when they write a cost function abstractly, ask “is this kinked, quadratic, or both?” — you know what each piece does to behavior; (2) when they present a constraint list, tag each entry with its dual's meaning before reading on — you know every one of these walls personally.
Pass 3 — Interrogate (the seven questions)
Read in full, hunting answers. Write them down — writing is the retrieval practice:
1. where does the absolute value get rewritten for the solver, and in which dialect? (0015) 2. cash is an asset in w_t: what plays the role of the budget constraint, and what happens to it? (0003) 3. which cost terms create no-trade behavior and which create schedules? point at the exponents. (0012, 0020) 4. what exactly does the risk term charge — holdings or trades — and why does that matter? (0002, 0017) 5. how do they handle alpha forecast error? compare their answer to Lesson 0018's remedies ladder. (0018) 6. in the MPC section: what is re-estimated at each step, and what is committed? (0020) 7. find one assumption you'd challenge in production, and say what breaks if it fails. (yours)
Then write the one-pager: decision variables, objective, constraints, solver class (it's a QP/SOCP after the rewrites — confirm why), and your challenged assumption. That one-pager is the mission skill, demonstrated.
Acquiring Wisdom
Your one-pager deserves contact with practitioners. Post your challenged assumption (question 7) as a question on Quantitative Finance Stack Exchange — e.g. “Boyd et al. model impact as a power of trade size with fixed coefficients; how do practitioners handle regime changes in liquidity?”. The answers you get — and the pushback — are the part of this course no lab can provide. The paper's companion code, cvxportfolio, is also worth an hour: it's the paper as running Python, and your Lesson 0019 build is a miniature of its SPO policy.
Retrieval Practice
The paper's weight vector
In φ^trade, the |z| term and the superlinear terms (power > 1) respectively produce?
After all rewrites, why is the paper's per-step problem solvable at scale?
Primary Source
The paper itself: arXiv 1705.00109. Companion code: cvxportfolio. Keep the decoder card beside you while reading — it's this lesson's Pass 2 table plus the seven questions, on one printable page.
Questions?
Ask your agent anything while reading — good prompts: “I'm stuck on their return-forecast notation in the simulation section, decode it,” “check my answer to question 3 against the text,” or “grill me on the paper once I've finished the one-pager.” That last one is strongly encouraged.