Skip to main content

MaturityScale

Struct MaturityScale 

Source
pub struct MaturityScale {
    pub base_resolution: u32,
    pub minimum_range: u32,
    pub start: u32,
}
Expand description

A horizontal scale of maturities in months, for yield curves, encoded with key_time.

Maturities read 3M below a year and 2Y or 2Y6M from a year on. The axis labels multiples of 10 years first, then of 5 and 3 years, whole years, half years, quarters and months, and draws the longest kind shown in bold.

The bars of a chart take one slot each whatever their keys, so a curve spaced by maturity needs a slot every month: give the main series the whitespace bars and draw each curve as a series of its own, placed on them by key.

Fields§

§base_resolution: u32

Months between neighbouring slots.

§minimum_range: u32

Months the whitespace spans at least, from start.

§start: u32

Maturity of the first slot in months.

Implementations§

Source§

impl MaturityScale

Source

pub fn whitespace(&self, last: f64) -> Vec<Bar>

Whitespace bars every base_resolution months from start up to last, the longest maturity on the chart, or up to minimum_range when that is later. Non-finite last values fall back to minimum_range; finite values are capped at 12,000 months (1,000 years) before comparison, without limiting minimum_range.

Trait Implementations§

Source§

impl Clone for MaturityScale

Source§

fn clone(&self) -> MaturityScale

Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Copy for MaturityScale

Source§

impl Debug for MaturityScale

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Default for MaturityScale

Source§

fn default() -> Self

Monthly slots over the first ten years.

Source§

impl Eq for MaturityScale

Source§

impl HorizontalScale for MaturityScale

Source§

fn tick_marks( &self, points: &[(DateTime<Utc>, usize)], layout: &TickMarkLayout, ) -> Vec<TickMark>

The marks to label among points, the key and logical index of each bar in view in order, extended into whitespace on both sides using the chart’s full-history time mapping. When the keys reach before the first bar, every index is shifted by the same number of slots, so only the order of the indices and their differences carry meaning. The renderer places each mark at its key and skips labels that would overlap.
Source§

fn format_crosshair(&self, key: DateTime<Utc>, _bar_seconds: i64) -> String

The crosshair label of key. bar_seconds is the duration of the bars in view, which the time scale uses for the precision of the clock.
Source§

impl PartialEq for MaturityScale

Source§

fn eq(&self, other: &MaturityScale) -> bool

Equality operator ==. Read more
1.0.0 (const: unstable) · Source§

fn ne(&self, other: &Rhs) -> bool

Inequality operator !=. Read more
Source§

impl StructuralPartialEq for MaturityScale

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
§

impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
where ST: ?Sized, DT: ?Sized,

§

impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
where ST: ?Sized, DT: ?Sized,

Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
§

impl<Q, K> Equivalent<K> for Q
where Q: Eq + ?Sized, K: Borrow<Q> + ?Sized,

§

fn equivalent(&self, key: &K) -> bool

Checks if this value is equivalent to the given key. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> IntoEither for T

Source§

fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ

Converts 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 more
Source§

fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
where F: FnOnce(&Self) -> bool,

Converts 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 more
Source§

impl<T> MaybeSend for T
where T: Send + Sync + ?Sized,

§

impl<T> Read<Exclusive, BecauseExclusive> for T
where T: ?Sized,

§

impl<T> SerializableAny for T
where T: 'static + Any + Clone + for<'a> Send + Sync,

§

impl<T, S> SimdFrom<T, S> for T
where S: Simd,

§

fn simd_from(_simd: S, value: T) -> T

§

impl<F, T, S> SimdInto<T, S> for F
where T: SimdFrom<F, S>, S: Simd,

§

fn simd_into(self, simd: S) -> T

Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.