Package org.drip.execution.athl
Class TemporaryImpact
java.lang.Object
org.drip.function.definition.R1ToR1
org.drip.execution.impact.TransactionFunction
org.drip.execution.impact.TransactionFunctionPower
org.drip.execution.athl.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). It provides the following Functions:
- TemporaryImpact Constructor
- Retrieve the Asset Flow Settings
- Regularize the Input Function using the specified Trade Inputs
- Modulate/Scale the Impact Output
- Retrieve the Constant Market Impact Parameter
- Retrieve the Power Law Exponent Market Impact Parameter
- Evaluate the Impact for the given Normalized Holdings
- Calculate the Ordered Derivative
- 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 Summary
Constructors Constructor Description TemporaryImpact(AssetFlowSettings assetFlowSettings)TemporaryImpact Constructor -
Method Summary
Modifier and Type Method Description AssetFlowSettingsassetFlowSettings()Retrieve the Asset Flow Settingsdoubleconstant()Retrieve the Constant Market Impact Parameterdoublederivative(double normalizedX, int order)Calculate the Ordered Derivativedoubleevaluate(double normalizedX)Evaluate the Impact for the given Normalized Holdingsdoubleexponent()Retrieve the Power Law Exponent Market Impact Parameterdoublemodulate(double tradeInterval)Modulate/Scale the Impact Outputdoubleregularize(double tradeInterval)Regularize the Input Function using the specified Trade InputsMethods inherited from class org.drip.execution.impact.TransactionFunction
crossHoldingsDerivative, evaluate, leftHoldingsDerivative, rightHoldingsDerivativeMethods inherited from class org.drip.function.definition.R1ToR1
antiDerivative, conditionNumber, differential, differential, integrate, maxima, maxima, minima, minima, poleResidueMethods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Constructor Details
-
TemporaryImpact
TemporaryImpact Constructor- Parameters:
assetFlowSettings- Asset Flow Settings- Throws:
java.lang.Exception- Thrown if the Inputs are Invalid
-
-
Method Details
-
assetFlowSettings
Retrieve the Asset Flow Settings- Returns:
- The Asset Flow Settings
-
regularize
public double regularize(double tradeInterval) throws java.lang.ExceptionRegularize the Input Function using the specified Trade Inputs- Specified by:
regularizein classTransactionFunction- Parameters:
tradeInterval- The Trade Interval- Returns:
- The Regularize Input
- Throws:
java.lang.Exception- Thrown if the Inputs are Invalid
-
modulate
public double modulate(double tradeInterval) throws java.lang.ExceptionModulate/Scale the Impact Output- Specified by:
modulatein classTransactionFunction- Parameters:
tradeInterval- The Trade Interval- Returns:
- The Modulated Output
- Throws:
java.lang.Exception- Thrown if the Inputs are Invalid
-
constant
public double constant()Retrieve the Constant Market Impact Parameter- Specified by:
constantin classTransactionFunctionPower- Returns:
- The Constant Market Impact Parameter
-
exponent
public double exponent()Retrieve the Power Law Exponent Market Impact Parameter- Specified by:
exponentin classTransactionFunctionPower- Returns:
- The Power Law Exponent Market Impact Parameter
-
evaluate
public double evaluate(double normalizedX) throws java.lang.ExceptionEvaluate the Impact for the given Normalized Holdings -
derivative
public double derivative(double normalizedX, int order) throws java.lang.ExceptionCalculate the Ordered Derivative- Overrides:
derivativein classR1ToR1- Parameters:
normalizedX- Normalized Holdingsorder- Order of the derivative to be computed- Returns:
- The Ordered Derivative
- Throws:
java.lang.Exception- Thrown if Inputs are Invalid
-