Announcement
Collapse
No announcement yet.
Partner 728x90
Collapse
NinjaTrader
Strategy Analyzer: Slippage ?
Collapse
X
-
-
Hello spottysallrite,
The slippage in a backtest is only applied to market orders and does not work with 1-tick intra-bar granularity or Order Fill Resolution High.
Is the script placing market orders?
Do you have the order fill resolution on high or 1-tick intra-bar granularity implemented?Chelsea B.NinjaTrader Customer Service
-
Yes, these are market orders, And, yes, this is trading on the 1 tick ES.
When trading live on a sim account there is ALWAYS 1 tick of slip. So, is there any way to fix this conflict (ie, backtesting trading different from live sim) ?
Comment
-
-
Hello spottysallrite,
Not when implementing 1-tick intra-bar granularity for accuracy. You could chose to delay your order 1 tick. When the conditions is true set a bool for the next BIP 1 update, then the bool is true in BIP submit the order and set the bool back to false.Chelsea B.NinjaTrader Customer Service
Comment
-
Really? Why not just fix the sim so that it doesn't always take out a 1 tick slip? (Or, allow the user to select in sim how much slip to apply.)
Comment
-
No, the primary series (ES 1 minute) is too slow for this. This really needs to be implemented on the 1 tick, and the user should be allowed to select what slippage (either in backtesting or sim) he wants, if any. Why can't this be done?
Comment
-
Well, I'm currently getting invalid fills in sim (ie, the fill price is always 1 tick less than the MIT price, or is that just what happens in live trading?)
Yes, please submit a request for this. (sim and backtesting should produce at least similar results, eg produce similar / same fill prices.)
At minimum, the automatic 1 tick slip should be taken out of the sim. Better, both the sim and backtest should allow the user to select the amount of slip, if any. And, this should be possible regardless of the series used. ie, it should be possible when using a 1 tick series for trades. (Ok, an explanation might be provided in the Help Guide to the effect of a warning that trades might be placed with prices that didn't exist at the time of the trade. Then again, for the ES during RTH there should be enough volume that this shouldn't be a problem.)
Now, what do I do about optimizing my strategies until this gets fixed? Delaying the execution by one tick doesn't solve this problem (as above).Last edited by spottysallrite; 04-13-2023, 09:24 AM.
Comment
-
Hello spottysallrite,
This request is being tracked with ID # SFT-5854.
Please note, we receive many requests and cannot reasonably implement all requested features or changes. Interest is tracked internally and if enough interest is tracked, it would be weighed against how feasible it would be to make those changes to consider implementing, so we cannot offer an ETA or promise of fulfillment.
When new features are implemented, they will be listed in the Release Notes page of the Help Guide. The ID number may be different than the internal feature request tracking ID, but the description of the feature will let you know if that feature has been implemented.
Release Notes - https://ninjatrader.com/support/help...ease_notes.htm
I would not have a workaround for forcing slippage when orders are placed to a 1 tick series.
To confirm, the MIT order is being submitted to the 1 tick series but is not filling at the stop price?
Chelsea B.NinjaTrader Customer Service
Comment
-
The MIT orders are being triggered by the MIT price. (Trading on the ES 1 tick works fine, both in backtests and sim.) However, when trading sim, the fill price is always one tick less than the MIT price.
Perhaps the coders for the sim module were thinking that the MIT price is the ask price, so the fill price would be the bid price, which is (nearly always during RTH) one tick less than the ask price. (In that context, the term "slippage" doesn't strictly apply, but conceptually, it does.) If that was the thinking, then that same logic should be applied to the backtest module. ie, the fill price in backstesting should be one tick less than the MIT price.
In short, I just want the sim to produce the same (or at least similar) results as when backtesting. Very different results can be obtained even if the fill prices are just one tick off.
Comment
-
Hello spottysallrite,
The MIT would become a market order and would fill at whatever the market price is.
A buy market order would fill at the ask, which is typically 1 tick above the last price. A sell market order would fill at the bid which is typically 1 tick below the last price.
A 1 tick ask series or 1 tick bid series to the chart and this will show this.
In backtest, only last data is used, so there may be a difference there.
Using the unmanaged approach, you could add a 1 tick ask series / 1 tick bid series with AddDataSeries() and submit buy orders to BIP 1 and submit sell orders to BIP 2)Chelsea B.NinjaTrader Customer Service
Comment
-
I appreciate your suggestion, but why would I want to triple my data load just to get the same result as simply subtracting one tick from the sell MIT price? (Remember, I'm using the ES during RTH, so there is rarely, if ever, more than a 1 tick difference between the bid and ask.)
Comment
Latest Posts
Collapse
| Topics | Statistics | Last Post | ||
|---|---|---|---|---|
|
Started by argusthome, 03-08-2026, 10:06 AM
|
0 responses
85 views
0 likes
|
Last Post
by argusthome
03-08-2026, 10:06 AM
|
||
|
Started by NabilKhattabi, 03-06-2026, 11:18 AM
|
0 responses
47 views
0 likes
|
Last Post
|
||
|
Started by Deep42, 03-06-2026, 12:28 AM
|
0 responses
29 views
0 likes
|
Last Post
by Deep42
03-06-2026, 12:28 AM
|
||
|
Started by TheRealMorford, 03-05-2026, 06:15 PM
|
0 responses
32 views
0 likes
|
Last Post
|
||
|
Started by Mindset, 02-28-2026, 06:16 AM
|
0 responses
67 views
0 likes
|
Last Post
by Mindset
02-28-2026, 06:16 AM
|

Comment