Package org.drip.execution.impact
Class ParticipationRatePower
java.lang.Object
org.drip.function.definition.R1ToR1
org.drip.execution.impact.TransactionFunction
org.drip.execution.impact.TransactionFunctionPower
org.drip.execution.impact.ParticipationRatePower
public class ParticipationRatePower extends TransactionFunctionPower
ParticipationRatePower implements a Power-Law Based Temporary/Permanent Market Impact Function
where the Price Change scales as a Power of the Trade Rate. 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., and N. Chriss (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
- Bertsimas, D., and A. W. Lo (1998): Optimal Control of Execution Costs Journal of Financial Markets 1 1-50
- Author:
- Lakshmi Krishnamurthy
-
Constructor Summary
Constructors Constructor Description ParticipationRatePower(double dblConstant, double dblExponent)ParticipationRatePower Constructor -
Method Summary
Modifier and Type Method Description doubleconstant()Retrieve the Constant Market Impact Parameterdoublederivative(double dblTradeRate, int iOrder)Calculate the derivative as a doubledoubleevaluate(double dblTradeRate)Evaluate for the given variatedoubleexponent()Retrieve the Power Law Exponent Market Impact Parameterdoublemodulate(double dblTradeInterval)Modulate/Scale the Impact Outputdoubleregularize(double dblTradeInterval)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
-
ParticipationRatePower
public ParticipationRatePower(double dblConstant, double dblExponent) throws java.lang.ExceptionParticipationRatePower Constructor- Parameters:
dblConstant- The Market Impact Constant ParameterdblExponent- The Market Impact Power Law Exponent- Throws:
java.lang.Exception- Propagated up from R1ToR1
-
-
Method Details
-
constant
public double constant()Description copied from class:TransactionFunctionPowerRetrieve the Constant Market Impact Parameter- Specified by:
constantin classTransactionFunctionPower- Returns:
- The Constant Market Impact Parameter
-
exponent
public double exponent()Description copied from class:TransactionFunctionPowerRetrieve the Power Law Exponent Market Impact Parameter- Specified by:
exponentin classTransactionFunctionPower- Returns:
- The Power Law Exponent Market Impact Parameter
-
regularize
public double regularize(double dblTradeInterval) throws java.lang.ExceptionDescription copied from class:TransactionFunctionRegularize the Input Function using the specified Trade Inputs- Specified by:
regularizein classTransactionFunction- 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.ExceptionDescription copied from class:TransactionFunctionModulate/Scale the Impact Output- Specified by:
modulatein classTransactionFunction- Parameters:
dblTradeInterval- The Trade Interval- Returns:
- The Modulated Output
- Throws:
java.lang.Exception- Thrown if the Inputs are Invalid
-
evaluate
public double evaluate(double dblTradeRate) throws java.lang.ExceptionDescription copied from class:R1ToR1Evaluate for the given variate -
derivative
public double derivative(double dblTradeRate, int iOrder) throws java.lang.ExceptionDescription copied from class:R1ToR1Calculate the derivative as a double- Overrides:
derivativein classR1ToR1- Parameters:
dblTradeRate- Variate at which the derivative is to be calculatediOrder- Order of the derivative to be computed- Returns:
- The Derivative
- Throws:
java.lang.Exception- Thrown if Inputs are Invalid
-