Download MetaTrader 5

Stop loss and trailing stop calculation~confused

To add comments, please log in or register
Roler100
502
Roler100  

Can anyone explain why with a Buy order the stop loss is calculated by subtracting the Stop loss amount from the Ask price.

But when the trailing stop is calculated this is calculated by deducting the trail amount  from the Bid price.  Why aren't they both taken from the Bid price

Umar Ismail
10998
Umar Ismail  
like you have 1000 dollars and you buy the euro
then after you get the euro and you buy dollars
Your money will not be back in 1000 dollars
that trade
Roler100:

Can anyone explain why with a Buy order the stop loss is calculated by subtracting the Stop loss amount from the Ask price.

But when the trailing stop is calculated this is calculated by deducting the trail amount  from the Bid price.  Why aren't they both taken from the Bid price

John Townsend
83
John Townsend  
Roler100:

Can anyone explain why with a Buy order the stop loss is calculated by subtracting the Stop loss amount from the Ask price.

But when the trailing stop is calculated this is calculated by deducting the trail amount  from the Bid price.  Why aren't they both taken from the Bid price

There are two prices quoted - the MarketMaker/Broker's selling price (the ASK) and the MarketMaker/Broker's buying price (the BID) - the ASK will always be greater than the BID - you are always buying at the higher of the two prices and selling at the lower.

When you put on a BUY order you are buying at the MarketMaker/Broker's selling price (the ASK) and when you close that trade you will be selling at the MarketMaker/Broker's buying price (the BID) and so you would calculate your stop loss or trailing stop in relation to the MarketMaker/Broker's BID price.

Similarly, when you put on a SELL order you are selling at the MarketMaker/Broker's buying price (the BID) and when you close that trade you will be buying at the MarketMaker/Broker's selling price (the ASK) and so you would calculate your stop loss or trailing stop in relation to the MarketMaker/Broker's ASK price.

HTH,
John

Stuart Browne
5898
Stuart Browne  

As has been said above, you always BUY at the ASK and SELL at the BID. To close a long (BUY) position, you have to SELL so you will be SELLING at the BID.

So to answer your question simply: If you have an open long (BUY) position then ANY stop loss, be it a fixed stop or a trailing stop, should be measured in relation to the BID as that will be the actual closing price you get. If you measure it against the ASK then you will be closing out your order late as the BID price, the price you will actually get, is now below your STOP.

The opposite is true for an open short (SELL) position - all stops should be measured against the ASK.

Alain Verleyen
Moderator
31184
Alain Verleyen  
jftjft:

There are two prices quoted - the MarketMaker/Broker's selling price (the ASK) and the MarketMaker/Broker's buying price (the BID) - the ASK will always be greater than the BID - you are always buying at the higher of the two prices and selling at the lower.

When you put on a BUY order you are buying at the MarketMaker/Broker's selling price (the ASK) and when you close that trade you will be selling at the MarketMaker/Broker's buying price (the BID) and so you would calculate your stop loss or trailing stop in relation to the MarketMaker/Broker's BID price.

Similarly, when you put on a SELL order you are selling at the MarketMaker/Broker's buying price (the BID) and when you close that trade you will be buying at the MarketMaker/Broker's selling price (the ASK) and so you would calculate your stop loss or trailing stop in relation to the MarketMaker/Broker's ASK price.

HTH,
John

Filter:

As has been said above, you always BUY at the ASK and SELL at the BID. To close a long (BUY) position, you have to SELL so you will be SELLING at the BID.

So to answer your question simply: If you have an open long (BUY) position then ANY stop loss, be it a fixed stop or a trailing stop, should be measured in relation to the BID as that will be the actual closing price you get. If you measure it against the ASK then you will be closing out your order late as the BID price, the price you will actually get, is now below your STOP.

The opposite is true for an open short (SELL) position - all stops should be measured against the ASK.

  • You are mixing the value of a stoploss and the trigger of a stoploss. You are both right, of course, that a BUY position will be closed at BID price, and a SELL position at ASK PRICE, this is the "trigger" price to close a position. However the stoploss is calculated in regards of the openprice, so to ASK price for a BUY and to BID price for a SELL. If you want to loss no more than 15 pips for example :

The loss of a BUY will be OpenPrice-ClosePrice = ASKopen - BIDclose = 15 pips loss max. So your stoploss should be ASKopen-15pips. The stoploss is calculated in relation to open price (ASK) and will be triggered at close price (BID). Vice versa for a SELL. (Of course everyone is free to calculate it in any other way, related to Bid at open for example).

  • For a trailing stop, it's not "I don't want to loss more than 15 pips", but "Once in profit I don't want to loss more than 15 pips of my profit" (I know there can be other kind of traling stop, but I take here a "standard" trailing stop). So this time, you are not comparing the close price with the open price, but the close price at one moment with the close price at a later moment, so still with the example of a BUY:

Current price if closed - Real close price = Current BID - BIDclose = 15 pips, so your trailing stop will be Current BID-15 pips. Vice versa for a SELL.

Roler100:

Can anyone explain why with a Buy order the stop loss is calculated by subtracting the Stop loss amount from the Ask price.

But when the trailing stop is calculated this is calculated by deducting the trail amount  from the Bid price.  Why aren't they both taken from the Bid price

So for a BUY, stoploss is calculated from the opening ASK price. And a trailing stop is calculated from the current BID price.

Roler100
502
Roler100  

Great explanation thanks.

My problem with setting the initial stop loss when opening a trade as you describe is that effectively the Spread is being deducted out from the stop loss amount in Pips. So the amount of stop loss pips left can be a lot smaller than expected and the chance of being stopped out soon after opening the order can be high if the spread is high. If the volatility increases the spread can increase at the same time and you get a double whammy to stop out the trade prematurely. The only way out of this is to add a spread amount of pips to the stop loss amount which is effectively taking the stop loss amount from the Bid price in a Buy trade and from the Ask price in a sell trade. Perhaps there is a trade off between knowing the total number of pips that can be lost and not being stopped out prematurely.

Alain Verleyen
Moderator
31184
Alain Verleyen  
Roler100:

Great explanation thanks.

My problem with setting the initial stop loss when opening a trade as you describe is that effectively the Spread is being deducted out from the stop loss amount in Pips. So the amount of stop loss pips left can be a lot smaller than expected and the chance of being stopped out soon after opening the order can be high if the spread is high. If the volatility increases the spread can increase at the same time and you get a double whammy to stop out the trade prematurely. The only way out of this is to add a spread amount of pips to the stop loss amount which is effectively taking the stop loss amount from the Bid price in a Buy trade and from the Ask price in a sell trade. Perhaps there is a trade off between knowing the total number of pips that can be lost and not being stopped out prematurely.

You can manage your stoploss internally in your EA, and only trigger it if the spread is an acceptable range. Of course this can leads to bigger drawdown, and you probably have to set an emergency stoploss to secure your trades in case of lost connexion with the server.
To add comments, please log in or register