Strategy
The methods and properties covered in this section are unique to custom strategy development.
In this section
| Strategy Account | Represents the real-world or simulation Account configured for the strategy. |
|---|---|
| AddChartIndicator() | Adds an indicator to the strategy only for the purpose of displaying it on a chart. |
| AddPerformanceMetric() | Adds an instance of custom Performance Metric to a strategy used in strategy calculations. |
| ATM Strategy Methods | Adds ATM strategies to manage your position |
| BarsRequiredToTrade | The number of historical bars required before the strategy starts processing order methods called in the OnBarUpdate() method. |
| BarsSinceEntryExecution() | Returns the number of bars that have elapsed since the last specified entry. |
| BarsSinceExitExecution() | Returns the number of bars that have elapsed since the last specified exit. |
| ChartIndicators | Contains a collection of Indicators which have been added to the strategy instance using AddChartIndicator(). |
| CloseStrategy() | Cancels all working orders, closes any existing positions, and finally disables the strategy. |
| ConnectionLossHandling | Sets the manner in which your strategy will behave when a connection loss is detected. |
| DaysToLoad | Determines the number of trading days which will be configured when loading the strategy from the Strategies Grid. |
| DefaultQuantity | An order size variable that can be set either programmatically or overridden via the Strategy that determines the quantity of an entry order. |
| DisconnectDelaySeconds | Determines the amount of time a disconnect would have to last before connection loss handling takes action. |
| EntriesPerDirection | Determines the maximum number of entries allowed per direction while a position is active based on the EntryHandling property. |
| EntryHandling | Sets the manner in how entry orders will handle. |
| Execution | Represents a read-only interface that exposes information regarding an execution (filled order) resulting from an order and is passed as a parameter in the OnExecutionUpdate() method. |
| ExitOnSessionCloseSeconds | The number of seconds before the actual session end time that the “IsExitOnSessionCloseStrategy” function will trigger. |
| IncludeCommission | Determines if the strategy performance results will include commission on a historical backtest. |
| IncludeTradeHistoryInBacktest | Determines if the strategy will save orders, trades, and execution history. |
| IsAdoptAccountPositionAware | Determines if the strategy is programmed in a manner capable of handling real-world account positions. |
| IsExitOnSessionCloseStrategy | Determines if the strategy will cancel all strategy-generated orders and close all open strategy positions at the close of the session. |
| IsFillLimitOnTouch | Determines if the strategy will use a more liberal fill algorithm for back-testing purposes only. |
| IsInstantiatedOnEachOptimizationIteration | Determines if the strategy should be re-instantiated (re-created) after each optimization run when using the Strategy Analyzer Optimizer. |
| IsInStrategyAnalyzer | Determines if the current NinjaScript Strategy is run from a Strategy Analyzer chart. |
| IsTradingHoursBreakLineVisible | Plots trading hours break lines on the indicator panel. |
| IsWaitUntilFlat | Indicates the strategy is currently waiting until a flat position is detected before submitting live orders. |
| NumberRestartAttempts | Determines the maximum number of restart attempts allowed within the last x minutes defined in RestartsWithinMinutes when the strategy experiences a connection loss. |
| OnAccountItemUpdate() | An event-driven method used for strategies which is called for each AccountItem update for the account on which the strategy is running. |
| OnExecutionUpdate() | An event-driven method which is called on an incoming execution of an order managed by a strategy. |
| OnOrderTrace() | An event-driven method used for strategies which will allow you to customize the output of TraceOrders. |
| OnOrderUpdate() | An event-driven method which is called each time an order managed by a strategy changes state. |
| OnPositionUpdate() | An event-driven method which is called each time the position of a strategy changes state. |
| OptimizationPeriod | Reserved for Walk-Forward Optimization, this property determines the number of days used for the “in sample” backtest period for a given strategy. See also TestPeriod. |
| Order | Represents a read-only interface that exposes information regarding an order. |
| Order Methods | NinjaScript provides several approaches you can use for order placement within your NinjaScript strategy. |
| OrderFillResolution | Determines how strategy orders are filled during historical states. |
| OrderFillResolutionType | Determines the bars type which will be used for historical fill processing. |
| OrderFillResolutionValue | Determines the bars period interval value which will be used for historical fill processing. |
| PerformanceMetrics | Holds an array of PerformanceMetrics objects that represent custom metrics that can be used for strategy calculations. |
| Plots | A collection holding all of the Plot objects that define their visualization characteristics. |
| Position | Represents position-related information that pertains to an instance of a strategy. |
| PositionAccount | Represents position-related information that pertains to real-world account (live or simulation). |
| Positions | Holds an array of Position objects that represent positions managed by the strategy. |
| PositionsAccount | Holds an array of PositionAccount objects that represent positions managed by the strategy’s account. |
| RealtimeErrorHandling | Defines the behavior of a strategy when a strategy-generated order is returned from the broker’s server in a “Rejected” state. |
| RestartsWithinMinutes | Determines within how many minutes the strategy will attempt to restart. |
| SetOrderQuantity | Determines how order sizes are calculated for a given strategy. |
| Slippage | Sets the amount of slippage in ticks per execution used in performance calculations during backtests. |
| StartBehavior | Sets the start behavior of the strategy. See Syncing Account Positions for more information. |
| StopTargetHandling | Determines how stop and target orders are submitted during an entry order execution. |
| StrategyBaseConverter | A custom TypeConverter class handling the designed behavior of a strategy’s property descriptor collection. |
| SystemPerformance | The SystemPerformance object holds all trades and trade performance data generated by a strategy. |
| TestPeriod | Reserved for Walk-Forward Optimization, this property determines the number of days used for the “out of sample” backtest period for a given strategy. |
| TimeInForce | Sets the time in force property for all orders generated by a strategy. |
| TraceOrders | Determines if OnOrderTrace() would be called for a given strategy. |
| Trade | A Trade is a completed buy/sell or sell/buy transaction. It consists of an entry and exit execution. |
| TradeCollection | A collection of Trade objects. |
| TradesPerformanceValues | Performance values of a collection of Trade objects. |
| WaitForOcoClosingBracket | Determines if the strategy will submit both legs of an OCO bracket before submitting the pair to the broker. |

