Server-side stops vs virtual stops in MT4 and MT5
When you set a stop loss in MT4 or MT5 through the normal order window, the stop is sent to the broker's server and sits there. If your platform crashes or your internet drops, the stop is still active. That's a server-side stop.
Some EAs and trading tools use what's called a virtual or hidden stop instead. The stop isn't sent to the server. The EA watches price itself and sends a close order when price reaches the stop level. The idea is to hide your stop from the broker or other participants.
There are real risks with virtual stops. If your platform, VPS, or internet goes down, the EA can't watch price, and your position has no stop at all. Execution may be slower, because the close order is sent only after the EA sees the price, adding a delay that can mean slippage in fast markets. Some EAs use a backup server-side stop placed further away for exactly this reason.
As for hiding your stop, for most retail size it doesn't make much difference. Your stop isn't large enough to be a target.
I'd use server-side stops by default and only consider virtual stops if there's a specific reason, with a backup stop in place.
Server-side stops vs virtual stops in MT4 and MT5
Server-side stops vs virtual stops in MT4 and MT5
It’s Fairman 
Re: Server-side stops vs virtual stops in MT4 and MT5
A detail people miss: if you use virtual stops, the broker's stop level and freeze level rules don't apply in the same way, because there's no pending order to modify. That can seem like an advantage, but it also means nothing prevents the EA from trying to close at a moment when the market is moving fast and the close gets filled at a much worse price. Server-side stops can also slip in fast markets, but at least they're in the queue from the start rather than waiting for a signal from your machine.
It’s Fairman 
Re: Server-side stops vs virtual stops in MT4 and MT5
I'd test what happens with a virtual stop EA if you restart the platform mid-trade. Some EAs store the stop level in memory, so after a restart they lose track of where the stop was and the position runs unprotected. Better written ones save state to a file or global variable and pick it back up. It's easy to check on a demo: open a trade, close the platform, reopen it, and see whether the EA still knows its stop. That five minute test can save you from an ugly surprise.
It’s Fairman 