pub struct Portfolio {
pub asset_ids: Vec<u64>,
pub values: Vec<f64>,
pub expected_returns: Vec<f64>,
pub volatilities: Vec<f64>,
pub correlation_matrix: Vec<f64>,
}Expand description
A portfolio of assets for risk analysis.
Fields§
§asset_ids: Vec<u64>Asset identifiers.
values: Vec<f64>Position values (notional or market value).
expected_returns: Vec<f64>Expected returns per asset.
volatilities: Vec<f64>Volatilities per asset.
correlation_matrix: Vec<f64>Correlation matrix (flattened, row-major).
Implementations§
Source§impl Portfolio
impl Portfolio
Sourcepub fn new(
asset_ids: Vec<u64>,
values: Vec<f64>,
expected_returns: Vec<f64>,
volatilities: Vec<f64>,
correlation_matrix: Vec<f64>,
) -> Self
pub fn new( asset_ids: Vec<u64>, values: Vec<f64>, expected_returns: Vec<f64>, volatilities: Vec<f64>, correlation_matrix: Vec<f64>, ) -> Self
Create a new portfolio.
Sourcepub fn total_value(&self) -> f64
pub fn total_value(&self) -> f64
Get total portfolio value.
Sourcepub fn correlation(&self, i: usize, j: usize) -> f64
pub fn correlation(&self, i: usize, j: usize) -> f64
Get correlation between two assets.
Trait Implementations§
Source§impl<'de> Deserialize<'de> for Portfolio
impl<'de> Deserialize<'de> for Portfolio
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Auto Trait Implementations§
impl Freeze for Portfolio
impl RefUnwindSafe for Portfolio
impl Send for Portfolio
impl Sync for Portfolio
impl Unpin for Portfolio
impl UnwindSafe for Portfolio
Blanket Implementations§
Source§impl<T> ArchivePointee for T
impl<T> ArchivePointee for T
Source§type ArchivedMetadata = ()
type ArchivedMetadata = ()
The archived version of the pointer metadata for this type.
Source§fn pointer_metadata(
_: &<T as ArchivePointee>::ArchivedMetadata,
) -> <T as Pointee>::Metadata
fn pointer_metadata( _: &<T as ArchivePointee>::ArchivedMetadata, ) -> <T as Pointee>::Metadata
Converts some archived metadata to the pointer metadata for itself.
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<F, W, T, D> Deserialize<With<T, W>, D> for F
impl<F, W, T, D> Deserialize<With<T, W>, D> for F
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> LayoutRaw for T
impl<T> LayoutRaw for T
Source§fn layout_raw(_: <T as Pointee>::Metadata) -> Result<Layout, LayoutError>
fn layout_raw(_: <T as Pointee>::Metadata) -> Result<Layout, LayoutError>
Gets the layout of the type.