-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathopenapi.json
More file actions
1 lines (1 loc) · 63.9 KB
/
openapi.json
File metadata and controls
1 lines (1 loc) · 63.9 KB
1
{"openapi":"3.1.0","info":{"title":"QuantOracle","description":"63 deterministic quant computation tools for autonomous agents. quantoracle.dev","version":"2.0.0"},"paths":{"/v1/options/price":{"post":{"tags":["Options"],"summary":"T1","description":"Black-Scholes pricing with 10 Greeks (delta through color).","operationId":"t1_v1_options_price_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/T1In"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/options/implied-vol":{"post":{"tags":["Options"],"summary":"T2","description":"Newton-Raphson implied volatility solver. Converges in 5-8 iterations.","operationId":"t2_v1_options_implied_vol_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/T2In"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/options/strategy":{"post":{"tags":["Options"],"summary":"T3","description":"Multi-leg options strategy P&L, breakevens, max profit/loss, risk/reward.","operationId":"t3_v1_options_strategy_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/T3In"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/risk/portfolio":{"post":{"tags":["Risk"],"summary":"T4","description":"22 risk metrics: Sharpe, Sortino, Calmar, Omega, VaR, CVaR, drawdown, skew, kurtosis.","operationId":"t4_v1_risk_portfolio_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/T4In"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/risk/kelly":{"post":{"tags":["Risk"],"summary":"T5","description":"Kelly Criterion: discrete (win/loss) or continuous (returns series) mode.","operationId":"t5_v1_risk_kelly_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/T5In"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/simulate/montecarlo":{"post":{"tags":["Simulation"],"summary":"T6","description":"GBM Monte Carlo with contributions/withdrawals. Up to 5000 paths.","operationId":"t6_v1_simulate_montecarlo_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/T6In"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/indicators/technical":{"post":{"tags":["Indicators"],"summary":"T7","description":"13 technical indicators + composite signals.","operationId":"t7_v1_indicators_technical_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/T7In"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/risk/correlation":{"post":{"tags":["Risk"],"summary":"T8","description":"N x N correlation and covariance matrices from return series.","operationId":"t8_v1_risk_correlation_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/T8In"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/risk/position-size":{"post":{"tags":["Risk"],"summary":"T9","description":"Fixed fractional position sizing with risk/reward targets.","operationId":"t9_v1_risk_position_size_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/T9In"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/risk/drawdown":{"post":{"tags":["Risk"],"summary":"T10","description":"Drawdown decomposition with underwater curve.","operationId":"t10_v1_risk_drawdown_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/T10In"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/indicators/regime":{"post":{"tags":["Indicators"],"summary":"T11","description":"Trend + volatility regime + composite risk classification.","operationId":"t11_v1_indicators_regime_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/T11In"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/indicators/crossover":{"post":{"tags":["Indicators"],"summary":"T12","description":"Golden/death cross detection with signal history.","operationId":"t12_v1_indicators_crossover_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/T12In"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/fixed-income/bond":{"post":{"tags":["Fixed Income"],"summary":"T13","description":"Bond price, Macaulay/modified duration, convexity, DV01.","operationId":"t13_v1_fixed_income_bond_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/T13In"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/fixed-income/amortization":{"post":{"tags":["Fixed Income"],"summary":"T14","description":"Full amortization schedule with extra payment savings analysis.","operationId":"t14_v1_fixed_income_amortization_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/T14In"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/portfolio/optimize":{"post":{"tags":["Portfolio"],"summary":"T15","description":"Portfolio optimization: max Sharpe, min vol, or risk parity weights.","operationId":"t15_v1_portfolio_optimize_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/T15In"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/derivatives/binomial-tree":{"post":{"tags":["Derivatives"],"summary":"T16","description":"CRR binomial tree pricing for American and European options.","operationId":"t16_v1_derivatives_binomial_tree_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/T16In"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/derivatives/barrier-option":{"post":{"tags":["Derivatives"],"summary":"T17","description":"Barrier option pricing using analytical formulas.","operationId":"t17_v1_derivatives_barrier_option_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/T17In"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/derivatives/asian-option":{"post":{"tags":["Derivatives"],"summary":"T18","description":"Asian option pricing: geometric closed-form or arithmetic approximation.","operationId":"t18_v1_derivatives_asian_option_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/T18In"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/derivatives/lookback-option":{"post":{"tags":["Derivatives"],"summary":"T19","description":"Lookback option pricing (floating/fixed strike).","operationId":"t19_v1_derivatives_lookback_option_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/T19In"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/derivatives/option-chain-analysis":{"post":{"tags":["Derivatives"],"summary":"T20","description":"Option chain analytics: skew, max pain, put-call ratios.","operationId":"t20_v1_derivatives_option_chain_analysis_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/T20In"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/derivatives/put-call-parity":{"post":{"tags":["Derivatives"],"summary":"T21","description":"Put-call parity check and arbitrage detection.","operationId":"t21_v1_derivatives_put_call_parity_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/T21In"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/derivatives/volatility-surface":{"post":{"tags":["Derivatives"],"summary":"T22","description":"Build implied volatility surface from market data.","operationId":"t22_v1_derivatives_volatility_surface_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/T22In"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/stats/linear-regression":{"post":{"tags":["Statistics"],"summary":"T23","description":"OLS linear regression with R-squared, t-stats, and standard errors.","operationId":"t23_v1_stats_linear_regression_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/T23In"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/stats/polynomial-regression":{"post":{"tags":["Statistics"],"summary":"T24","description":"Polynomial regression of degree n with goodness-of-fit metrics.","operationId":"t24_v1_stats_polynomial_regression_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/T24In"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/stats/cointegration":{"post":{"tags":["Statistics"],"summary":"T25","description":"Engle-Granger cointegration test with hedge ratio and half-life.","operationId":"t25_v1_stats_cointegration_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/T25In"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/stats/hurst-exponent":{"post":{"tags":["Statistics"],"summary":"T26","description":"Hurst exponent via rescaled range (R/S) analysis.","operationId":"t26_v1_stats_hurst_exponent_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/T26In"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/stats/garch-forecast":{"post":{"tags":["Statistics"],"summary":"T27","description":"GARCH(1,1) volatility forecast using maximum likelihood estimation.","operationId":"t27_v1_stats_garch_forecast_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/T27In"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/stats/zscore":{"post":{"tags":["Statistics"],"summary":"T28","description":"Rolling and static z-scores with extreme value detection.","operationId":"t28_v1_stats_zscore_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/T28In"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/stats/distribution-fit":{"post":{"tags":["Statistics"],"summary":"T29","description":"Fit data to common distributions and rank by goodness of fit.","operationId":"t29_v1_stats_distribution_fit_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/T29In"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/stats/correlation-matrix":{"post":{"tags":["Statistics"],"summary":"T30","description":"Correlation and covariance matrices with optional eigenvalue decomposition.","operationId":"t30_v1_stats_correlation_matrix_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/T30In"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/crypto/impermanent-loss":{"post":{"tags":["Crypto"],"summary":"T31","description":"Impermanent loss calculator for Uniswap v2/v3 AMM positions.","operationId":"t31_v1_crypto_impermanent_loss_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/T31In"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/crypto/apy-apr-convert":{"post":{"tags":["Crypto"],"summary":"T32","description":"Convert between APY and APR with configurable compounding frequency.","operationId":"t32_v1_crypto_apy_apr_convert_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/T32In"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/crypto/liquidation-price":{"post":{"tags":["Crypto"],"summary":"T33","description":"Liquidation price calculator for leveraged positions.","operationId":"t33_v1_crypto_liquidation_price_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/T33In"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/crypto/funding-rate":{"post":{"tags":["Crypto"],"summary":"T34","description":"Funding rate analysis with annualization and regime detection.","operationId":"t34_v1_crypto_funding_rate_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/T34In"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/crypto/dex-slippage":{"post":{"tags":["Crypto"],"summary":"T35","description":"DEX slippage estimator for constant-product AMM (x*y=k).","operationId":"t35_v1_crypto_dex_slippage_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/T35In"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/crypto/vesting-schedule":{"post":{"tags":["Crypto"],"summary":"T36","description":"Token vesting schedule with cliff, linear/graded unlock, and TGE.","operationId":"t36_v1_crypto_vesting_schedule_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/T36In"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/crypto/rebalance-threshold":{"post":{"tags":["Crypto"],"summary":"T37","description":"Portfolio rebalance analyzer: drift detection and trade computation.","operationId":"t37_v1_crypto_rebalance_threshold_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/T37In"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/fx/interest-rate-parity":{"post":{"tags":["FX"],"summary":"T38","description":"Interest rate parity calculator with arbitrage detection.","operationId":"t38_v1_fx_interest_rate_parity_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/T38In"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/fx/purchasing-power-parity":{"post":{"tags":["FX"],"summary":"T39","description":"Purchasing power parity fair value estimation.","operationId":"t39_v1_fx_purchasing_power_parity_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/T39In"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/fx/forward-rate":{"post":{"tags":["FX"],"summary":"T40","description":"Bootstrap forward rates from a spot yield curve.","operationId":"t40_v1_fx_forward_rate_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/T40In"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/fx/carry-trade":{"post":{"tags":["FX"],"summary":"T41","description":"Currency carry trade P&L decomposition.","operationId":"t41_v1_fx_carry_trade_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/T41In"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/macro/inflation-adjusted":{"post":{"tags":["Macro"],"summary":"T42","description":"Convert nominal returns to real returns using Fisher equation.","operationId":"t42_v1_macro_inflation_adjusted_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/T42In"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/macro/taylor-rule":{"post":{"tags":["Macro"],"summary":"T43","description":"Taylor Rule interest rate prescription.","operationId":"t43_v1_macro_taylor_rule_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/T43In"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/macro/real-yield":{"post":{"tags":["Macro"],"summary":"T44","description":"Real yield and breakeven inflation from nominal yields.","operationId":"t44_v1_macro_real_yield_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/T44In"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/risk/var-parametric":{"post":{"tags":["Risk"],"summary":"T45","description":"Parametric Value-at-Risk and Conditional VaR.","operationId":"t45_v1_risk_var_parametric_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/T45In"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/risk/stress-test":{"post":{"tags":["Risk"],"summary":"T46","description":"Portfolio stress test across multiple scenarios.","operationId":"t46_v1_risk_stress_test_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/T46In"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/options/payoff-diagram":{"post":{"tags":["Options"],"summary":"T47","description":"Multi-leg options payoff diagram data generation.","operationId":"t47_v1_options_payoff_diagram_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/T47In"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/fi/yield-curve-interpolate":{"post":{"tags":["Fixed Income"],"summary":"T48","description":"Yield curve interpolation: linear, cubic spline, or Nelson-Siegel.","operationId":"t48_v1_fi_yield_curve_interpolate_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/T48In"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/fi/credit-spread":{"post":{"tags":["Fixed Income"],"summary":"T49","description":"Credit spread and Z-spread from bond price vs risk-free curve.","operationId":"t49_v1_fi_credit_spread_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/T49In"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/indicators/bollinger-bands":{"post":{"tags":["Indicators"],"summary":"T50","description":"Bollinger Bands with %B, bandwidth, and squeeze detection.","operationId":"t50_v1_indicators_bollinger_bands_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/T50In"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/indicators/fibonacci-retracement":{"post":{"tags":["Indicators"],"summary":"T51","description":"Fibonacci retracement and extension levels.","operationId":"t51_v1_indicators_fibonacci_retracement_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/T51In"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/indicators/atr":{"post":{"tags":["Indicators"],"summary":"T52","description":"Average True Range with normalized ATR and volatility regime.","operationId":"t52_v1_indicators_atr_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/T52In"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/portfolio/risk-parity-weights":{"post":{"tags":["Portfolio"],"summary":"T53","description":"Equal risk contribution portfolio weights.","operationId":"t53_v1_portfolio_risk_parity_weights_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/T53In"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/risk/transaction-cost":{"post":{"tags":["Risk"],"summary":"T54","description":"Transaction cost model: commission + spread + market impact estimation.","operationId":"t54_v1_risk_transaction_cost_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/T54In"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/stats/probabilistic-sharpe":{"post":{"tags":["Statistics"],"summary":"T55","description":"Probabilistic Sharpe Ratio — is the observed Sharpe statistically significant?\nBased on Bailey & Lopez de Prado (2012).","operationId":"t55_v1_stats_probabilistic_sharpe_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/T55In"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/tvm/present-value":{"post":{"tags":["TVM"],"summary":"T56","description":"Present value of a future lump sum and/or annuity stream.","operationId":"t56_v1_tvm_present_value_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/T56In"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/tvm/future-value":{"post":{"tags":["TVM"],"summary":"T57","description":"Future value of a present lump sum and/or annuity stream.","operationId":"t57_v1_tvm_future_value_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/T57In"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/tvm/irr":{"post":{"tags":["TVM"],"summary":"T58","description":"Internal rate of return via Newton-Raphson. First cash flow is typically negative (investment).","operationId":"t58_v1_tvm_irr_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/T58In"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/tvm/npv":{"post":{"tags":["TVM"],"summary":"T59","description":"Net present value of a cash flow series at a given discount rate.","operationId":"t59_v1_tvm_npv_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/T59In"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/stats/realized-volatility":{"post":{"tags":["Statistics"],"summary":"T60","description":"Realized volatility: close-to-close, Parkinson, Garman-Klass, Yang-Zhang from OHLC.","operationId":"t60_v1_stats_realized_volatility_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/T60In"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/stats/normal-distribution":{"post":{"tags":["Statistics"],"summary":"T61","description":"Normal distribution: CDF, PDF, quantile, and confidence intervals.","operationId":"t61_v1_stats_normal_distribution_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/T61In"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/stats/sharpe-ratio":{"post":{"tags":["Statistics"],"summary":"T62","description":"Standalone Sharpe ratio from a returns series.","operationId":"t62_v1_stats_sharpe_ratio_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/T62In"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/tvm/cagr":{"post":{"tags":["TVM"],"summary":"T63","description":"Compound Annual Growth Rate with optional forward projections.","operationId":"t63_v1_tvm_cagr_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/T63In"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/health":{"get":{"summary":"Health","operationId":"health_health_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/metrics":{"get":{"summary":"Metrics","operationId":"metrics_metrics_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/tools":{"get":{"summary":"Tools","description":"MCP-compatible tool listing for agent discovery.","operationId":"tools_tools_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}}},"components":{"schemas":{"ChainEntry":{"properties":{"strike":{"type":"number","title":"Strike"},"call_bid":{"type":"number","title":"Call Bid","default":0},"call_ask":{"type":"number","title":"Call Ask","default":0},"put_bid":{"type":"number","title":"Put Bid","default":0},"put_ask":{"type":"number","title":"Put Ask","default":0},"call_oi":{"type":"integer","title":"Call Oi","default":0},"put_oi":{"type":"integer","title":"Put Oi","default":0},"call_volume":{"type":"integer","title":"Call Volume","default":0},"put_volume":{"type":"integer","title":"Put Volume","default":0}},"type":"object","required":["strike"],"title":"ChainEntry"},"CurvePoint":{"properties":{"tenor":{"type":"number","title":"Tenor"},"rate":{"type":"number","title":"Rate"}},"type":"object","required":["tenor","rate"],"title":"CurvePoint"},"FundingEntry":{"properties":{"rate":{"type":"number","title":"Rate"},"timestamp":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Timestamp"}},"type":"object","required":["rate"],"title":"FundingEntry"},"HTTPValidationError":{"properties":{"detail":{"items":{"$ref":"#/components/schemas/ValidationError"},"type":"array","title":"Detail"}},"type":"object","title":"HTTPValidationError"},"Holding":{"properties":{"asset":{"type":"string","title":"Asset"},"current_value":{"type":"number","title":"Current Value"},"target_weight":{"type":"number","title":"Target Weight"}},"type":"object","required":["asset","current_value","target_weight"],"title":"Holding"},"Leg":{"properties":{"type":{"type":"string","enum":["call","put"],"title":"Type"},"K":{"type":"number","title":"K"},"premium":{"type":"number","title":"Premium"},"quantity":{"type":"integer","title":"Quantity","default":1}},"type":"object","required":["type","K","premium"],"title":"Leg"},"PayoffLeg":{"properties":{"type":{"type":"string","enum":["call","put"],"title":"Type"},"strike":{"type":"number","title":"Strike"},"premium":{"type":"number","title":"Premium"},"quantity":{"type":"integer","title":"Quantity","default":1},"direction":{"type":"string","enum":["long","short"],"title":"Direction","default":"long"}},"type":"object","required":["type","strike","premium"],"title":"PayoffLeg"},"Position":{"properties":{"asset":{"type":"string","title":"Asset"},"value":{"type":"number","title":"Value"},"beta":{"type":"number","title":"Beta","default":1.0},"duration":{"type":"number","title":"Duration","default":0}},"type":"object","required":["asset","value"],"title":"Position"},"Scenario":{"properties":{"name":{"type":"string","title":"Name"},"market_shock_pct":{"type":"number","title":"Market Shock Pct","default":0},"rate_shock_bps":{"type":"number","title":"Rate Shock Bps","default":0},"vol_shock_pct":{"type":"number","title":"Vol Shock Pct","default":0}},"type":"object","required":["name"],"title":"Scenario"},"T10In":{"properties":{"equity_curve":{"items":{"type":"number"},"type":"array","minItems":3,"title":"Equity Curve"}},"type":"object","required":["equity_curve"],"title":"T10In"},"T11In":{"properties":{"prices":{"items":{"type":"number"},"type":"array","minItems":30,"title":"Prices"},"sma_period":{"type":"integer","title":"Sma Period","default":50},"vol_window":{"type":"integer","title":"Vol Window","default":21}},"type":"object","required":["prices"],"title":"T11In"},"T12In":{"properties":{"prices":{"items":{"type":"number"},"type":"array","minItems":30,"title":"Prices"},"fast_period":{"type":"integer","title":"Fast Period","default":10},"slow_period":{"type":"integer","title":"Slow Period","default":50}},"type":"object","required":["prices"],"title":"T12In"},"T13In":{"properties":{"face":{"type":"number","title":"Face","default":1000},"coupon_rate":{"type":"number","title":"Coupon Rate"},"ytm":{"type":"number","title":"Ytm"},"years":{"type":"integer","maximum":100.0,"minimum":1.0,"title":"Years"},"frequency":{"type":"integer","maximum":12.0,"minimum":1.0,"title":"Frequency","default":2}},"type":"object","required":["coupon_rate","ytm","years"],"title":"T13In"},"T14In":{"properties":{"principal":{"type":"number","exclusiveMinimum":0.0,"title":"Principal"},"annual_rate":{"type":"number","minimum":0.0,"title":"Annual Rate"},"years":{"type":"integer","maximum":50.0,"minimum":1.0,"title":"Years"},"extra_payment":{"type":"number","title":"Extra Payment","default":0}},"type":"object","required":["principal","annual_rate","years"],"title":"T14In"},"T15In":{"properties":{"returns":{"additionalProperties":{"items":{"type":"number"},"type":"array"},"type":"object","title":"Returns"},"risk_free_rate":{"type":"number","title":"Risk Free Rate","default":0.05},"mode":{"type":"string","enum":["max_sharpe","min_vol","risk_parity"],"title":"Mode","default":"max_sharpe"}},"type":"object","required":["returns"],"title":"T15In"},"T16In":{"properties":{"S":{"type":"number","exclusiveMinimum":0.0,"title":"S"},"K":{"type":"number","exclusiveMinimum":0.0,"title":"K"},"T":{"type":"number","maximum":30.0,"exclusiveMinimum":0.0,"title":"T"},"r":{"type":"number","title":"R","default":0.05},"sigma":{"type":"number","exclusiveMinimum":0.0,"title":"Sigma"},"q":{"type":"number","title":"Q","default":0},"type":{"type":"string","enum":["call","put"],"title":"Type","default":"call"},"exercise":{"type":"string","enum":["american","european"],"title":"Exercise","default":"european"},"steps":{"type":"integer","maximum":500.0,"minimum":1.0,"title":"Steps","default":100}},"type":"object","required":["S","K","T","sigma"],"title":"T16In"},"T17In":{"properties":{"S":{"type":"number","exclusiveMinimum":0.0,"title":"S"},"K":{"type":"number","exclusiveMinimum":0.0,"title":"K"},"H":{"type":"number","exclusiveMinimum":0.0,"title":"H"},"T":{"type":"number","maximum":30.0,"exclusiveMinimum":0.0,"title":"T"},"r":{"type":"number","title":"R","default":0.05},"sigma":{"type":"number","exclusiveMinimum":0.0,"title":"Sigma"},"q":{"type":"number","title":"Q","default":0},"type":{"type":"string","enum":["call","put"],"title":"Type","default":"call"},"barrier_type":{"type":"string","enum":["up-in","up-out","down-in","down-out"],"title":"Barrier Type","default":"down-out"},"rebate":{"type":"number","title":"Rebate","default":0}},"type":"object","required":["S","K","H","T","sigma"],"title":"T17In"},"T18In":{"properties":{"S":{"type":"number","exclusiveMinimum":0.0,"title":"S"},"K":{"type":"number","exclusiveMinimum":0.0,"title":"K"},"T":{"type":"number","maximum":30.0,"exclusiveMinimum":0.0,"title":"T"},"r":{"type":"number","title":"R","default":0.05},"sigma":{"type":"number","exclusiveMinimum":0.0,"title":"Sigma"},"q":{"type":"number","title":"Q","default":0},"type":{"type":"string","enum":["call","put"],"title":"Type","default":"call"},"averaging":{"type":"string","enum":["geometric","arithmetic"],"title":"Averaging","default":"geometric"},"observations":{"type":"integer","minimum":2.0,"title":"Observations","default":12}},"type":"object","required":["S","K","T","sigma"],"title":"T18In"},"T19In":{"properties":{"S":{"type":"number","exclusiveMinimum":0.0,"title":"S"},"T":{"type":"number","maximum":30.0,"exclusiveMinimum":0.0,"title":"T"},"r":{"type":"number","title":"R","default":0.05},"sigma":{"type":"number","exclusiveMinimum":0.0,"title":"Sigma"},"q":{"type":"number","title":"Q","default":0},"type":{"type":"string","enum":["call","put"],"title":"Type","default":"call"},"lookback_type":{"type":"string","enum":["floating","fixed"],"title":"Lookback Type","default":"floating"},"K":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"K"},"S_min":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"S Min"},"S_max":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"S Max"}},"type":"object","required":["S","T","sigma"],"title":"T19In"},"T1In":{"properties":{"S":{"type":"number","exclusiveMinimum":0.0,"title":"S"},"K":{"type":"number","exclusiveMinimum":0.0,"title":"K"},"T":{"type":"number","exclusiveMinimum":0.0,"title":"T"},"r":{"type":"number","title":"R","default":0.05},"sigma":{"type":"number","exclusiveMinimum":0.0,"title":"Sigma"},"q":{"type":"number","title":"Q","default":0},"type":{"type":"string","enum":["call","put"],"title":"Type","default":"call"}},"type":"object","required":["S","K","T","sigma"],"title":"T1In"},"T20In":{"properties":{"chain":{"items":{"$ref":"#/components/schemas/ChainEntry"},"type":"array","title":"Chain"},"spot":{"type":"number","title":"Spot"},"r":{"type":"number","title":"R","default":0.05},"T":{"type":"number","title":"T","default":0.0833}},"type":"object","required":["chain","spot"],"title":"T20In"},"T21In":{"properties":{"call_price":{"type":"number","title":"Call Price"},"put_price":{"type":"number","title":"Put Price"},"S":{"type":"number","title":"S"},"K":{"type":"number","title":"K"},"T":{"type":"number","title":"T"},"r":{"type":"number","title":"R","default":0.05},"q":{"type":"number","title":"Q","default":0}},"type":"object","required":["call_price","put_price","S","K","T"],"title":"T21In"},"T22In":{"properties":{"market_data":{"items":{"$ref":"#/components/schemas/VolPoint"},"type":"array","title":"Market Data"},"spot":{"type":"number","title":"Spot"},"interpolation":{"type":"string","enum":["linear","cubic"],"title":"Interpolation","default":"linear"}},"type":"object","required":["market_data","spot"],"title":"T22In"},"T23In":{"properties":{"x":{"anyOf":[{"items":{"items":{"type":"number"},"type":"array"},"type":"array"},{"items":{"type":"number"},"type":"array"}],"title":"X"},"y":{"items":{"type":"number"},"type":"array","title":"Y"},"confidence_level":{"type":"number","title":"Confidence Level","default":0.95}},"type":"object","required":["x","y"],"title":"T23In"},"T24In":{"properties":{"x":{"items":{"type":"number"},"type":"array","title":"X"},"y":{"items":{"type":"number"},"type":"array","title":"Y"},"degree":{"type":"integer","maximum":10.0,"minimum":1.0,"title":"Degree","default":2}},"type":"object","required":["x","y"],"title":"T24In"},"T25In":{"properties":{"series_x":{"items":{"type":"number"},"type":"array","title":"Series X"},"series_y":{"items":{"type":"number"},"type":"array","title":"Series Y"},"significance":{"type":"string","enum":["0.01","0.05","0.10"],"title":"Significance","default":"0.05"}},"type":"object","required":["series_x","series_y"],"title":"T25In"},"T26In":{"properties":{"series":{"items":{"type":"number"},"type":"array","maxItems":10000,"minItems":20,"title":"Series"},"min_window":{"type":"integer","minimum":2.0,"title":"Min Window","default":10},"max_window":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Max Window"}},"type":"object","required":["series"],"title":"T26In"},"T27In":{"properties":{"returns":{"items":{"type":"number"},"type":"array","minItems":30,"title":"Returns"},"forecast_periods":{"type":"integer","title":"Forecast Periods","default":5},"mean_model":{"type":"string","enum":["zero","constant"],"title":"Mean Model","default":"zero"}},"type":"object","required":["returns"],"title":"T27In"},"T28In":{"properties":{"series":{"items":{"type":"number"},"type":"array","minItems":3,"title":"Series"},"window":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Window"},"threshold":{"type":"number","title":"Threshold","default":2.0}},"type":"object","required":["series"],"title":"T28In"},"T29In":{"properties":{"data":{"items":{"type":"number"},"type":"array","minItems":10,"title":"Data"}},"type":"object","required":["data"],"title":"T29In"},"T2In":{"properties":{"S":{"type":"number","exclusiveMinimum":0.0,"title":"S"},"K":{"type":"number","exclusiveMinimum":0.0,"title":"K"},"T":{"type":"number","exclusiveMinimum":0.0,"title":"T"},"r":{"type":"number","title":"R","default":0.05},"q":{"type":"number","title":"Q","default":0},"market_price":{"type":"number","exclusiveMinimum":0.0,"title":"Market Price"},"type":{"type":"string","enum":["call","put"],"title":"Type","default":"call"}},"type":"object","required":["S","K","T","market_price"],"title":"T2In"},"T30In":{"properties":{"series":{"additionalProperties":{"items":{"type":"number"},"type":"array"},"type":"object","title":"Series"},"method":{"type":"string","enum":["pearson","spearman"],"title":"Method","default":"pearson"},"include_eigenvalues":{"type":"boolean","title":"Include Eigenvalues","default":false}},"type":"object","required":["series"],"title":"T30In"},"T31In":{"properties":{"initial_price_ratio":{"type":"number","exclusiveMinimum":0.0,"title":"Initial Price Ratio","default":1.0},"current_price_ratio":{"type":"number","exclusiveMinimum":0.0,"title":"Current Price Ratio"},"amm_type":{"type":"string","enum":["v2","v3"],"title":"Amm Type","default":"v2"},"lower_tick":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Lower Tick"},"upper_tick":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Upper Tick"},"initial_investment":{"type":"number","title":"Initial Investment","default":1000}},"type":"object","required":["current_price_ratio"],"title":"T31In"},"T32In":{"properties":{"rate":{"type":"number","title":"Rate"},"from_type":{"type":"string","enum":["apy","apr"],"title":"From Type","default":"apr"},"compounding":{"type":"string","enum":["daily","weekly","monthly","quarterly","continuous"],"title":"Compounding","default":"daily"}},"type":"object","required":["rate"],"title":"T32In"},"T33In":{"properties":{"entry_price":{"type":"number","title":"Entry Price"},"collateral":{"type":"number","title":"Collateral"},"position_size":{"type":"number","title":"Position Size"},"leverage":{"type":"number","title":"Leverage"},"direction":{"type":"string","enum":["long","short"],"title":"Direction"},"maintenance_margin_rate":{"type":"number","title":"Maintenance Margin Rate","default":0.005},"funding_accumulated":{"type":"number","title":"Funding Accumulated","default":0}},"type":"object","required":["entry_price","collateral","position_size","leverage","direction"],"title":"T33In"},"T34In":{"properties":{"funding_rates":{"items":{"$ref":"#/components/schemas/FundingEntry"},"type":"array","minItems":3,"title":"Funding Rates"},"payment_interval_hours":{"type":"integer","title":"Payment Interval Hours","default":8},"position_size":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Position Size"}},"type":"object","required":["funding_rates"],"title":"T34In"},"T35In":{"properties":{"reserve_a":{"type":"number","exclusiveMinimum":0.0,"title":"Reserve A"},"reserve_b":{"type":"number","exclusiveMinimum":0.0,"title":"Reserve B"},"trade_amount":{"type":"number","exclusiveMinimum":0.0,"title":"Trade Amount"},"trade_direction":{"type":"string","enum":["a_to_b","b_to_a"],"title":"Trade Direction","default":"a_to_b"},"fee_bps":{"type":"integer","title":"Fee Bps","default":30}},"type":"object","required":["reserve_a","reserve_b","trade_amount"],"title":"T35In"},"T36In":{"properties":{"total_tokens":{"type":"number","title":"Total Tokens"},"tge_pct":{"type":"number","title":"Tge Pct","default":0},"cliff_months":{"type":"integer","title":"Cliff Months","default":0},"vesting_months":{"type":"integer","title":"Vesting Months","default":24},"vesting_type":{"type":"string","enum":["linear","monthly_cliff","quarterly"],"title":"Vesting Type","default":"linear"},"start_date":{"type":"string","title":"Start Date","default":"2025-01-01"}},"type":"object","required":["total_tokens"],"title":"T36In"},"T37In":{"properties":{"holdings":{"items":{"$ref":"#/components/schemas/Holding"},"type":"array","title":"Holdings"},"threshold_pct":{"type":"number","title":"Threshold Pct","default":5},"min_trade_usd":{"type":"number","title":"Min Trade Usd","default":10}},"type":"object","required":["holdings"],"title":"T37In"},"T38In":{"properties":{"spot_rate":{"type":"number","title":"Spot Rate"},"domestic_rate":{"type":"number","title":"Domestic Rate"},"foreign_rate":{"type":"number","title":"Foreign Rate"},"time_years":{"type":"number","title":"Time Years","default":1},"parity_type":{"type":"string","enum":["covered","uncovered"],"title":"Parity Type","default":"covered"},"actual_forward":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Actual Forward"}},"type":"object","required":["spot_rate","domestic_rate","foreign_rate"],"title":"T38In"},"T39In":{"properties":{"base_spot_rate":{"type":"number","title":"Base Spot Rate"},"domestic_inflation":{"type":"number","title":"Domestic Inflation"},"foreign_inflation":{"type":"number","title":"Foreign Inflation"},"time_years":{"type":"number","title":"Time Years","default":1}},"type":"object","required":["base_spot_rate","domestic_inflation","foreign_inflation"],"title":"T39In"},"T3In":{"properties":{"legs":{"items":{"$ref":"#/components/schemas/Leg"},"type":"array","title":"Legs"},"S_range":{"anyOf":[{"items":{"type":"number"},"type":"array"},{"type":"null"}],"title":"S Range"},"points":{"type":"integer","minimum":1.0,"title":"Points","default":50}},"type":"object","required":["legs"],"title":"T3In"},"T40In":{"properties":{"yield_curve":{"items":{"$ref":"#/components/schemas/YieldPoint"},"type":"array","minItems":2,"title":"Yield Curve"},"forward_start":{"type":"number","title":"Forward Start"},"forward_end":{"type":"number","title":"Forward End"},"compounding":{"type":"string","enum":["continuous","annual","semi"],"title":"Compounding","default":"continuous"}},"type":"object","required":["yield_curve","forward_start","forward_end"],"title":"T40In"},"T41In":{"properties":{"borrow_currency_rate":{"type":"number","title":"Borrow Currency Rate"},"invest_currency_rate":{"type":"number","title":"Invest Currency Rate"},"spot_entry":{"type":"number","title":"Spot Entry"},"spot_exit":{"type":"number","title":"Spot Exit"},"holding_period_days":{"type":"integer","title":"Holding Period Days"},"leverage":{"type":"number","title":"Leverage","default":1},"notional":{"type":"number","title":"Notional","default":100000}},"type":"object","required":["borrow_currency_rate","invest_currency_rate","spot_entry","spot_exit","holding_period_days"],"title":"T41In"},"T42In":{"properties":{"nominal_return_pct":{"type":"number","title":"Nominal Return Pct"},"inflation_rate_pct":{"type":"number","title":"Inflation Rate Pct"},"periods":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Periods"},"initial_value":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Initial Value"}},"type":"object","required":["nominal_return_pct","inflation_rate_pct"],"title":"T42In"},"T43In":{"properties":{"current_inflation":{"type":"number","title":"Current Inflation"},"target_inflation":{"type":"number","title":"Target Inflation","default":2.0},"output_gap_pct":{"type":"number","title":"Output Gap Pct","default":0},"neutral_real_rate":{"type":"number","title":"Neutral Real Rate","default":2.0},"inflation_weight":{"type":"number","title":"Inflation Weight","default":0.5},"output_weight":{"type":"number","title":"Output Weight","default":0.5},"current_policy_rate":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Current Policy Rate"}},"type":"object","required":["current_inflation"],"title":"T43In"},"T44In":{"properties":{"nominal_yield":{"type":"number","title":"Nominal Yield"},"inflation_expectation":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Inflation Expectation"},"tips_yield":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Tips Yield"},"tenor_years":{"type":"number","title":"Tenor Years","default":10}},"type":"object","required":["nominal_yield"],"title":"T44In"},"T45In":{"properties":{"returns":{"items":{"type":"number"},"type":"array","minItems":10,"title":"Returns"},"confidence_levels":{"items":{"type":"number"},"type":"array","title":"Confidence Levels","default":[0.95,0.99]},"holding_period_days":{"type":"integer","title":"Holding Period Days","default":1},"portfolio_value":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Portfolio Value"}},"type":"object","required":["returns"],"title":"T45In"},"T46In":{"properties":{"positions":{"items":{"$ref":"#/components/schemas/Position"},"type":"array","title":"Positions"},"scenarios":{"items":{"$ref":"#/components/schemas/Scenario"},"type":"array","title":"Scenarios"}},"type":"object","required":["positions","scenarios"],"title":"T46In"},"T47In":{"properties":{"legs":{"items":{"$ref":"#/components/schemas/PayoffLeg"},"type":"array","title":"Legs"},"spot":{"type":"number","title":"Spot"},"price_range_pct":{"type":"number","title":"Price Range Pct","default":30},"points":{"type":"integer","minimum":1.0,"title":"Points","default":100}},"type":"object","required":["legs","spot"],"title":"T47In"},"T48In":{"properties":{"tenors":{"items":{"type":"number"},"type":"array","title":"Tenors"},"rates":{"items":{"type":"number"},"type":"array","title":"Rates"},"target_tenors":{"items":{"type":"number"},"type":"array","title":"Target Tenors"},"method":{"type":"string","enum":["linear","cubic","nelson_siegel"],"title":"Method","default":"linear"}},"type":"object","required":["tenors","rates","target_tenors"],"title":"T48In"},"T49In":{"properties":{"bond_price":{"type":"number","title":"Bond Price"},"coupon_rate":{"type":"number","title":"Coupon Rate"},"maturity_years":{"type":"integer","title":"Maturity Years"},"face_value":{"type":"number","title":"Face Value","default":1000},"payment_frequency":{"type":"integer","title":"Payment Frequency","default":2},"risk_free_curve":{"items":{"$ref":"#/components/schemas/CurvePoint"},"type":"array","title":"Risk Free Curve"}},"type":"object","required":["bond_price","coupon_rate","maturity_years","risk_free_curve"],"title":"T49In"},"T4In":{"properties":{"returns":{"items":{"type":"number"},"type":"array","maxItems":10000,"minItems":5,"title":"Returns"},"benchmark_returns":{"anyOf":[{"items":{"type":"number"},"type":"array"},{"type":"null"}],"title":"Benchmark Returns"},"risk_free_rate":{"type":"number","title":"Risk Free Rate","default":0.05}},"type":"object","required":["returns"],"title":"T4In"},"T50In":{"properties":{"prices":{"items":{"type":"number"},"type":"array","minItems":5,"title":"Prices"},"window":{"type":"integer","title":"Window","default":20},"num_std":{"type":"number","title":"Num Std","default":2}},"type":"object","required":["prices"],"title":"T50In"},"T51In":{"properties":{"swing_high":{"type":"number","title":"Swing High"},"swing_low":{"type":"number","title":"Swing Low"},"direction":{"type":"string","enum":["up","down"],"title":"Direction","default":"up"}},"type":"object","required":["swing_high","swing_low"],"title":"T51In"},"T52In":{"properties":{"high":{"items":{"type":"number"},"type":"array","title":"High"},"low":{"items":{"type":"number"},"type":"array","title":"Low"},"close":{"items":{"type":"number"},"type":"array","title":"Close"},"period":{"type":"integer","title":"Period","default":14}},"type":"object","required":["high","low","close"],"title":"T52In"},"T53In":{"properties":{"volatilities":{"items":{"type":"number"},"type":"array","title":"Volatilities"},"correlation_matrix":{"items":{"items":{"type":"number"},"type":"array"},"type":"array","title":"Correlation Matrix"},"risk_budget":{"anyOf":[{"items":{"type":"number"},"type":"array"},{"type":"null"}],"title":"Risk Budget"},"asset_names":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"Asset Names"}},"type":"object","required":["volatilities","correlation_matrix"],"title":"T53In"},"T54In":{"properties":{"trade_value":{"type":"number","exclusiveMinimum":0.0,"title":"Trade Value"},"commission_per_share":{"type":"number","title":"Commission Per Share","default":0},"commission_flat":{"type":"number","title":"Commission Flat","default":0},"commission_pct":{"type":"number","title":"Commission Pct","default":0},"shares":{"type":"integer","minimum":1.0,"title":"Shares","default":1},"spread_bps":{"type":"number","title":"Spread Bps","default":5},"market_impact_bps":{"type":"number","title":"Market Impact Bps","default":0},"adv":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Adv"},"participation_rate":{"type":"number","title":"Participation Rate","default":0.1}},"type":"object","required":["trade_value"],"title":"T54In"},"T55In":{"properties":{"returns":{"items":{"type":"number"},"type":"array","minItems":10,"title":"Returns"},"benchmark_sharpe":{"type":"number","title":"Benchmark Sharpe","default":0},"risk_free_rate":{"type":"number","title":"Risk Free Rate","default":0.05},"annualization_factor":{"type":"integer","title":"Annualization Factor","default":252}},"type":"object","required":["returns"],"title":"T55In"},"T56In":{"properties":{"future_value":{"type":"number","title":"Future Value","default":0},"payment":{"type":"number","title":"Payment","default":0},"rate":{"type":"number","exclusiveMinimum":-1.0,"title":"Rate"},"periods":{"type":"integer","maximum":1000.0,"minimum":1.0,"title":"Periods"},"payment_timing":{"type":"string","enum":["end","begin"],"title":"Payment Timing","default":"end"}},"type":"object","required":["rate","periods"],"title":"T56In"},"T57In":{"properties":{"present_value":{"type":"number","title":"Present Value","default":0},"payment":{"type":"number","title":"Payment","default":0},"rate":{"type":"number","exclusiveMinimum":-1.0,"title":"Rate"},"periods":{"type":"integer","maximum":1000.0,"minimum":1.0,"title":"Periods"},"payment_timing":{"type":"string","enum":["end","begin"],"title":"Payment Timing","default":"end"}},"type":"object","required":["rate","periods"],"title":"T57In"},"T58In":{"properties":{"cash_flows":{"items":{"type":"number"},"type":"array","minItems":2,"title":"Cash Flows"}},"type":"object","required":["cash_flows"],"title":"T58In"},"T59In":{"properties":{"cash_flows":{"items":{"type":"number"},"type":"array","minItems":1,"title":"Cash Flows"},"discount_rate":{"type":"number","exclusiveMinimum":-1.0,"title":"Discount Rate"}},"type":"object","required":["cash_flows","discount_rate"],"title":"T59In"},"T5In":{"properties":{"mode":{"type":"string","enum":["discrete","continuous"],"title":"Mode","default":"discrete"},"win_rate":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Win Rate"},"avg_win":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Avg Win"},"avg_loss":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Avg Loss"},"returns":{"anyOf":[{"items":{"type":"number"},"type":"array"},{"type":"null"}],"title":"Returns"}},"type":"object","title":"T5In"},"T60In":{"properties":{"close":{"items":{"type":"number"},"type":"array","minItems":5,"title":"Close"},"high":{"anyOf":[{"items":{"type":"number"},"type":"array"},{"type":"null"}],"title":"High"},"low":{"anyOf":[{"items":{"type":"number"},"type":"array"},{"type":"null"}],"title":"Low"},"open":{"anyOf":[{"items":{"type":"number"},"type":"array"},{"type":"null"}],"title":"Open"},"annualization_factor":{"type":"integer","title":"Annualization Factor","default":252}},"type":"object","required":["close"],"title":"T60In"},"T61In":{"properties":{"x":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"X"},"p":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"P"},"mean":{"type":"number","title":"Mean","default":0},"std":{"type":"number","exclusiveMinimum":0.0,"title":"Std","default":1},"confidence_level":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Confidence Level"}},"type":"object","title":"T61In"},"T62In":{"properties":{"returns":{"items":{"type":"number"},"type":"array","minItems":5,"title":"Returns"},"risk_free_rate":{"type":"number","title":"Risk Free Rate","default":0.05},"annualization_factor":{"type":"integer","title":"Annualization Factor","default":252}},"type":"object","required":["returns"],"title":"T62In"},"T63In":{"properties":{"start_value":{"type":"number","exclusiveMinimum":0.0,"title":"Start Value"},"end_value":{"type":"number","exclusiveMinimum":0.0,"title":"End Value"},"years":{"type":"number","exclusiveMinimum":0.0,"title":"Years"},"include_projections":{"type":"boolean","title":"Include Projections","default":false}},"type":"object","required":["start_value","end_value","years"],"title":"T63In"},"T6In":{"properties":{"initial_value":{"type":"number","title":"Initial Value","default":100000},"annual_return":{"type":"number","title":"Annual Return","default":0.1},"annual_vol":{"type":"number","title":"Annual Vol","default":0.2},"years":{"type":"number","maximum":100.0,"exclusiveMinimum":0.0,"title":"Years","default":5},"simulations":{"type":"integer","maximum":5000.0,"minimum":1.0,"title":"Simulations","default":1000},"contributions":{"type":"number","title":"Contributions","default":0},"withdrawal_rate":{"type":"number","title":"Withdrawal Rate","default":0}},"type":"object","title":"T6In"},"T7In":{"properties":{"prices":{"items":{"type":"number"},"type":"array","minItems":5,"title":"Prices"},"volumes":{"anyOf":[{"items":{"type":"number"},"type":"array"},{"type":"null"}],"title":"Volumes"},"period":{"type":"integer","minimum":2.0,"title":"Period","default":14}},"type":"object","required":["prices"],"title":"T7In"},"T8In":{"properties":{"series":{"additionalProperties":{"items":{"type":"number"},"type":"array"},"type":"object","title":"Series"}},"type":"object","required":["series"],"title":"T8In"},"T9In":{"properties":{"account_size":{"type":"number","title":"Account Size"},"risk_per_trade":{"type":"number","title":"Risk Per Trade","default":0.02},"entry_price":{"type":"number","title":"Entry Price"},"stop_loss":{"type":"number","title":"Stop Loss"}},"type":"object","required":["account_size","entry_price","stop_loss"],"title":"T9In"},"ValidationError":{"properties":{"loc":{"items":{"anyOf":[{"type":"string"},{"type":"integer"}]},"type":"array","title":"Location"},"msg":{"type":"string","title":"Message"},"type":{"type":"string","title":"Error Type"}},"type":"object","required":["loc","msg","type"],"title":"ValidationError"},"VolPoint":{"properties":{"strike":{"type":"number","title":"Strike"},"expiry_days":{"type":"number","title":"Expiry Days"},"implied_vol":{"type":"number","title":"Implied Vol"}},"type":"object","required":["strike","expiry_days","implied_vol"],"title":"VolPoint"},"YieldPoint":{"properties":{"tenor_years":{"type":"number","title":"Tenor Years"},"spot_rate":{"type":"number","title":"Spot Rate"}},"type":"object","required":["tenor_years","spot_rate"],"title":"YieldPoint"}}}}