Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
34 changes: 21 additions & 13 deletions paper/CRPTO_ijds.qmd
Original file line number Diff line number Diff line change
Expand Up @@ -280,29 +280,37 @@ group coverage, width, alert, and Winkler checks.

## Robust Portfolio Layer

The decision variable is the funded amount or inclusion weight for each
eligible loan. The optimizer maximizes expected net economic return under a
`$1M` budget and policy constraints that cap portfolio risk after replacing
point PD estimates with conformal upper endpoints. The promoted policy has
The decision variable $x_i$ is the allocation fraction for each eligible loan;
$x_i a_i$ is the funded exposure. The optimizer maximizes expected net
economic return under a `$1M` budget and policy constraints that cap portfolio
risk after replacing point PD estimates with conformal upper endpoints. The
promoted policy has
`risk_tolerance = 0.175`, `policy_mode = blended_uncertainty`, policy parameter
`gamma = 0.45`, and `uncertainty_aversion = 0.1`.

Schematically, the robust decision layer solves a budgeted allocation problem
of the form

```text
maximize_x sum_i x_i a_i (c_i - p_tilde_i(alpha, gamma) * L)
subject to sum_i x_i a_i <= B,
sum_i x_i a_i p_tilde_i(alpha, gamma)
<= tau sum_i x_i a_i,
0 <= x_i <= xbar_i,
```
$$
\begin{aligned}
\max_x\quad & \sum_i x_i a_i \left(c_i - \tilde p_i(\alpha,\gamma)\,L\right) \\
\text{s.t.}\quad & \sum_i x_i a_i \le B,\\
& \sum_i x_i a_i \tilde p_i(\alpha,\gamma)
\le \tau \sum_i x_i a_i,\\
& 0 \le x_i \le \bar x_i,
\end{aligned}
$$

where `a_i` is exposure, `c_i` is the loan coupon (interest rate), `L` is the
loss-given-default (`L = 0.45` in the frozen evaluation), $\tau$ is the
risk-tolerance cap, and
`p_tilde_i(alpha, gamma) = p_hat_i + gamma (u_i(alpha) - p_hat_i)` on the PD
scale, clipped to the feasible probability range. The objective is the *expected*

$$
\tilde p_i(\alpha,\gamma)
= \hat p_i + \gamma\left(u_i(\alpha)-\hat p_i\right)
$$

on the PD scale, clipped to the feasible probability range. The objective is the *expected*
net return `c_i - p_tilde_i * L`; the headline `$170,464.54` is the
*realized* return of the same funded set, scored post hoc on observed defaults
(a funded loan earns `c_i * a_i` if it survives and loses `L * a_i` if it
Expand Down
8 changes: 4 additions & 4 deletions paper/submission/CRPTO_ijds_submission.tex
Original file line number Diff line number Diff line change
Expand Up @@ -307,10 +307,10 @@ \subsection{Mondrian Conformal Layer}\label{sec:method-cp}

\subsection{Robust Portfolio Layer}\label{sec:method-lp}

The decision variable is the funded amount or inclusion weight for each eligible
loan. The optimizer maximizes expected net economic return under a \$1M budget and
policy constraints that cap portfolio risk after replacing point PD estimates with
conformal upper endpoints. The promoted policy has $\texttt{risk\_tolerance}=0.175$,
The decision variable $x_i$ is the allocation fraction for each eligible loan;
$x_i a_i$ is the funded exposure. The optimizer maximizes expected net economic
return under a \$1M budget and policy constraints that cap portfolio risk after
replacing point PD estimates with conformal upper endpoints. The promoted policy has $\texttt{risk\_tolerance}=0.175$,
$\texttt{policy\_mode}=\texttt{blended\_uncertainty}$, policy parameter
$\gamma=0.45$, and $\texttt{uncertainty\_aversion}=0.1$.

Expand Down
2 changes: 1 addition & 1 deletion paper/submission/IJDS_SUBMISSION_ROADMAP_2026-08-10.md
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,7 @@ CRPTO should be read as data science for decisions:
| Jul 11-17 | External replication polish | Prosper/Freddie remain evidence of recipe transfer, not new exact certificates. |
| Jul 18-24 | Figures and tables | Captions state takeaway; tables fit IJDS; figures remain readable in grayscale. |
| Jul 25-31 | Reproducibility package | Data/code disclosure plan, commands, hashes, DVC pointers, and raw-data instructions are ready. |
| Aug 1-5 | Official template | Body compiles in `informs4` with `dblanonrev`; current local build is 23 pages including references, with final ScholarOne proof still pending. |
| Aug 1-5 | Official template | Body compiles in `informs4` with `dblanonrev`; current local build is 24 pages including references, with final ScholarOne proof still pending. |
| Aug 6-8 | Double-anonymous QA | Metadata, URLs, acknowledgements, local paths, and author signals are removed from reviewer-facing PDFs. |
| Aug 9-10 | Submission freeze | `just lint`, `just smoke`, `just validate-champion`, `just paper-submission-pdf`, and visual QA pass. |

Expand Down
8 changes: 4 additions & 4 deletions paper/submission/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -73,9 +73,9 @@ PDF crop box cuts the right edge under `informs4`.
> `informs4.cls`, `informs2014.bst`, template PDFs, `.sty` files, or generated
> LaTeX build artifacts.

Current local build state (verified 2026-06-09): TinyTeX/TeX Live 2026,
Current local build state (verified 2026-06-14): TinyTeX/TeX Live 2026,
Strawberry Perl 5.42.2.1, and the `listingsutf8` TeX package compile
`CRPTO_ijds_submission.tex` to a 23-page official-template PDF. The only LaTeX
`CRPTO_ijds_submission.tex` to a 24-page official-template PDF. The only LaTeX
log warnings left are a small `\maketitle` overfull from the `informs4`
anonymous title block and one float-only page, both visually acceptable. The
body is comfortably inside the IJDS 25-page initial-submission budget even
Expand Down Expand Up @@ -151,7 +151,7 @@ These protocols are compatible but not interchangeable.
- Use `SCHOLARONE_FINAL_CHECKLIST.md` while uploading and reviewing the generated
proof.
- Recheck the official-template page budget if the body changes materially. The
current local official-template build is 23 pages.
current local official-template build is 24 pages.
- Keep A3--A34 in the online supplement unless a reviewer-facing argument needs
one compact table in the body.
- Preserve CRPTO as the coverage/auditability method and SPO+ as the low-regret
Expand Down Expand Up @@ -193,7 +193,7 @@ updates the template.

4. **Recount the official-template page budget** and demote body floats to the
supplement only if it exceeds 25 pages. The local official-template build is
currently 23 pages; the Chrome-print body preview is only a verification
currently 24 pages; the Chrome-print body preview is only a verification
proxy.
5. **Verify anonymity** against the checklist above, then upload the body PDF and
submit the title page separately.
2 changes: 1 addition & 1 deletion paper/submission/SCHOLARONE_FINAL_CHECKLIST.md
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@ template files have been downloaded outside Git.
```

4. Confirm body page count is at most 25 pages excluding references and
appendices. The local official-template build is currently 23 pages total.
appendices. The local official-template build is currently 24 pages total.

## Final Local Gates

Expand Down