pub struct ContractSpecFingerprint {
pub contract_multiplier: u32,
pub settlement: SettlementStyle,
pub exercise: ExerciseStyle,
pub quote_currency: String,
pub venue_product_code: String,
}Expand description
The economic-equivalence fingerprint that gates a cross-provider overlay
merge (docs/01-domain-model.md §4).
The InstrumentKey 4-tuple proves two feeds name the same option; this
fingerprint proves the two contracts are the same economic instrument
before a live overlay quote is allowed to overwrite a source-chain leg. It
is not part of the store key (two feeds still share one InstrumentKey
entry) — it is compared explicitly at overlay-join time (issue #7), where a
mismatch is a typed crate::OverlayError and the leg’s overlay is refused,
never silently merged.
Eq/Hash are derived so the overlay gate can compare it by value.
Fields§
§contract_multiplier: u32Contracts→underlying units, > 0 (e.g. 100 for a standard equity
option, 1 for a Deribit inverse contract).
settlement: SettlementStyleCash- or physically-settled.
exercise: ExerciseStyleEuropean- or American-exercise.
quote_currency: StringThe currency the premium is quoted in — ISO 4217, e.g. "USD".
venue_product_code: StringThe venue’s product/root code for this contract.
Trait Implementations§
Source§impl Clone for ContractSpecFingerprint
impl Clone for ContractSpecFingerprint
Source§fn clone(&self) -> ContractSpecFingerprint
fn clone(&self) -> ContractSpecFingerprint
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for ContractSpecFingerprint
impl Debug for ContractSpecFingerprint
impl Eq for ContractSpecFingerprint
Source§impl Hash for ContractSpecFingerprint
impl Hash for ContractSpecFingerprint
Source§impl PartialEq for ContractSpecFingerprint
impl PartialEq for ContractSpecFingerprint
impl StructuralPartialEq for ContractSpecFingerprint
Auto Trait Implementations§
impl Freeze for ContractSpecFingerprint
impl RefUnwindSafe for ContractSpecFingerprint
impl Send for ContractSpecFingerprint
impl Sync for ContractSpecFingerprint
impl Unpin for ContractSpecFingerprint
impl UnsafeUnpin for ContractSpecFingerprint
impl UnwindSafe for ContractSpecFingerprint
Blanket Implementations§
impl<T> Allocation for T
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
Source§fn in_current_span(self) -> Instrumented<Self> ⓘ
fn in_current_span(self) -> Instrumented<Self> ⓘ
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§impl<T> Pointable for T
impl<T> Pointable for T
Source§impl<T> PolicyExt for Twhere
T: ?Sized,
impl<T> PolicyExt for Twhere
T: ?Sized,
impl<T> Read<Exclusive, BecauseExclusive> for Twhere
T: ?Sized,
impl<T> Scalar for T
Source§impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
Source§fn to_subset(&self) -> Option<SS>
fn to_subset(&self) -> Option<SS>
self from the equivalent element of its
superset. Read moreSource§fn is_in_subset(&self) -> bool
fn is_in_subset(&self) -> bool
self is actually part of its subset T (and can be converted to it).Source§fn to_subset_unchecked(&self) -> SS
fn to_subset_unchecked(&self) -> SS
self.to_subset but without any property checks. Always succeeds.Source§fn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
self to the equivalent element of its superset.