Documentation build: 2ad88e973293
quant-pricer-cpp
Loading...
Searching...
No Matches
quant::portfolio Namespace Reference

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)
 

Detailed Description

Vectorized vanilla-option portfolio valuation and deterministic stress P&L.

Enumeration Type Documentation

◆ OptionType

enum class quant::portfolio::OptionType : int
strong
Enumerator
Put 
Call 

Function Documentation

◆ price_risk()

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.

◆ scenario_pnl()

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.