#[non_exhaustive]pub struct InstrumentGreeks {
pub delta: f64,
pub gamma: f64,
pub vega: f64,
pub theta: f64,
pub rho: f64,
}Expand description
First-order Greeks (plus gamma) for a single option.
Sign and unit conventions:
- delta: dimensionless;
df * N(d1)(call) ordf * (N(d1) - 1)(put). - gamma:
d^2 price / dF^2, per unit forward (raw, not scaled); identical for calls and puts. - vega: price change per 1% absolute change in volatility
(
raw_dv_dsigma / 100); identical for calls and puts. - theta: per-calendar-day time decay (year = 365.25 days); negative for long positions.
- rho: price change per 1% absolute change in the rate
(
dprice/dr / 100); negative under Black-76 (dC/dr = -T*C).
New fields may be added in future minor versions.
Fields (Non-exhaustive)§
This struct is marked as non-exhaustive
Non-exhaustive structs could have additional fields added in future. Therefore, non-exhaustive structs cannot be constructed in external crates using the traditional
Struct { .. } syntax; cannot be matched against without a wildcard ..; and struct update syntax will not work.delta: f64Delta: sensitivity to the forward, df * N(d1) (call) or df * (N(d1) - 1) (put).
gamma: f64Gamma: d^2 price / dF^2 = df * n(d1) / (F * sigma * sqrt(T)) (per unit forward, raw).
vega: f64Vega: price change for a 1% absolute change in IV (per-1%, not per-1).
theta: f64Theta: per-day price decay.
rho: f64Rho: price change for a 1% absolute change in the rate (per-1%).
Trait Implementations§
Source§impl Clone for InstrumentGreeks
impl Clone for InstrumentGreeks
Source§fn clone(&self) -> InstrumentGreeks
fn clone(&self) -> InstrumentGreeks
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for InstrumentGreeks
impl Debug for InstrumentGreeks
Source§impl<'de> Deserialize<'de> for InstrumentGreeks
impl<'de> Deserialize<'de> for InstrumentGreeks
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Source§impl Serialize for InstrumentGreeks
impl Serialize for InstrumentGreeks
impl Copy for InstrumentGreeks
Auto Trait Implementations§
impl Freeze for InstrumentGreeks
impl RefUnwindSafe for InstrumentGreeks
impl Send for InstrumentGreeks
impl Sync for InstrumentGreeks
impl Unpin for InstrumentGreeks
impl UnsafeUnpin for InstrumentGreeks
impl UnwindSafe for InstrumentGreeks
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more