Skip to content

Commit c127f53

Browse files
committed
Add typed VRP response model (Tier 1 endpoint 1 of full POCO sweep)
- VrpResponse + 8 sub-types (VrpCore, VrpDirectional, VrpTermItem, VrpGexConditioned, VrpVannaConditioned, VrpRegime, VrpStrategyScores, VrpMacro). Field-level nullability defensive across all 5 SDK languages. - Rich docstrings on every type and field — explains semantics + units + sign conventions, calls out the famous nested-trap silent-null patterns (response.z_score → response.vrp.z_score; response.put_vrp → response .directional.downside_vrp; response.net_gex → response.regime.net_gex, etc). Boosts LLM autocomplete accuracy and adds searchable surface area on PyPI/typedoc/javadoc/NuGet. - C# rename: VrpRegime.vrp_regime mapped to property VrpRegimeLabel because C# disallows a property name matching its enclosing class. JSON wire name unchanged. Live vs historical structural diffs (encoded into the types): - macro.fed_funds: live includes; historical omits - macro.hy_spread: live currently null; historical populated (the earlier comment claiming hy_spread is hard-coded to 3.5 on historical is incorrect; corrected here) - vrp.z_score / percentile / regime.vrp_regime / strategy_scores / net_harvest_score: nullable on historical when warmup is insufficient (queries near 2018-04-16, dataset start) Backwards-compatible: existing untyped methods continue to return raw JsonElement / map[string]interface{} / dict / unknown unchanged. Integration tests + final 0.4.0-rc.2 release cut follow once Tier 1 is complete (MaxPain + StockSummary still pending in this tier).
1 parent 0c525ea commit c127f53

2 files changed

Lines changed: 466 additions & 10 deletions

File tree

src/flashalpha/__init__.py

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,15 @@
1616
ExposureSummaryInterpretation,
1717
ExposureSummaryResponse,
1818
ExposureSummaryZeroDte,
19+
VrpCore,
20+
VrpDirectional,
21+
VrpGexConditioned,
22+
VrpMacro,
23+
VrpRegime,
24+
VrpResponse,
25+
VrpStrategyScores,
26+
VrpTermItem,
27+
VrpVannaConditioned,
1928
ZeroDteDecay,
2029
ZeroDteExpectedMove,
2130
ZeroDteExposures,
@@ -64,4 +73,14 @@
6473
"ExposureSummaryHedgingEstimate",
6574
"ExposureSummaryHedgingMove",
6675
"ExposureSummaryZeroDte",
76+
# ── VRP ──
77+
"VrpResponse",
78+
"VrpCore",
79+
"VrpDirectional",
80+
"VrpTermItem",
81+
"VrpGexConditioned",
82+
"VrpVannaConditioned",
83+
"VrpRegime",
84+
"VrpStrategyScores",
85+
"VrpMacro",
6786
]

0 commit comments

Comments
 (0)