Expand description
§Frenchrs - Rust Library for Asset Pricing
Frenchrs is a high-performance library for asset pricing and financial analysis, built in Rust and leveraging the robust econametric infrastructure of Greeners.
§Implemented Models
- CAPM (Capital Asset Pricing Model): Asset pricing model based on systematic risk
- Fama-French 3 Factor: CAPM + size (SMB) and value (HML) factors
- Carhart 4 Factor: Fama-French 3 Factor + momentum factor (MOM)
- Fama-French 5 Factor: FF3 + profitability (RMW) and investment (CMA) factors
- Fama-French 6 Factor: FF5 + momentum factor (UMD)
- APT (Arbitrage Pricing Theory): Generic multi-factor model with N factors
§Roadmap
- Value-at-Risk (VaR)
- Conditional VaR (CVaR)
- Portfolio Optimization
- Black-Litterman Model
§Basic Example
use frenchrs::CAPM;
use greeners::CovarianceType;
use ndarray::array;
// Daily returns
let asset_returns = array![0.01, 0.02, -0.01, 0.03];
let market_returns = array![0.008, 0.015, -0.005, 0.025];
let risk_free_rate = 0.0001; // daily rate (~2.5% per year)
// Estimate CAPM with robust standard errors (HC3)
let result = CAPM::fit(
&asset_returns,
&market_returns,
risk_free_rate,
CovarianceType::HC3,
).unwrap();
println!("{}", result);
println!("Beta: {:.4}", result.beta);
println!("Alpha: {:.4}", result.alpha);Re-exports§
pub use apt::APTResult;pub use apt::APT;pub use capm::CAPMResult;pub use capm::CAPM;pub use carhart::Carhart4Factor;pub use carhart::Carhart4FactorResult;pub use fama_french_3f::FamaFrench3Factor;pub use fama_french_3f::FamaFrench3FactorResult;pub use fama_french_5f::FamaFrench5Factor;pub use fama_french_5f::FamaFrench5FactorResult;pub use fama_french_6f::FamaFrench6Factor;pub use fama_french_6f::FamaFrench6FactorResult;pub use fama_macbeth::FamaMacBeth;pub use fama_macbeth::FamaMacBethResult;pub use grs_test::GRSTest;pub use hj_distance::HJDistance;pub use ivol_tracking_multi::IVOLTrackingAsset;pub use ivol_tracking_multi::IVOLTrackingMulti;pub use ivol_tracking_multi::IVOLTrackingRow;pub use oos_performance::OOSPerformance;pub use oos_performance::OOSPerformanceAsset;pub use oos_performance::OOSPerformanceRow;pub use oos_performance::OOSSummaryStats;pub use residual_correlation::ResidualCorrSummary;pub use residual_correlation::ResidualCorrelation;pub use residual_diagnostics::AssetDiagnostics;pub use residual_diagnostics::ResidualDiagnostics;pub use risk_metrics::IVOLAnalysis;pub use risk_metrics::TrackingErrorAnalysis;pub use rolling_betas_multi::BetaStability;pub use rolling_betas_multi::RollingBetasAsset;pub use rolling_betas_multi::RollingBetasMulti;pub use rolling_betas_multi::RollingBetasRow;
Modules§
- apt
- capm
- carhart
- fama_
french_ 3f - fama_
french_ 5f - fama_
french_ 6f - fama_
macbeth - grs_
test - GRS Test (Gibbons, Ross & Shanken, 1989)
- hj_
distance - Hansen-Jagannathan Distance
- ivol_
tracking_ multi - oos_
performance - residual_
correlation - Residual Correlation Analysis
- residual_
diagnostics - Residual Diagnostics
- risk_
metrics - rolling_
betas_ multi
Structs§
- Data
Frame - A simple DataFrame-like structure for storing column-oriented data.
- Formula
- Represents a parsed formula in the form “y ~ x1 + x2 + … + xn”
- OLS
Enums§
- Covariance
Type - Greeners
Error - Custom error types for the Greeners library.
- Inference
Type - Inference distribution type for hypothesis testing and confidence intervals