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 am building a automated trading system for trading ES and other futures. I am confused whether to use STOP ORDERS for stop loss or just fire a market order as and when the closing price hits my stop price. The confusion mainly stems from the use of BID/ASK price as the trigger price by the broker for stop orders. My model is built on close price (trade price) only and does not take into account the BID/ASK price at all. Also in simulation (rithmic) I noticed that due to the spread my stops were executed, prematurely, well before the stop price was actually hit. That means, in cases, I got stopped-out for a loss whereas had the broker waited for the closing price (instead of the bid/ask price) to reach the stop price the trade would have actually been a highly profitable one.
This is what I think I could do:
1. Don't use STOP orders. instead just fire a market order when price hits stop price. Do you think doing away with STOP orders make sense? Is the downside too disastrous?
2. Set my stop loss using BID/ASK price instead of close price.
3. Is it possible to create custom STOP orders that triggered at close price instead of BID/ASK? ha ha do you know any brokers who provide that?
A stop order is an order that becomes a market order if any trades have executed at your specified price. Your stops are executing because the price did touch your stop, even though it may have only been one lot that executed. In this case you'll probably just want to give yourself a wider stop and see how it affects your strategy.
Now it is possible to create your own virtual stop strategies by sending a market order when certain conditions are met. For instance, only execute if the level 2 info shows price is about to leave your stop price. However, I wouldn't write one based on the close of a bar. A security could move well past your stop before the close.
There are many ways to go about using stops and technically, when a stop fires @CMEgroup what's really entering the market is a limit order, not a market order. CME doesn't really have market orders at all. They submit limit orders "x" number of ticks into the market. They refer to this as market with protection. You can take this a step further and submit other order types like iceberg orders based on a stop threshold. CME doesn't support that combo but some ISVs do with their co-located synthetic servers.
Yes, you can set your trigger off of anything you like. Bid/ask, LTP, volume thresholds, even specific times.
If you have any questions about the products or services provided, please send me a Private Message or use the futures.io " Ask Me Anything" thread
Well, that is exactly the problem. No trades were executed at my stop price. Only the best bid/ask reached my stop price and that triggered my stop order. If i look at the chart the bar where my order executed is just above/below my stop price. This is the very reason for the confusion.
No I meant trade price. It could be high, low, open or whatever. In automation we call it close price. because a bar has only one open price but several high, low and close prices. when a bar progresses every tick is a close price and when that bar is complete and the next bar begins the price at which the last bar completed becomes the final close price for that bar.
Well this is what i use for creating a stop order. as you can see there is no way to define the trigger type (ltp, bid/ask, volume etc). I think it is left up to the broker to chose. This is from motivewave strategy.
However, my advice remains the same. Try giving yourself a bigger stop, and seeing how that affects the strategy's profitability. You can also write your own stop that basically sends a market order when the specified conditions are met.
I'll add that if your strategy is getting stopped out of winning trades that you might want to look at ways to refine your entries instead.