pub struct CCI(_);
Expand description
Commodity channel index of specified length
for time series of type ValueType
In the original formula there is constant coefficient K = 1/0.015
. This implementation does not include this coefficient (tl;dr it is 1.0
).
Parameters
Has a single parameter length
: PeriodType
length
should be > 0
Input type
Input type is ValueType
Output type
Output type is ValueType
Performance
O(length
)
Trait Implementations
sourceimpl<'de> Deserialize<'de> for CCI
impl<'de> Deserialize<'de> for CCI
sourcefn 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
sourceimpl Method for CCI
impl Method for CCI
type Params = PeriodType
type Params = PeriodType
Method parameters
sourcefn new(length: Self::Params, value: &Self::Input) -> Result<Self, Error>
fn new(length: Self::Params, value: &Self::Input) -> Result<Self, Error>
Static method for creating an instance of the method with given parameters
and initial value
(simply first input value)
sourcefn next(&mut self, value: &Self::Input) -> Self::Output
fn next(&mut self, value: &Self::Input) -> Self::Output
Generates next output value based on the given input value
sourcefn with_history(
parameters: Self::Params,
initial_value: &Self::Input
) -> Result<WithHistory<Self, Self::Output>, Error> where
Self: Sized,
Self::Output: Debug + Clone,
fn with_history(
parameters: Self::Params,
initial_value: &Self::Input
) -> Result<WithHistory<Self, Self::Output>, Error> where
Self: Sized,
Self::Output: Debug + Clone,
Creates an instance of the method with given parameters
and initial value
, wrapped by historical data holder
sourcefn with_last_value(
parameters: Self::Params,
initial_value: &Self::Input
) -> Result<WithLastValue<Self, Self::Output>, Error> where
Self: Sized,
Self::Output: Debug + Clone,
fn with_last_value(
parameters: Self::Params,
initial_value: &Self::Input
) -> Result<WithLastValue<Self, Self::Output>, Error> where
Self: Sized,
Self::Output: Debug + Clone,
Creates an instance of the method with given parameters
and initial value
, wrapped by last produced value holder
sourcefn memsize(&self) -> (usize, usize) where
Self: Sized,
fn memsize(&self) -> (usize, usize) where
Self: Sized,
Returns memory size of the method (size, align)
sourcefn over<S>(&mut self, inputs: S) -> Vec<Self::Output> where
S: Sequence<Self::Input>,
Self::Input: Sized,
Self: Sized,
fn over<S>(&mut self, inputs: S) -> Vec<Self::Output> where
S: Sequence<Self::Input>,
Self::Input: Sized,
Self: Sized,
Iterates the Method
over the given inputs
slice and returns Vec
of output values. Read more
sourcefn apply<T, S>(&mut self, sequence: &mut S) where
S: Sequence<T> + AsMut<[T]> + ?Sized,
Self: Method<Input = T, Output = T> + Sized,
fn apply<T, S>(&mut self, sequence: &mut S) where
S: Sequence<T> + AsMut<[T]> + ?Sized,
Self: Method<Input = T, Output = T> + Sized,
Applies method to the sequence in-place.
sourcefn new_over<S>(
parameters: Self::Params,
inputs: S
) -> Result<Vec<Self::Output>, Error> where
S: Sequence<Self::Input>,
Self::Input: Sized,
Self: Sized,
fn new_over<S>(
parameters: Self::Params,
inputs: S
) -> Result<Vec<Self::Output>, Error> where
S: Sequence<Self::Input>,
Self::Input: Sized,
Self: Sized,
Creates new Method
instance and iterates it over the given inputs
slice and returns Vec
of output values. Read more
sourcefn new_apply<T, S>(
parameters: Self::Params,
sequence: &mut S
) -> Result<(), Error> where
S: Sequence<T> + AsMut<[T]>,
Self: Method<Input = T, Output = T> + Sized,
fn new_apply<T, S>(
parameters: Self::Params,
sequence: &mut S
) -> Result<(), Error> where
S: Sequence<T> + AsMut<[T]>,
Self: Method<Input = T, Output = T> + Sized,
Creates new Method
instance and applies it to the sequence
.
Auto Trait Implementations
impl RefUnwindSafe for CCI
impl Send for CCI
impl Sync for CCI
impl Unpin for CCI
impl UnwindSafe for CCI
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
sourceimpl<T> ToOwned for T where
T: Clone,
impl<T> ToOwned for T where
T: Clone,
type Owned = T
type Owned = T
The resulting type after obtaining ownership.
sourcefn clone_into(&self, target: &mut T)
fn clone_into(&self, target: &mut T)
toowned_clone_into
)Uses borrowed data to replace owned data, usually by cloning. Read more