Package org.drip.execution.strategy
Class DiscreteTradingTrajectory
java.lang.Object
org.drip.execution.strategy.DiscreteTradingTrajectory
- All Implemented Interfaces:
TradingTrajectory
- Direct Known Subclasses:
EfficientTradingTrajectoryDiscrete,MinimumImpactTradingTrajectory
public class DiscreteTradingTrajectory extends java.lang.Object implements TradingTrajectory
DiscreteTradingTrajectory holds the Trajectory of a Trading Block that is to be executed over a
Discrete Time Set. 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
- Bertsimas, D., and A. W. Lo (1998): Optimal Control of Execution Costs Journal of Financial Markets 1 1-50
- Chan, L. K. C., and J. Lakonishak (1995): The Behavior of Stock Prices around Institutional Trades Journal of Finance 50 1147-1174
- Keim, D. B., and A. Madhavan (1997): Transaction Costs and Investment Style: An Inter-exchange Analysis of Institutional Equity Trades Journal of Financial Economics 46 265-292
- Author:
- Lakshmi Krishnamurthy
-
Constructor Summary
Constructors Constructor Description DiscreteTradingTrajectory(double[] adblExecutionTimeNode, double[] adblHoldings, double[] adblTradeList)DiscreteTradingTrajectory Constructor -
Method Summary
Modifier and Type Method Description doubleexecutedBlockSize()Retrieve the Executed Block SizedoubleexecutionTime()Retrieve the Execution Timedouble[]executionTimeNode()Retrieve the Array containing the Execution Time Nodes Sequencedouble[]holdings()Retrieve the Array of the Number of Units Outstandingdouble[]innerHoldings()Retrieve the Array of the Inner HoldingsdoubleinstantTradeRate()Retrieve the Instant Trade Ratestatic DiscreteTradingTrajectoryLinear(double[] adblExecutionTimeNode, double dblStartHoldings, double dblFinishHoldings)Construct a Linear DiscreteTradingTrajectory InstanceintnumberOfTrades()Retrieve the Number of Tradesstatic DiscreteTradingTrajectoryStandard(double[] adblExecutionTimeNode, double[] adblHoldings)Construct a Standard DiscreteTradingTrajectory Instancedouble[]tradeList()Retrieve the Trade List, i.e., the Array of the Number of Units executeddoubletradeSize()Retrieve the Trade SizeMethods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Constructor Details
-
DiscreteTradingTrajectory
public DiscreteTradingTrajectory(double[] adblExecutionTimeNode, double[] adblHoldings, double[] adblTradeList) throws java.lang.ExceptionDiscreteTradingTrajectory Constructor- Parameters:
adblExecutionTimeNode- Array containing the Trajectory Time NodesadblHoldings- Array containing the HoldingsadblTradeList- Array containing the Trade List- Throws:
java.lang.Exception- Thrown if the Inputs are Invalid
-
-
Method Details
-
Standard
public static DiscreteTradingTrajectory Standard(double[] adblExecutionTimeNode, double[] adblHoldings)Construct a Standard DiscreteTradingTrajectory Instance- Parameters:
adblExecutionTimeNode- Array containing the Trajectory Time NodesadblHoldings- Array containing the Holdings- Returns:
- The DiscreteTradingTrajectory Instance
-
Linear
public static final DiscreteTradingTrajectory Linear(double[] adblExecutionTimeNode, double dblStartHoldings, double dblFinishHoldings)Construct a Linear DiscreteTradingTrajectory Instance- Parameters:
adblExecutionTimeNode- Array of the Execution Time NodesdblStartHoldings- Trajectory Start HoldingsdblFinishHoldings- Trajectory Finish Holdings- Returns:
- The Linear TradingTrajectory Instance
-
tradeSize
public double tradeSize()Description copied from interface:TradingTrajectoryRetrieve the Trade Size- Specified by:
tradeSizein interfaceTradingTrajectory- Returns:
- The Trade Size
-
executedBlockSize
public double executedBlockSize()Description copied from interface:TradingTrajectoryRetrieve the Executed Block Size- Specified by:
executedBlockSizein interfaceTradingTrajectory- Returns:
- The Executed Block Size
-
executionTime
public double executionTime()Description copied from interface:TradingTrajectoryRetrieve the Execution Time- Specified by:
executionTimein interfaceTradingTrajectory- Returns:
- The Execution Time
-
instantTradeRate
public double instantTradeRate()Description copied from interface:TradingTrajectoryRetrieve the Instant Trade Rate- Specified by:
instantTradeRatein interfaceTradingTrajectory- Returns:
- The Instant Trade Rate
-
executionTimeNode
public double[] executionTimeNode()Retrieve the Array containing the Execution Time Nodes Sequence- Returns:
- The Array containing the Execution Time Nodes Sequence
-
holdings
public double[] holdings()Retrieve the Array of the Number of Units Outstanding- Returns:
- The Array of the Number of Units Outstanding
-
tradeList
public double[] tradeList()Retrieve the Trade List, i.e., the Array of the Number of Units executed- Returns:
- The Trade List, i.e., the Array of the Number of Units executed
-
numberOfTrades
public int numberOfTrades()Retrieve the Number of Trades- Returns:
- The Number of Trades
-
innerHoldings
public double[] innerHoldings()Retrieve the Array of the Inner Holdings- Returns:
- The Array of the Inner Holdings
-