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 double
constant()
Retrieve the Constant Market Impact Parameterdouble
derivative(double dblTradeRate, int iOrder)
Calculate the derivative as a doubledouble
evaluate(double dblTradeRate)
Evaluate for the given variatedouble
exponent()
Retrieve the Power Law Exponent Market Impact Parameterdouble
modulate(double dblTradeInterval)
Modulate/Scale the Impact Outputdouble
regularize(double dblTradeInterval)
Regularize the Input Function using the specified Trade InputsMethods inherited from class org.drip.execution.impact.TransactionFunction
crossHoldingsDerivative, evaluate, leftHoldingsDerivative, rightHoldingsDerivative
Methods inherited from class org.drip.function.definition.R1ToR1
antiDerivative, conditionNumber, differential, differential, integrate, maxima, maxima, minima, minima, poleResidue
Methods 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:TransactionFunctionPower
Retrieve the Constant Market Impact Parameter- Specified by:
constant
in classTransactionFunctionPower
- 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 classTransactionFunctionPower
- Returns:
- The Power Law Exponent Market Impact Parameter
-
regularize
public double regularize(double dblTradeInterval) throws java.lang.ExceptionDescription copied from class:TransactionFunction
Regularize the Input Function using the specified Trade Inputs- Specified by:
regularize
in 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:TransactionFunction
Modulate/Scale the Impact Output- Specified by:
modulate
in 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:R1ToR1
Evaluate for the given variate -
derivative
public double derivative(double dblTradeRate, int iOrder) throws java.lang.ExceptionDescription copied from class:R1ToR1
Calculate the derivative as a double- Overrides:
derivative
in 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
-