pub struct RiskAnalyzer { /* private fields */ }Expand description
Risk analyzer
Implementations§
Source§impl RiskAnalyzer
impl RiskAnalyzer
pub fn new() -> Self
pub fn initialize(&mut self) -> Result<(), FinancialError>
Sourcepub fn add_benchmark(&mut self, name: &str, returns: Vec<f64>)
pub fn add_benchmark(&mut self, name: &str, returns: Vec<f64>)
Register a benchmark return series by name. If no benchmark is currently
active, the newly registered one becomes active so that subsequent
calculate_risk_metrics calls produce real beta/alpha.
Sourcepub fn set_active_benchmark(&mut self, name: Option<&str>)
pub fn set_active_benchmark(&mut self, name: Option<&str>)
Select which registered benchmark calculate_risk_metrics should use, or
None to compute beta/alpha-free (NaN) metrics.
pub fn calculate_risk_metrics( &self, portfolio: &Portfolio, ) -> Result<RiskMetrics, FinancialError>
pub fn add_risk_model(&mut self, model: RiskModel)
pub fn get_risk_model(&self, model_id: &str) -> Option<&RiskModel>
pub fn list_risk_models(&self) -> Vec<String>
pub fn add_risk_metric(&mut self, metric: RiskMetric)
pub fn get_risk_metric(&self, metric_id: &str) -> Option<&RiskMetric>
pub fn list_risk_metrics(&self) -> Vec<String>
Auto Trait Implementations§
impl Freeze for RiskAnalyzer
impl RefUnwindSafe for RiskAnalyzer
impl Send for RiskAnalyzer
impl Sync for RiskAnalyzer
impl Unpin for RiskAnalyzer
impl UnsafeUnpin for RiskAnalyzer
impl UnwindSafe for RiskAnalyzer
Blanket Implementations§
§impl<S, A> Aggregate<Result<S, Error>> for Awhere
A: Aggregate<S>,
impl<S, A> Aggregate<Result<S, Error>> for Awhere
A: Aggregate<S>,
Aggregate shares in an MPC protocol.
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more