- java.lang.Object
-
- org.ojalgo.data.domain.finance.portfolio.FinancePortfolio
-
- org.ojalgo.data.domain.finance.portfolio.SimplePortfolio
-
- All Implemented Interfaces:
java.lang.Comparable<FinancePortfolio>,FinancePortfolio.Context
public final class SimplePortfolio extends FinancePortfolio implements FinancePortfolio.Context
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class org.ojalgo.data.domain.finance.portfolio.FinancePortfolio
FinancePortfolio.Context
-
-
Field Summary
Fields Modifier and Type Field Description private MatrixR064myAssetReturnsprivate MatrixR064myAssetVolatilitiesprivate MatrixR064myAssetWeightsprivate java.util.List<SimpleAsset>myComponentsprivate MatrixR064myCorrelationsprivate MatrixR064myCovariancesprivate java.lang.Comparable<?>myMeanReturnprivate java.lang.Comparable<?>myReturnVarianceprivate java.util.List<java.math.BigDecimal>myWeights-
Fields inherited from class org.ojalgo.data.domain.finance.portfolio.FinancePortfolio
MATRIX_FACTORY
-
-
Constructor Summary
Constructors Constructor Description SimplePortfolio(double[] someWeights)SimplePortfolio(java.lang.Comparable<?>... someWeights)SimplePortfolio(java.util.List<SimpleAsset> someAssets)SimplePortfolio(FinancePortfolio.Context portfolioContext, FinancePortfolio weightsPortfolio)SimplePortfolio(Access2D<?> correlationsMatrix, java.util.List<SimpleAsset> someAssets)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description doublecalculatePortfolioReturn(FinancePortfolio weightsPortfolio)doublecalculatePortfolioVariance(FinancePortfolio weightsPortfolio)MatrixR064getAssetReturns()MatrixR064getAssetVolatilities()(package private) MatrixR064getAssetWeights()doublegetCorrelation(int row, int col)MatrixR064getCorrelations()doublegetCovariance(int row, int col)MatrixR064getCovariances()doublegetMeanReturn()The mean/expected return of this instrument.doublegetMeanReturn(int index)doublegetReturnVariance()The instrument's return variance.doublegetReturnVariance(int index)PortfolioSimulatorgetSimulator()doublegetVolatility(int index)java.math.BigDecimalgetWeight(int index)java.util.List<java.math.BigDecimal>getWeights()This method returns a list of the weights of the Portfolio's contained assets.protected voidreset()intsize()(package private) static java.util.List<SimpleAsset>toSimpleAssets(double[] someWeights)(package private) static java.util.List<SimpleAsset>toSimpleAssets(java.lang.Comparable<?>[] someWeights)-
Methods inherited from class org.ojalgo.data.domain.finance.portfolio.FinancePortfolio
compareTo, forecast, getConformance, getLossProbability, getLossProbability, getSharpeRatio, getSharpeRatio, getValueAtRisk, getValueAtRisk95, getVolatility, normalise, normalise, toString
-
-
-
-
Field Detail
-
myAssetReturns
private transient MatrixR064 myAssetReturns
-
myAssetVolatilities
private transient MatrixR064 myAssetVolatilities
-
myAssetWeights
private transient MatrixR064 myAssetWeights
-
myComponents
private final java.util.List<SimpleAsset> myComponents
-
myCorrelations
private final MatrixR064 myCorrelations
-
myCovariances
private transient MatrixR064 myCovariances
-
myMeanReturn
private transient java.lang.Comparable<?> myMeanReturn
-
myReturnVariance
private transient java.lang.Comparable<?> myReturnVariance
-
myWeights
private transient java.util.List<java.math.BigDecimal> myWeights
-
-
Constructor Detail
-
SimplePortfolio
public SimplePortfolio(Access2D<?> correlationsMatrix, java.util.List<SimpleAsset> someAssets)
-
SimplePortfolio
public SimplePortfolio(java.lang.Comparable<?>... someWeights)
-
SimplePortfolio
public SimplePortfolio(FinancePortfolio.Context portfolioContext, FinancePortfolio weightsPortfolio)
-
SimplePortfolio
public SimplePortfolio(double[] someWeights)
-
SimplePortfolio
public SimplePortfolio(java.util.List<SimpleAsset> someAssets)
-
-
Method Detail
-
toSimpleAssets
static java.util.List<SimpleAsset> toSimpleAssets(java.lang.Comparable<?>[] someWeights)
-
toSimpleAssets
static java.util.List<SimpleAsset> toSimpleAssets(double[] someWeights)
-
calculatePortfolioReturn
public double calculatePortfolioReturn(FinancePortfolio weightsPortfolio)
- Specified by:
calculatePortfolioReturnin interfaceFinancePortfolio.Context
-
calculatePortfolioVariance
public double calculatePortfolioVariance(FinancePortfolio weightsPortfolio)
- Specified by:
calculatePortfolioVariancein interfaceFinancePortfolio.Context
-
getAssetReturns
public MatrixR064 getAssetReturns()
- Specified by:
getAssetReturnsin interfaceFinancePortfolio.Context
-
getAssetVolatilities
public MatrixR064 getAssetVolatilities()
- Specified by:
getAssetVolatilitiesin interfaceFinancePortfolio.Context
-
getCorrelation
public double getCorrelation(int row, int col)
-
getCorrelations
public MatrixR064 getCorrelations()
- Specified by:
getCorrelationsin interfaceFinancePortfolio.Context
-
getCovariance
public double getCovariance(int row, int col)
-
getCovariances
public MatrixR064 getCovariances()
- Specified by:
getCovariancesin interfaceFinancePortfolio.Context
-
getMeanReturn
public double getMeanReturn()
Description copied from class:FinancePortfolioThe mean/expected return of this instrument. May return either the absolute or excess return of the instrument. The context in which an instance is used should make it clear which. return.- Specified by:
getMeanReturnin classFinancePortfolio
-
getMeanReturn
public double getMeanReturn(int index)
-
getReturnVariance
public double getReturnVariance()
Description copied from class:FinancePortfolioThe instrument's return variance. Subclasses must override either FinancePortfolio.getReturnVariance() or FinancePortfolio.getVolatility().- Overrides:
getReturnVariancein classFinancePortfolio
-
getReturnVariance
public double getReturnVariance(int index)
-
getSimulator
public PortfolioSimulator getSimulator()
-
getVolatility
public double getVolatility(int index)
-
getWeight
public java.math.BigDecimal getWeight(int index)
-
getWeights
public java.util.List<java.math.BigDecimal> getWeights()
Description copied from class:FinancePortfolioThis method returns a list of the weights of the Portfolio's contained assets. An asset weight is NOT restricted to being a share/percentage - it can be anything. Most subclasses do however assume that the list of asset weights are shares/percentages that sum up to 100%. Calling FinancePortfolio.normalise() will transform any set of weights to that form.- Specified by:
getWeightsin classFinancePortfolio
-
size
public int size()
- Specified by:
sizein interfaceFinancePortfolio.Context
-
reset
protected void reset()
- Specified by:
resetin classFinancePortfolio
-
getAssetWeights
MatrixR064 getAssetWeights()
-
-