Skip to main content

rolling_max_drawdown

Function rolling_max_drawdown 

Source
pub fn rolling_max_drawdown(prices: &[f64]) -> FinanceResult<Vec<f64>>
Expand description

Running maximum drawdown magnitude observed up to each price index.

ยงExamples

use finance_solution::{rolling_max_drawdown, FinanceError};

let r = rolling_max_drawdown(&[100.0, 90.0]).unwrap();
assert!((r[1] - 0.10).abs() < 1e-12);
assert!(matches!(
    rolling_max_drawdown(&[]),
    Err(FinanceError::Unsolvable { .. })
));