Class BlackLittermanCombinationEngine
java.lang.Object
org.drip.portfolioconstruction.bayesian.BlackLittermanCombinationEngine
public class BlackLittermanCombinationEngine
extends java.lang.Object
BlackLittermanCombinationEngine implements the Engine that generates the Combined/Posterior
Distributions from the Prior and the Conditional Joint R1 Multivariate Normal Distributions.
The References are:
- He. G., and R. Litterman (1999): The Intuition behind the Black-Litterman Model Portfolios Goldman Sachs Asset Management
- Idzorek, T. (2005): A Step-by-Step Guide to the Black-Litterman Model: Incorporating User-Specified Confidence Levels Ibbotson Associates Chicago, IL
- Module = Portfolio Core Module
- Library = Asset Allocation Analytics
- Project = Portfolio Construction under Allocation Constraints
- Package = Black Litterman Bayesian Portfolio Construction
- Author:
- Lakshmi Krishnamurthy
-
Constructor Summary
Constructors Constructor Description BlackLittermanCombinationEngine(ForwardReverseHoldingsAllocation forwardReverseOptimizationOutputUnadjusted, PriorControlSpecification priorControlSpecification, ProjectionSpecification projectionSpecification)
BlackLittermanCombinationEngine Construction -
Method Summary
Modifier and Type Method Description BlackLittermanCustomConfidenceOutput
customConfidenceRun()
Conduct a Black Litterman Run using a Theil-like Mixed Model Estimator Using the specified Confidence LevelBlackLittermanOutput
fullConfidenceRun()
Conduct a Black Litterman Run using a Theil-like Mixed Model Estimator For 100% Confidence in the ProjectionProjectionImpliedConfidenceOutput
impliedConfidenceRun()
Compute the Idzorek Implied Projection Confidence LevelBlackLittermanOutput
noConfidenceRun()
Conduct a Black Litterman Run using a Theil-like Mixed Model Estimator for 0% Confidence in the ProjectionProjectionExposure
projectionExposureAttribution()
Compute the Exposure Loadings Attribution on a per-Projection BasisR1ToR1
tiltDepartureR1ToR1(double[] userConfidenceProjectionTiltArray, int projectionIndex, boolean generateDerivative)
Generate the Squared Tilt Departure R1 To R1double
tiltMismatchSquared(double[] userConfidenceProjectionTiltArray, int projectionIndex, double projectionVariance)
Compute the Mismatch between the User Specified Projection and the Custom Confidence Implied Tiltsdouble[][]
userConfidenceProjectionTitMatrix(double[] userSpecifiedProjectionConfidenceArray)
Compute the Idzorek Implied Tilt Matrix from the User Projection Confidence LevelMethods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Constructor Details
-
BlackLittermanCombinationEngine
public BlackLittermanCombinationEngine(ForwardReverseHoldingsAllocation forwardReverseOptimizationOutputUnadjusted, PriorControlSpecification priorControlSpecification, ProjectionSpecification projectionSpecification) throws java.lang.ExceptionBlackLittermanCombinationEngine Construction- Parameters:
forwardReverseOptimizationOutputUnadjusted
- The Unadjusted Instance of ForwardReverseOptimizationOutputpriorControlSpecification
- The Prior Control Specification InstanceprojectionSpecification
- The View Projection Specification Settings- Throws:
java.lang.Exception
- Thrown if the Inputs are Invalid
-
-
Method Details
-
noConfidenceRun
Conduct a Black Litterman Run using a Theil-like Mixed Model Estimator for 0% Confidence in the Projection- Returns:
- Output of the Black Litterman Run
-
customConfidenceRun
Conduct a Black Litterman Run using a Theil-like Mixed Model Estimator Using the specified Confidence Level- Returns:
- Output of the Black Litterman Run
-
fullConfidenceRun
Conduct a Black Litterman Run using a Theil-like Mixed Model Estimator For 100% Confidence in the Projection- Returns:
- Output of the Black Litterman Run
-
impliedConfidenceRun
Compute the Idzorek Implied Projection Confidence Level- Returns:
- The Idzorek Implied Projection Confidence Level
-
projectionExposureAttribution
Compute the Exposure Loadings Attribution on a per-Projection Basis- Returns:
- The Exposure Loadings Attribution on a per-Projection Basis
-
userConfidenceProjectionTitMatrix
public double[][] userConfidenceProjectionTitMatrix(double[] userSpecifiedProjectionConfidenceArray)Compute the Idzorek Implied Tilt Matrix from the User Projection Confidence Level- Parameters:
userSpecifiedProjectionConfidenceArray
- Array of User-specified Projection Confidence- Returns:
- The Idzorek Implied Tilt Matric from the Projection Confidence Level
-
tiltMismatchSquared
public double tiltMismatchSquared(double[] userConfidenceProjectionTiltArray, int projectionIndex, double projectionVariance) throws java.lang.ExceptionCompute the Mismatch between the User Specified Projection and the Custom Confidence Implied Tilts- Parameters:
userConfidenceProjectionTiltArray
- Array of the User Confidence induced Projection TiltsprojectionIndex
- The Index into the Projection MetaprojectionVariance
- The Projection Variance- Returns:
- The Squared Mismatch
- Throws:
java.lang.Exception
- Thrown if the Squared Mismatch cannot be calculated
-
tiltDepartureR1ToR1
public R1ToR1 tiltDepartureR1ToR1(double[] userConfidenceProjectionTiltArray, int projectionIndex, boolean generateDerivative)Generate the Squared Tilt Departure R1 To R1- Parameters:
userConfidenceProjectionTiltArray
- Array of the User Confidence induced Projection TiltsprojectionIndex
- The Index into the Projection MetagenerateDerivative
- TRUE - Generate the Derivative of the Tilt Departure- Returns:
- The Squared Tilt Departure R1 To R1
-