Skip to main content

beta

Function beta 

Source
pub fn beta(asset_returns: &[f64], market_returns: &[f64]) -> FinanceResult<f64>
Expand description

OLS beta of asset returns vs market returns (same length series).

ยงExamples

use finance_solution::{beta, FinanceError};

let market = [0.01, 0.02, -0.01, 0.03];
let asset = [0.02, 0.04, -0.02, 0.06]; // ~2x market
let b = beta(&asset, &market).unwrap();
assert!((b - 2.0).abs() < 1e-9);

assert!(matches!(
    beta(&[0.1], &[0.1]),
    Err(FinanceError::Unsolvable { .. })
));
match beta(&[0.1, 0.2], &[0.1]) {
    Err(FinanceError::Unsolvable { message }) => assert!(message.contains("equal length")),
    other => panic!("expected Unsolvable, got {other:?}"),
}