Record Class TurnoverAwareOptimizer.Settings

java.lang.Object
java.lang.Record
com.quantfinlib.alpha.TurnoverAwareOptimizer.Settings
Record Components:
riskAversion - λ > 0
turnoverPenalty - κ ≥ 0, per unit of |Δw|
rho - ADMM penalty parameter > 0 (1 is a reasonable start when α and Σ are on comparable scales)
maxIterations - iteration cap
tolerance - per-coordinate residual tolerance
Enclosing class:
TurnoverAwareOptimizer

public static record TurnoverAwareOptimizer.Settings(double riskAversion, double turnoverPenalty, double rho, int maxIterations, double tolerance) extends Record
Optimiser settings.
  • Constructor Details

    • Settings

      public Settings(double riskAversion, double turnoverPenalty, double rho, int maxIterations, double tolerance)
      Creates an instance of a Settings record class.
      Parameters:
      riskAversion - the value for the riskAversion record component
      turnoverPenalty - the value for the turnoverPenalty record component
      rho - the value for the rho record component
      maxIterations - the value for the maxIterations record component
      tolerance - the value for the tolerance record component
  • Method Details

    • of

      public static TurnoverAwareOptimizer.Settings of(double riskAversion, double turnoverPenalty)
    • toString

      public final String toString()
      Returns a string representation of this record class. The representation contains the name of the class, followed by the name and value of each of the record components.
      Specified by:
      toString in class Record
      Returns:
      a string representation of this object
    • hashCode

      public final int hashCode()
      Returns a hash code value for this object. The value is derived from the hash code of each of the record components.
      Specified by:
      hashCode in class Record
      Returns:
      a hash code value for this object
    • equals

      public final boolean equals(Object o)
      Indicates whether some other object is "equal to" this one. The objects are equal if the other object is of the same class and if all the record components are equal. All components in this record class are compared with the compare method from their corresponding wrapper classes.
      Specified by:
      equals in class Record
      Parameters:
      o - the object with which to compare
      Returns:
      true if this object is the same as the o argument; false otherwise.
    • riskAversion

      public double riskAversion()
      Returns the value of the riskAversion record component.
      Returns:
      the value of the riskAversion record component
    • turnoverPenalty

      public double turnoverPenalty()
      Returns the value of the turnoverPenalty record component.
      Returns:
      the value of the turnoverPenalty record component
    • rho

      public double rho()
      Returns the value of the rho record component.
      Returns:
      the value of the rho record component
    • maxIterations

      public int maxIterations()
      Returns the value of the maxIterations record component.
      Returns:
      the value of the maxIterations record component
    • tolerance

      public double tolerance()
      Returns the value of the tolerance record component.
      Returns:
      the value of the tolerance record component