Lesson 0021 — Capstone

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 w_t includes a cash entry. The budget constraint becomes?

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.