pub struct CrossUnder { /* private fields */ }
Expand description

Searches for value timeseries line crosses base line downwards

If value crossed base downwards, then returns Action::BUY_ALL

Else returns Action::None

Parameters

Has no parameters

Input type

Input type is (value: ValueType, base: ValueType)

Output type

Output type is Action

Examples

use yata::core::Method;
use yata::methods::CrossUnder;

let mut cross_under = CrossUnder::new((), &(0.0, 5.0)).unwrap();

let t1 = vec![0.0, 1.0, 2.0, 3.0, 4.0, 5.0];
let t2 = vec![5.0, 3.0, 1.8, 2.9, 4.1, 5.6];
let r  = vec![ 0,   0,   0,   0,   1,   0 ];

(0..t1.len()).for_each(|i| {
    let value = t1[i];
    let base = t2[i];
    let cross_value = cross_under.next(&(value, base)).analog();
    assert_eq!(cross_value, r[i]);
});

Performance

O(1)

See also

Cross, CrossAbove

Implementations

Returns true when value1 crosses value2 timeseries downwards Otherwise returns false

Trait Implementations

Returns a copy of the value. Read more

Performs copy-assignment from source. Read more

Formats the value using the given formatter. Read more

Returns the “default value” for a type. Read more

Deserialize this value from the given Serde deserializer. Read more

Method parameters

Input value type

Output value type

Static method for creating an instance of the method with given parameters and initial value (simply first input value)

Generates next output value based on the given input value

Creates an instance of the method with given parameters and initial value, wrapped by historical data holder

Creates an instance of the method with given parameters and initial value, wrapped by last produced value holder

Returns a name of the method

👎 Deprecated

Returns memory size of the method (size, align)

Iterates the Method over the given inputs slice and returns Vec of output values. Read more

Applies method to the sequence in-place.

Creates new Method instance and iterates it over the given inputs slice and returns Vec of output values. Read more

Creates new Method instance and applies it to the sequence.

Creates a function from the Method instance

Creates new function based on the method

Serialize this value into the given Serde serializer. Read more

Auto Trait Implementations

Blanket Implementations

Gets the TypeId of self. Read more

Immutably borrows from an owned value. Read more

Mutably borrows from an owned value. Read more

Returns the argument unchanged.

Calls U::from(self).

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

The resulting type after obtaining ownership.

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

🔬 This is a nightly-only experimental API. (toowned_clone_into)

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

The type returned in the event of a conversion error.

Performs the conversion.

The type returned in the event of a conversion error.

Performs the conversion.