org.ojalgo.finance.portfolio
Class BlackLittermanModel

java.lang.Object
  extended by org.ojalgo.finance.portfolio.FinancePortfolio
      extended by org.ojalgo.finance.portfolio.BlackLittermanModel

public final class BlackLittermanModel
extends FinancePortfolio


Constructor Summary
BlackLittermanModel(org.ojalgo.finance.portfolio.EquilibriumModel anEquilibriumModel)
           
BlackLittermanModel(MarketEquilibrium aMarketEquilibrium, BasicMatrix originalWeights)
           
 
Method Summary
 void addView(FinancePortfolio aView)
           
 void addViewWithBalancedConfidence(List<BigDecimal> someWeights, BigDecimal aReturn)
           
 void addViewWithScaledConfidence(List<BigDecimal> someWeights, BigDecimal aReturn, BigDecimal aScale)
           
 void addViewWithStandardDeviation(List<BigDecimal> someWeights, BigDecimal aReturn, BigDecimal aStdDev)
          Deprecated. v30
 void addViewWithVariance(List<BigDecimal> someWeights, BigDecimal aReturn, BigDecimal aVariance)
          Deprecated. v30
 BasicMatrix getAssetReturns()
           
 List<SimpleAsset> getAssets()
           
 BasicMatrix getAssetWeights()
           
 BigDecimal getConfidence()
          "weight on views" or "tau" A parameter that describes the general confidence in the views.
 BasicMatrix getCovariances()
           
 BigDecimal getImpliedRiskAversion(BasicMatrix aWeightsVctr, BasicMatrix aReturnsVctr)
           
 double getMeanReturn()
          The mean/expected return of this instrument.
 double getReturnVariance()
          The instrument's return variance.
 BigDecimal getRiskAversion()
           
 String[] getSymbols()
           
 List<BigDecimal> getWeights()
          This method returns a list of the weights of the Portfolio's contained assets.
 void setConfidence(BigDecimal aWeight)
           
 void setRiskAversion(Number aFactor)
           
 
Methods inherited from class org.ojalgo.finance.portfolio.FinancePortfolio
forecast, getSharpeRatio, getValueAtRisk, getVolatility, normalise, shift
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

BlackLittermanModel

public BlackLittermanModel(org.ojalgo.finance.portfolio.EquilibriumModel anEquilibriumModel)

BlackLittermanModel

public BlackLittermanModel(MarketEquilibrium aMarketEquilibrium,
                           BasicMatrix originalWeights)
Parameters:
aMarketEquilibrium - The covariance matrix, and market risk aversion
originalWeights - The market portfolio
Method Detail

addView

public final void addView(FinancePortfolio aView)

addViewWithBalancedConfidence

public final void addViewWithBalancedConfidence(List<BigDecimal> someWeights,
                                                BigDecimal aReturn)

addViewWithScaledConfidence

public final void addViewWithScaledConfidence(List<BigDecimal> someWeights,
                                              BigDecimal aReturn,
                                              BigDecimal aScale)

addViewWithStandardDeviation

@Deprecated
public final void addViewWithStandardDeviation(List<BigDecimal> someWeights,
                                                          BigDecimal aReturn,
                                                          BigDecimal aStdDev)
Deprecated. v30


addViewWithVariance

@Deprecated
public final void addViewWithVariance(List<BigDecimal> someWeights,
                                                 BigDecimal aReturn,
                                                 BigDecimal aVariance)
Deprecated. v30


getConfidence

public final BigDecimal getConfidence()
"weight on views" or "tau" A parameter that describes the general confidence in the views. Typically set to sometghing between 0.0 and 1.0. 0.0 = "No confidence!" Why bother... 1.0 = As confident as the market. This is highly unlikely.


setConfidence

public final void setConfidence(BigDecimal aWeight)
See Also:
getConfidence()

getAssetReturns

public final BasicMatrix getAssetReturns()

getAssets

public List<SimpleAsset> getAssets()

getAssetWeights

public final BasicMatrix getAssetWeights()

getCovariances

public final BasicMatrix getCovariances()

getImpliedRiskAversion

public final BigDecimal getImpliedRiskAversion(BasicMatrix aWeightsVctr,
                                               BasicMatrix aReturnsVctr)

getMeanReturn

public final double getMeanReturn()
Description copied from class: FinancePortfolio
The 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. Calling FinancePortfolio.shift(Number) with an appropriate argument will transform between absolute and excess return.

Specified by:
getMeanReturn in class FinancePortfolio

getReturnVariance

public final double getReturnVariance()
Description copied from class: FinancePortfolio
The instrument's return variance. Subclasses must override either FinancePortfolio.getReturnVariance() or FinancePortfolio.getVolatility().

Overrides:
getReturnVariance in class FinancePortfolio

getRiskAversion

public final BigDecimal getRiskAversion()

getSymbols

public final String[] getSymbols()

getWeights

public final List<BigDecimal> getWeights()
Description copied from class: FinancePortfolio
This 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:
getWeights in class FinancePortfolio

setRiskAversion

public final void setRiskAversion(Number aFactor)