Order Methods

<< Click to Display Table of Contents >>

Navigation:  NinjaScript > Language Reference > Strategy >

Order Methods

Previous page Return to chapter overview Next page

 

Note: You will not be able to mix and match the two approaches. If you decide to go with the Managed approach you will only be able to use the Managed order methods. If you decide to go with the Unmanaged approach you will only be able to use the Unmanaged order methods.

 

Order Methods Overview

NinjaScript provides several approaches you can use for order placement within your NinjaScript strategy. The main approaches can be categorized as a Managed approach and an Unmanaged approach.

Managed

The Managed approach offers you order methods that are wrapped with an invisible convenience layer that allows you to focus on your system's trading rules leaving the underlying mechanics of order management and the relationships between entry and exit orders and positions to NinjaTrader. The cost for having the convenience layer is that there are order handling rules that must be followed to prevent order errors.

 

Understanding the Managed approach

Advanced Order Handling

CancelOrder()

EnterLong()

EnterLongLimit()

EnterLongMIT()

EnterLongStopMarket()

EnterLongStopLimit()

EnterShort()

EnterShortLimit()

EnterShortMIT()

EnterShortStopMarket()

EnterShortStopLimit()

ExitLong()

ExitLongLimit()

ExitLongMIT()

ExitLongStopMarket()

ExitLongStopLimit()

ExitShort()

ExitShortLimit()

ExitShortMIT()

ExitShortStopMarket()

ExitShortStopLimit()

GetRealtimeOrder()

SetProfitTarget()

SetStopLoss()

SetTrailStop()

SetParabolicStop()

Unmanaged

The Unmanaged approach offers you more flexible order methods without the convenience layer. This means you are not restricted to any order handling rules besides those imposed by the brokerage/exchange. With such flexibility though, you will have to ensure to program your strategy to handle any and all issues that may arise with placing orders.

 

Understanding the Unmanaged approach

CancelOrder()

ChangeOrder()

GetRealtimeOrder()

IgnoreOverfill

IsUnmanaged

SubmitOrderUnmanaged()