<kiyosi/pricing/engines/barrier/finite_difference.hpp>
#include <kiyosi/pricing/engines/barrier/finite_difference.hpp>make_finite_difference_barrier_engine
Result<FiniteDifferenceBarrierEngine> kiyosi::make_finite_difference_barrier_engine(FiniteDifferenceSettings settings)Creates an engine after validating its configuration. 返回值: The engine, or an invalid_parameter error.
kiyosi::FiniteDifferenceBarrierEngine
class kiyosi::FiniteDifferenceBarrierEngineUniform-grid finite-difference engine for barrier options. Accepts 3..10,000 asset steps and 1..100,000 time steps.
成员
FiniteDifferenceBarrierEngine
kiyosi::FiniteDifferenceBarrierEngine::FiniteDifferenceBarrierEngine()=defaultCreates an engine with valid default settings.
price
Result<double> kiyosi::FiniteDifferenceBarrierEngine::price(const BarrierOption &option, const PricingContext &context) constPrices a barrier option by finite differences. 返回值: Price, or a contract, context, or numerical error.
price_with_greeks
Result<PricingResult> kiyosi::FiniteDifferenceBarrierEngine::price_with_greeks(const BarrierOption &option, const PricingContext &context, GreeksRequest greeks, NumericalShiftSettings settings={}) constPrices with the explicitly requested Greeks; unavailable measures remain empty. Delta, gamma, and speed reuse the solved layer; vanna/zomma and charm/color difference native delta/gamma shifted in volatility and time. Other measures use numerical price differences. Scheduled observation dates are validated once per request; shifted valuations retain their other checks.
settings
FiniteDifferenceSettings kiyosi::FiniteDifferenceBarrierEngine::settings() const noexceptReturns the engine settings.