[−][src]Struct ta::indicators::BollingerBands
A Bollinger Bands (BB). (BB). It is a type of infinite impulse response filter that calculates Bollinger Bands using Exponential Moving Average. The Bollinger Bands are represented by Average EMA and standard deviaton that is moved 'k' times away in both directions from calculated average value.
Formula
See SMA, SD documentation.
BB is composed as:
- BBMiddle Band - Simple Moving Average (SMA).
- BBUpper Band = SMA + SD of observation * multipler (usually 2.0)
- BBLower Band = SMA - SD of observation * multipler (usually 2.0)
Example
use ta::indicators::{BollingerBands, BollingerBandsOutput}; use ta::Next; let mut bb = BollingerBands::new(3, 2.0_f64).unwrap(); let out_0 = bb.next(2.0); let out_1 = bb.next(5.0); assert_eq!(out_0.average, 2.0); assert_eq!(out_0.upper, 2.0); assert_eq!(out_0.lower, 2.0); assert_eq!(out_1.average, 3.5); assert_eq!(out_1.upper, 6.5); assert_eq!(out_1.lower, 0.5);
Links
Methods
impl BollingerBands
[src]
pub fn new(length: u32, multiplier: f64) -> Result<Self>
[src]
pub fn length(&self) -> u32
[src]
pub fn multiplier(&self) -> f64
[src]
Trait Implementations
impl Clone for BollingerBands
[src]
fn clone(&self) -> BollingerBands
[src]
fn clone_from(&mut self, source: &Self)
1.0.0[src]
impl Debug for BollingerBands
[src]
impl Default for BollingerBands
[src]
impl Display for BollingerBands
[src]
impl<'a, T: Close> Next<&'a T> for BollingerBands
[src]
impl Next<f64> for BollingerBands
[src]
impl Reset for BollingerBands
[src]
Auto Trait Implementations
impl RefUnwindSafe for BollingerBands
impl Send for BollingerBands
impl Sync for BollingerBands
impl Unpin for BollingerBands
impl UnwindSafe for BollingerBands
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> From<T> for T
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T> ToOwned for T where
T: Clone,
[src]
T: Clone,
type Owned = T
The resulting type after obtaining ownership.
fn to_owned(&self) -> T
[src]
fn clone_into(&self, target: &mut T)
[src]
impl<T> ToString for T where
T: Display + ?Sized,
[src]
T: Display + ?Sized,
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,