@Override public double getReturnVariance() { if (myReturnVariance == null) { final MarketEquilibrium tmpMarketEquilibrium = new MarketEquilibrium(this.getCovariances()); final BasicMatrix tmpWeightsVector = this.getAssetWeights(); myReturnVariance = tmpMarketEquilibrium.calculatePortfolioVariance(tmpWeightsVector).getNumber(); } return myReturnVariance.doubleValue(); }
public double calculatePortfolioReturn(final FinancePortfolio weightsPortfolio) { final List<BigDecimal> tmpWeights = weightsPortfolio.getWeights(); final BasicMatrix tmpAssetWeights = MATRIX_FACTORY.columns(tmpWeights); final BasicMatrix tmpAssetReturns = this.getAssetReturns(); return MarketEquilibrium.calculatePortfolioReturn(tmpAssetWeights, tmpAssetReturns) .doubleValue(); }
@Override public double getMeanReturn() { if (myMeanReturn == null) { final BasicMatrix tmpWeightsVector = this.getAssetWeights(); final BasicMatrix tmpReturnsVector = this.getAssetReturns(); myMeanReturn = MarketEquilibrium.calculatePortfolioReturn(tmpWeightsVector, tmpReturnsVector) .getNumber(); } return myMeanReturn.doubleValue(); }