Assets and Futures
The following payoffs are used to model FX, Equity, Inflation and Futures instruments.
DiffFusion.Asset
— Typestruct Asset <: Leaf
obs_time::ModelTime
key::String
end
The price of a tradeable asset S(t) at observation time t.
A tradeable asset is typically an FX rate, equity/index price or spot inflation index.
DiffFusion.ForwardAsset
— Typestruct ForwardAsset <: Leaf
obs_time::ModelTime
maturity_time::ModelTime
key::String
end
The forward price E_t[S(T)] of a tradeable asset S at observation time t and with maturity time T. Expectation is calculated in T-forward measure.
DiffFusion.ForwardIndex
— Typestruct ForwardIndex <: Leaf
obs_time::ModelTime
maturity_time::ModelTime
key::String
end
Expectation Et^T[ST] of a tradeable asset.
This is used in particular for inflation modelling.
DiffFusion.FutureIndex
— Typestruct FutureIndex <: Leaf
obs_time::ModelTime
maturity_time::ModelTime
key::String
end
Risk-neutral expectation Et^T[ST] of a price index.
This is used in particular for Future modelling.
Convexity Adjustment
DiffFusion.AssetConvexityAdjustment
— Typestruct AssetConvexityAdjustment <: Leaf
obs_time::ModelTime
first_time::ModelTime
second_time::ModelTime
pay_time::ModelTime
key::String
end
Convexity adjustment factor for YoY asset payoffs.
DiffFusion.IndexConvexityAdjustment
— Typestruct IndexConvexityAdjustment <: Leaf
obs_time::ModelTime
first_time::ModelTime
second_time::ModelTime
pay_time::ModelTime
key::String
end
Convexity adjustment factor for YoY index payoffs.
Asset Option Payoffs
DiffFusion.VanillaAssetOption
— Typestruct VanillaAssetOption <: Payoff
obs_time::ModelTime
expiry_time::ModelTime
forward_price::ForwardAsset
strike_price::Payoff
call_put::ModelValue
end
The time-t forward price of an option paying [ϕ(F-K)]^+. Forward asset price F is determined at expiry_time
.
Option forward price is calculated as expectation in T-forward measure where T corresponds to the expiry time. Conditioning (for time-t price) is on information at obs_time
.
Strike price strike_price
must be time-t (obs_time
) measurable. Otherwise, we look into the future.
DiffFusion.BarrierAssetOption
— Typestruct BarrierAssetOption <: Payoff
obs_time::ModelTime
expiry_time::ModelTime
forward_price::ForwardAsset
strike_price::Payoff
call_put::ModelValue
barrier_level::Payoff
barrier_direction::ModelValue
barrier_type::ModelValue
rebate_price::ModelValue
no_hit_times::AbstractVector
end
The time-t forward price of an option paying [ϕ(F-K)]^+. Forward asset price F is determined at expiry_time
.
Option forward price is calculated as expectation in T-forward measure where T corresponds to the expiry time. Conditioning (for time-t price) is on information at obs_time
. This requires particular care when using Black-Scholes pricing functions.
Strike price strike_price
and barrier level barrier_level
must be time-t (obs_time
) measurable. Otherwise, we look into the future.
barrier_direction
is -1 for up-barrier and +1 for down-barrier. barrier_type
is -1 for in-barrier and +1 for out-barrier. See also black_scholes_barrier_price
.
no_hit_times
is a list of times where past hit events are observed and with which no-hit probability is estimated. First time is zero and last time is obs_time
. Must be of length 2 or more.