Beta measures systematic risk vs market. β=1 moves with market, β>1 more volatile, β<1 less. Calculated via regression.
β = Cov(Ri, Rm) / Var(Rm)
β = Σ(Ri - R̄)(Rm - R̄) / Σ(Rm - R̄)²
// Calculate Beta from return series
function calculateBeta(stockReturns, marketReturns) {
const n = stockReturns.length;
// Calculate means
const stockMean = stockReturns.reduce((a,b)=>a+b,0) / n;
const marketMean = marketReturns.reduce((a,b)=>a+b,0) / n;
// Calculate covariance and variance
let covariance = 0;
let marketVariance = 0;
for (let i = 0; i < n; i++) {
covariance += (stockReturns[i] - stockMean) *
(marketReturns[i] - marketMean);
marketVariance += (marketReturns[i] - marketMean) ** 2;
}
return covariance / marketVariance;
}