Let me clarify . . .
Let's say a person decide to place a buy stop USD/MXN pair at $18. The spread is 200 pips.
The problem is the buy stop order will be activated when the ASK price plus spread hit $18. But, the Bid price is only $17.50 (this is just an example, not exact calculation of price).
The question I'm asking is . . .
Do you think the buyer should have an option to choose to place the buy stop on the BID price or place the buy stop order on the ASK price? Of course, MT4 or MT5 must be modified to have that option in the software to let users choose that option.
You're right, it can be control using EA or if MT4, MT5 platform has the order box to allow that "Bid or Ask" control function.
Take a look at this sample image I created for MT4, MT5 platform with that checkbox feature.
The idea is that whatever price the customers want to buy, it is the exact price they will get. Not, the spread forcing them to buy at different price.
It will cause confusion when Bid and Ask are mixed.
If you want an exact price it's more like a limit or like an option.
I could see that as an advanced option that overrides the default . This way confusion would be avoided
You buy at the Ask and sell at the Bid.
If you want to buy when the market reaches a specific Bid price, add the average spread to the open price. If you want to close sell orders at a specific bid price, add the average spread to SL/TP.
No option is necessary.