Class MeanVarianceOptimizer

java.lang.Object
org.drip.portfolioconstruction.allocator.MeanVarianceOptimizer
Direct Known Subclasses:
ConstrainedMeanVarianceOptimizer, QuadraticMeanVarianceOptimizer

public abstract class MeanVarianceOptimizer
extends java.lang.Object
MeanVarianceOptimizer exposes Portfolio Construction using Mean Variance Optimization Techniques.

Author:
Lakshmi Krishnamurthy
  • Constructor Details

    • MeanVarianceOptimizer

      public MeanVarianceOptimizer()
  • Method Details

    • longOnlyMaximumReturnsAllocate

      public abstract HoldingsAllocation longOnlyMaximumReturnsAllocate​(HoldingsAllocationControl portfolioConstructionParameters, AssetUniverseStatisticalProperties assetUniverseStatisticalProperties)
      Allocate the Long-Only Maximum Returns Portfolio
      Parameters:
      portfolioConstructionParameters - The Portfolio Construction Parameters
      assetUniverseStatisticalProperties - The Asset Universe Statistical Properties Instance
      Returns:
      The Long-Only Maximum Returns Portfolio
    • globalMinimumVarianceAllocate

      public abstract HoldingsAllocation globalMinimumVarianceAllocate​(HoldingsAllocationControl portfolioConstructionParameters, AssetUniverseStatisticalProperties assetUniverseStatisticalProperties)
      Allocate the Global Minimum Variance Portfolio without any Returns Constraints in the Parameters
      Parameters:
      portfolioConstructionParameters - The Portfolio Construction Parameters
      assetUniverseStatisticalProperties - The Asset Universe Statistical Properties Instance
      Returns:
      The Global Minimum Variance Portfolio
    • allocate

      public abstract HoldingsAllocation allocate​(HoldingsAllocationControl portfolioConstructionParameters, AssetUniverseStatisticalProperties assetUniverseStatisticalProperties)
      Allocate the Optimal Portfolio Weights given the Portfolio Construction Parameters
      Parameters:
      portfolioConstructionParameters - The Portfolio Construction Parameters
      assetUniverseStatisticalProperties - The Asset Universe Statistical Properties Instance
      Returns:
      The Optimal Portfolio
    • efficientFrontier

      public MarkovitzBullet efficientFrontier​(HoldingsAllocationControl portfolioConstructionParameters, AssetUniverseStatisticalProperties assetUniverseStatisticalProperties, int frontierSampleUnits)
      Generate the Efficient Frontier given the Portfolio Construction Parameters
      Parameters:
      portfolioConstructionParameters - The Portfolio Construction Parameters
      assetUniverseStatisticalProperties - The Asset Universe Statistical Properties Instance
      frontierSampleUnits - The Number of Frontier Sample Units
      Returns:
      The Efficient Frontier