Welcome to NexusFi: the best trading community on the planet, with over 150,000 members Sign Up Now for Free
Genuine reviews from real traders, not fake reviews from stealth vendors
Quality education from leading professional traders
We are a friendly, helpful, and positive community
We do not tolerate rude behavior, trolling, or vendors advertising in posts
We are here to help, just let us know what you need
You'll need to register in order to view the content of the threads and start contributing to our community. It's free for basic access, or support us by becoming an Elite Member -- see if you qualify for a discount below.
-- Big Mike, Site Administrator
(If you already have an account, login at the top of the page)
I have a question from which I think it is quite basic, nevertheless I do not understand what I see, so maybe someone can explain shortly:
On the pic below you see the DOM from Ninja Trader, I am using NT/ V21 and this happened on a SIM account. I think on a SIM account the orders are placed on your local PC and not at your broker nor at NT.
I placed a stop limit order at 76.99 in CL, the price was above 77 at that time. As take profit I added an additional limit buy at 76.95.
The price came down very fast and my SLM order was not triggered. The price went down immediately to 76.93 and triggered my buy order. at .95. At .97 I closed the position, I wanted to be short instead of long.
I know that a stop limit order, once triggered, gets filled at the trigerring level or better. I suppose that "better" means in this case at a price level above 76.99. Is this correct?
If yes, that would mean that the order never gets filled as long as price moves down but I would be long then. Is that correct?
And finally, which order type would I have to enter to be sure to be filled if the price goes down? I would accept 76.98 as well etc, for me it would be better than to be long when I want to be short.
Many thanks !
as i remember a Stop Limit order gets triggert if the Stop-price gets traded - and only if this really was traded.
in CL i think it can happen that not all prices are really tradet - and so you dont get a trigger if it jumps.
thats only what i guess now, but i know that CL is thin + can be pretty fast - so this can happen.
to check / test this i would play with this scenarion in fesx or ES iE - to see how it behaves there.
My opinion:
If you want to be sure to get filled you have to use stop market orders.
If you use stop limit orders you have to choose the "stop limit offset". I guess you had chosen a offset of zero.
You can change these things under superdom properties.
In your case I would enter my target only if my sell limit order gets triggered, not before.
Play a little around with these settings in sim to understand the order types.
A stop limit is a stop order that immediately becomes a limit order when the stop is triggered. So you have to decide where to put your limit price.
On the screenshot of the DOM you have attached, CL trades at 76.97 . This means that your limit price is higher than 76.97 and your order has not been filled. Probably you did not enter any offset, so your limit price also was 76.99. As market depth was not sufficient when that price was hit, price traded through it and your position is still open.
Stop Market Order
If you want to be sure to get a fill, you need to use a stop market order. This order becomes a market order, once the stop is triggered. You will get your fill, but you are not protected against slippage.
Selecting the Correct Offset for the Stop Limit Order
Protecting your position via stop-loss: If you use a stop limit order, you want to protect yourself against unreasonable slippage. Let us say that you are not willing to accept more than 10 ticks slippage for CL, thinking that price will come back anyhow. So you put your stop at 76.99 and your limit price at 76.89. To achieve this you need to give NinjaTrader the information that you have chosen an offset of +10 ticks. There are two ways of doing this
- either preconfigure the DOM by entering a Stop Limit Offset of 10 under DOM properties
- or leave the Stop Limit Offset under DOM properties set to off, you now need to enter the offset each time, when entering a position
Negative Offsets for Entering a Trade
If you want to enter a trade on a breakout pullback, you can use a negative offset. Imagine resistance at 77.20 and that you require 15 ticks for the breakout to be effective. In this case you can set your stop price at 77.35 (breakout confirmed), then buy the expected pullback to prior resistance at 77.22 (stop limit offset = -13)
Stop Limit Orders Offer Limited Protection Only
Generally it is not recommended tp use stop limit orders as stop loss orders. They offer limited protection. So a stop market order is preferable.
Some futures exchanges - such as CME - do not offer stop market orders. All stop market orders are converted into stop market orders with protection, which means into limit orders with a large offset, which is determined by the no bust range -> see CME website. Other futures exchanges do not offer stop limit orders. In this case the stop limit order is simulated by NinjaTrader or on the server of your broker. The information that the stop level has been hit, needs to move from the exchange to the PC that triggers the limit order and then back to the exchange, so this might create some extra slippage.
The exchange automatically applies half of the no-bust range as an offset to all market orders and calls this market order with protection.
So your stop market order is a stop limit order with an offset of 50 ticks, which is half the no-bust range. So if somebody slurps away 50 levels of market depth in front of your order, you may not get filled.
I agree with Mike and Fat Tails, it's not a good idea to use stop-limit order.
This order is initiated because you were wrong, so if you (think) you are wrong, you have to close the position as ASAP, dot.