Class TemporaryImpact


public class TemporaryImpact
extends TransactionFunctionPower
TemporaryImpact implements the Temporary Market Impact with Exponent/Coefficients that have been determined empirically by Almgren, Thum, Hauptmann, and Li (2005), using the Parameterization of Almgren (2003). The References are:

  • Almgren, R., and N. Chriss (1999): Value under Liquidation Risk 12 (12)
  • Almgren, R., and N. Chriss (2000): Optimal Execution of Portfolio Transactions Journal of Risk 3 (2) 5-39
  • Almgren, R. (2003): Optimal Execution with Nonlinear Impact Functions and Trading-Enhanced Risk Applied Mathematical Finance 10 (1) 1-18
  • Almgren, R., and N. Chriss (2003): Bidding Principles Risk 97-102
  • Almgren, R., C. Thum, E. Hauptmann, and H. Li (2005): Equity Market Impact Risk 18 (7) 57-62


Author:
Lakshmi Krishnamurthy
  • Constructor Details

    • TemporaryImpact

      public TemporaryImpact​(AssetFlowSettings afp) throws java.lang.Exception
      TemporaryImpact Constructor
      Parameters:
      afp - The Asset Flow Parameters
      Throws:
      java.lang.Exception - Thrown if the Inputs are Invalid
  • Method Details

    • assetFlowParameters

      public AssetFlowSettings assetFlowParameters()
      Retrieve the Asset Flow Parameters
      Returns:
      The Asset Flow Parameters
    • regularize

      public double regularize​(double dblTradeInterval) throws java.lang.Exception
      Description copied from class: TransactionFunction
      Regularize the Input Function using the specified Trade Inputs
      Specified by:
      regularize in class TransactionFunction
      Parameters:
      dblTradeInterval - The Trade Interval
      Returns:
      The Regularize Input
      Throws:
      java.lang.Exception - Thrown if the Inputs are Invalid
    • modulate

      public double modulate​(double dblTradeInterval) throws java.lang.Exception
      Description copied from class: TransactionFunction
      Modulate/Scale the Impact Output
      Specified by:
      modulate in class TransactionFunction
      Parameters:
      dblTradeInterval - The Trade Interval
      Returns:
      The Modulated Output
      Throws:
      java.lang.Exception - Thrown if the Inputs are Invalid
    • constant

      public double constant()
      Description copied from class: TransactionFunctionPower
      Retrieve the Constant Market Impact Parameter
      Specified by:
      constant in class TransactionFunctionPower
      Returns:
      The Constant Market Impact Parameter
    • exponent

      public double exponent()
      Description copied from class: TransactionFunctionPower
      Retrieve the Power Law Exponent Market Impact Parameter
      Specified by:
      exponent in class TransactionFunctionPower
      Returns:
      The Power Law Exponent Market Impact Parameter
    • evaluate

      public double evaluate​(double dblNormalizedX) throws java.lang.Exception
      Description copied from class: R1ToR1
      Evaluate for the given variate
      Specified by:
      evaluate in class R1ToR1
      Parameters:
      dblNormalizedX - Variate
      Returns:
      Returns the calculated value
      Throws:
      java.lang.Exception - Thrown if evaluation cannot be done
    • derivative

      public double derivative​(double dblNormalizedX, int iOrder) throws java.lang.Exception
      Description copied from class: R1ToR1
      Calculate the derivative as a double
      Overrides:
      derivative in class R1ToR1
      Parameters:
      dblNormalizedX - Variate at which the derivative is to be calculated
      iOrder - Order of the derivative to be computed
      Returns:
      The Derivative
      Throws:
      java.lang.Exception - Thrown if Inputs are Invalid