pub struct TemaState { /* private fields */ }Expand description
Triple exponential moving average: 3·e1 − 3·e2 + e3.
Further lag reduction vs DEMA; longest warm-up of the EMA-family stack here.
Implementations§
Source§impl TemaState
impl TemaState
pub fn new(period: usize) -> FinanceResult<Self>
pub fn from_history(period: usize, closes: &[f64]) -> FinanceResult<Self>
pub fn period(&self) -> usize
pub fn reset(&mut self)
pub fn push(&mut self, close: f64) -> FinanceResult<Option<f64>>
pub fn push_bars(&mut self, closes: &[f64]) -> FinanceResult<Vec<Option<f64>>>
pub fn last(&self) -> Option<f64>
Trait Implementations§
Auto Trait Implementations§
impl Freeze for TemaState
impl RefUnwindSafe for TemaState
impl Send for TemaState
impl Sync for TemaState
impl Unpin for TemaState
impl UnsafeUnpin for TemaState
impl UnwindSafe for TemaState
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
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> ⓘ
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 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> ⓘ
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