IPS gate — planning-step constraint check (hard gate)
ips_gateCheck a portfolio against an Investment Policy Statement BEFORE accepting it — the planning step a proper process does FIRST (CFA). Provide holdings + IPS constraints (max_drawdown_tolerance as a fraction e.g. 0.15, time_horizon_years, liquidity_need 'low'|'medium'|'high'). Runs the stress test internally and flags where the proposal VIOLATES the stated policy: worst stress drawdown exceeds tolerance; a short horizon cannot absorb a deep drawdown; material holdings are less liquid than the stated need. A HARD GATE, not a score. Descriptive, not advisory.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| holdings | Yes | Portfolio legs: list of {asset, weight} objects, e.g. [{'asset': 'SPY', 'weight': 0.6}, {'asset': 'TLT', 'weight': 0.4}]. Weights are normalised to sum to 1; assets must be in the substrate universe. | |
| liquidity_need | No | 'low' | 'medium' | 'high' — violated when material holdings are less liquid than the stated need. | |
| time_horizon_years | No | Investment horizon stated in the IPS; short horizons cannot absorb deep drawdowns. | |
| max_drawdown_tolerance | No | IPS drawdown tolerance as a fraction, e.g. 0.15 = a -15% maximum acceptable drawdown. |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| result | Yes |