Discussing the article: "Trader-friendly stop loss and take profit"

 

Check out the new article: Trader-friendly stop loss and take profit.

Stop loss and take profit can have a significant impact on trading results. In this article, we will look at several ways to find optimal stop order values.

Stop loss and take profit are stop orders that close a position when the price reaches their value. Stop loss allows traders to limit losses, while take profit enables thjem to save their gains. The main advantage of using stop loss and take profit is the ability to control financial risks and use money management.

But some traders prefer to do without stop orders. Their reasoning is quite simple. There are situations when the price reaches the stop loss and then reverses. If there were no stop loss, the position could have closed in positive territory. The same argument applies to take profit. After reaching its level, the position is closed. But the price continues to move in the same direction, and if the take profit had not been set, additional profit could have been made.

This approach is more likely related to the trader’s subjective assessments. This subjectivity can lead to big problems. For example, if a trader does not set a stop loss, then the broker will do it for him. To avoid confusion in terms, the broker will call its level a "stop out". You can always find out the broker's stop loss level by using the AccountInfoDouble function with the ACCOUNT_MARGIN_SO_SO identifier. Same goes to take profit. Is it possible that the trader himself chose the wrong level and therefore was unable to get all the possible profit?

Let's try to approach the choice of stop loss and take profit levels rationally.

Author: Aleksej Poljakov

 
Are the test pictures the forwards or are they from the same periods where the stats were collected?
 
Stanislav Korotky #:
Are the test pictures the forwards or are they from the same periods where the stats were collected?

The pictures are from the same periods. If you have a strategy with open/close signals, you should use them as a basis.

 

  Второй важный результат – это отличие между движениями цены вверх и вниз.


What if you prologue the prices beforehand? Then there should be no difference.

 
fxsaber #:

What if we prologue the prices beforehand? Then there should be no difference.

You could take the logarithm... There shouldn't be a difference, but there will be. All log distributions indicate that downward price movements should be smaller and less frequent compared to upward price movements. In reality, it's the opposite.

 

Great article and reveals what some developers are hiding as this knowledge can be monetised.

However, there is a spoonful of tar: spread is not taken into account.

 
Aleksej Poljakov #:

In reality, it's the other way round.

In reality, EURUSD and USDEUR are one and the same.

"Правильные" и "обобщённо правильные" по fxsaber`у ТС
"Правильные" и "обобщённо правильные" по fxsaber`у ТС
  • 2020.03.08
  • www.mql5.com
Здесь приведены некоторые соображения по поводу этой ветки. Формальное определение. Введём обозначения: r - ряд цен, s - система, e - эквити Подаём цены на вход системы и получаем на выходе эквити: r
 
fxsaber #:

In reality, EURUSD and USDEUR are one and the same.

I created EURUSD symbol by Avg-ticks and the same USDEUR. I ran the author's script with these changes.

//собираем статистику
   for(int i=bars-1; i>=duration; i--)
     {
      double open=MathLog(iOpen(_Symbol,PERIOD_CURRENT,i)),max=open,min=open;

      for(int j=0; j<duration; j++)
        {
         int p=i-j;
         max=MathMax(max,MathLog(iHigh(_Symbol,PERIOD_CURRENT,p)));
         min=MathMin(min,MathLog(iLow(_Symbol,PERIOD_CURRENT,p)));
        }

      CalcArray(lvl_up,(int)MathRound((max-open)/_Point));
      CalcArray(lvl_dn,(int)MathRound((open-min)/_Point));
     }


EURUSD.

EURUSD


USDEUR.

USDEUR

The author seems to have made a mistake somewhere.

 
fxsaber #:

I created EURUSD-symbol by Avg-ticks and the same USDEUR. I ran the author's script with these changes.


EURUSD.


USDEUR.

Author, there seems to be a mistake somewhere.

It is possible the spread influence.

Bid, Ask do not change at the same time, which can lead to such collisions - when the price is calculated by Bid, small longs are slightly larger than shorts. On Ask it is vice versa

Especially on High/Low - there is a big spread on the highs

 
Maxim Kuznetsov #:

it's probably the spread.

Avg-tiki used.

 
fxsaber #:

Avg-tiki used.

First of all, it doesn't matter. The spread is already accounted for in the source.

Secondly, and most importantly, you've gone into logarithms. That's the way it should be :-)

compare (a+1)/a and a/(a-1), that's exactly why.

Reason: