RMFU Desk

Risk & scenarios

Scenario libraries beat one-off stress tests

One-off stress is cottage industry: heroic analysts rebuild grids under deadline, knowledge evaporates when they rotate, and the next crisis spawns fresh spreadsheets. A scenario library encodes reusable shocks, parameters, and narratives—forkable like code branches—with parent ids, diffs, and retirement dates. The institutional win is fewer midnight rebuilds, cleaner IC arguments, and honest disclosure when you have not modeled something.

The cost of bespoke

Every bespoke grid taxes validation, review, and handoff. Mistakes love one-offs because nobody remembers the guardrails from last time.

Implicit knowledge in one hero’s head is a single point of failure—libraries force socialization through objects, not through hero availability.

Library anatomy

Scenario id, human title, parameter bundle, default book attachment rules, kill criteria cross-links, and example IC excerpts—minimal docs, high signal.

Add dependency notes: which feeds, which margin rules, which liquidity ladder this shock assumes—skip this and replay surprises you in committee.

Governance

Risk owns taxonomy; research owns macro narratives; tech owns reproducibility. If one org silos all three, the library rots.

Quarterly namespace review: merge synonyms, kill duplicates, document ‘deprecated, use X instead.’

Forking workflow

Start from nearest neighbor scenario; diff parameters explicitly; log parent id for audit.

Require cover sheet diffs on fork—‘what changed vs parent’ in three bullets or the fork is rejected.

Drills vs production

Label rehearsal runs so they never contaminate official books—watermark or workspace separation.

Automate checks that rehearsal objects cannot publish to official routes—human discipline frays at 2 a.m.

Sunset policy

Auto-flag scenarios unused for two quarters; archive or merge to reduce menu fatigue.

Require owners to defend retention—or downgrade to ‘historical reference only’ with bold banner.

Metrics

Time to fork for a new shock; reuse rate in IC packs; duplicate rebuild count for same shock name.

Rising duplicate rebuilds mean your library search and taxonomy failed—fix discovery before adding shocks.

Failure modes

‘Macro scenarios’ with no liquidity detail; equity shocks ignoring borrow; rates paths that ignore policy lags.

Phantom diversification: scenarios that differ in label but not in portfolio eigenvectors—detect with basic correlation checks.

Public desk routes referenced above

Same URL discipline applies after you authenticate—bookmarkable paths, no tenant data on these pages.

  • Public calculator hub GET-shareable patterns you can mirror for every material desk run; use as the pattern for replay links.
  • Operating rhythm Template language for stages, owners, and completion rules in a mandatory morning loop.
  • Product atlas Route-level map so reviewers can open the exact module that produced a figure.
  • Guides Pair public guides with internal SOPs so training points at one narrative spine.
  • Service status Public narrative around uptime; align its claims with what engineering will defend in postmortems.

Operator toolkits

Checklists and scripts you can lift into runbooks, vendor RFPs, or board appendices.

Risk operations patterns; not a methodology for any specific asset class.

Three-minute mental model

RMFU is one surface for reading (brief + pulse), remembering (library + drills), and stress-testing (risk, macro, scenarios). Sign in to reach your tenant desk; this public site is the story, not the datastore.

Open the full guided tour → (recommended instead of this short blurb).

Use Open desk when you already have access — you will authenticate at the gate like any other protected route.

Sign in

Live calculators vs. marketing

After sign-in, /tools hosts shareable one-page calculators (NPV, payback, Kelly, and more). This public tools hub explains what exists for crawlers and prospects.

Open desk

Why drills matter

Bookmarks decay. RMFU uses short, spaced repetitions so vocabulary and frameworks stay retrievable when you are in front of a committee or a live tape — not only when you are reading alone.

Nudge inputs

Edit fields, then Apply & refresh (or use on the card). Same payload as the public demo API.

Last response JSON

app/engines/tools/service.py

Leading lines of the real module (marketing excerpt).

"""Operator pocket tools — small pure functions used by /tools.

Each function returns a dict with the inputs echoed back, the result, and a
short interpretation sentence (in casual exec tone).
"""
from __future__ import annotations

from dataclasses import dataclass
import math
from typing import Iterable


# -------- IRR / NPV ---------------------------------------------------------

def npv(rate: float, cashflows: list[float]) -> float:
    return sum(cf / ((1 + rate) ** t) for t, cf in enumerate(cashflows))


def npv_rate_sensitivity(rate: float, cashflows: list[float], bump: float = 0.01) -> dict:
    """±bump hurdle NPV and approximate $ / 1% change in NPV (last period scale)."""
    base = npv(rate, cashflows)
    up = npv(rate + bump, cashflows)