2ad88e973293|
quant-pricer-cpp
|
Vectorized vanilla-option portfolio valuation and deterministic stress P&L. More...
Classes | |
| struct | MarketShock |
| struct | PortfolioTotals |
| struct | PositionRisk |
| struct | RiskResult |
| struct | ScenarioResult |
| struct | VanillaPosition |
Enumerations | |
| enum class | OptionType : int { Put = -1 , Call = 1 } |
Functions | |
| RiskResult | price_risk (const std::vector< VanillaPosition > &positions) |
| ScenarioResult | scenario_pnl (const std::vector< VanillaPosition > &positions, const std::vector< MarketShock > &shocks, bool include_position_pnl=false) |
Vectorized vanilla-option portfolio valuation and deterministic stress P&L.
|
strong |
| RiskResult quant::portfolio::price_risk | ( | const std::vector< VanillaPosition > & | positions | ) |
Validate and value a non-empty portfolio. Throws std::invalid_argument on non-finite or economically invalid inputs.
| ScenarioResult quant::portfolio::scenario_pnl | ( | const std::vector< VanillaPosition > & | positions, |
| const std::vector< MarketShock > & | shocks, | ||
| bool | include_position_pnl = false |
||
| ) |
Exact-reprice each position under each shock. When include_position_pnl is false, the potentially large scenario-by-position matrix is not allocated.