pub struct StochasticOscillator { /* private fields */ }Expand description
A Stochastic Oscillator indicator.
Implementations§
Source§impl StochasticOscillator
impl StochasticOscillator
Sourcepub const DEFAULT_PERIOD: usize = 14usize
pub const DEFAULT_PERIOD: usize = 14usize
Default %K period (typically 14).
Sourcepub const DEFAULT_K_SMOOTH: usize = 3usize
pub const DEFAULT_K_SMOOTH: usize = 3usize
Default %K smoothing period (typically 3).
Sourcepub const DEFAULT_D_PERIOD: usize = 3usize
pub const DEFAULT_D_PERIOD: usize = 3usize
Default %D period (typically 3).
Sourcepub fn new(period: usize, k_smooth: usize, d_period: usize) -> Self
pub fn new(period: usize, k_smooth: usize, d_period: usize) -> Self
Creates a new StochasticOscillator with the given parameters.
§Arguments
period- The period for %K calculation.k_smooth- The smoothing period for %K.d_period- The period for %D calculation.
Sourcepub fn calculate(&mut self, price: f64) -> Option<StochResult>
pub fn calculate(&mut self, price: f64) -> Option<StochResult>
Updates the oscillator with a new price and returns the current oscillator result.
The oscillator calculates the raw %K value based on the current window of prices, applies smoothing if enough values exist, and then computes the %D value. It also generates a trading signal, a condition, and detects a crossover.
§Arguments
price- The latest price.
§Returns
Some(StochResult)if there is sufficient data, elseNone.
Auto Trait Implementations§
impl Freeze for StochasticOscillator
impl RefUnwindSafe for StochasticOscillator
impl Send for StochasticOscillator
impl Sync for StochasticOscillator
impl Unpin for StochasticOscillator
impl UnwindSafe for StochasticOscillator
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