Скачать MetaTrader 5
Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий
Знаете ли вы, что в MQL5 появились классы?
Vasily48
104
Vasily48 2016.11.15 17:49 

Добрый день подскажите пожалуйста где можно прописать код чтобы робот переводил стоп лост в без убыток 

Vladimir Karputov
Модератор
33578
Vladimir Karputov 2016.11.15 17:50  
Vasily48:

Добрый день подскажите пожалуйста где можно прописать код чтобы робот переводил стоп лост в без убыток 

В самой главной функции советника - в

//+------------------------------------------------------------------+
//| Expert tick function                                             |
//+------------------------------------------------------------------+
void OnTick()
  {

  }


 

Vladimir Karputov
Модератор
33578
Vladimir Karputov 2016.11.15 17:59  

Сначала нужно получить количество всех позиций и зайти в цикл, для перебора открытых позиций,

void OnTick()
  {
   for(int i=PositionsTotal()-1;i>=0;i--)
     {
      if(m_position.SelectByIndex(i))
        {
         if(m_position.Symbol()==Symbol() && Magic==m_position.Magic())
           {
            if(m_position.PositionType()==POSITION_TYPE_BUY)
              {

далее выбрать позицию (чтобы можно было с ней работать и получать её свойства), проверить символ и Magic позиции.

Потом уже, в зависимости от типа позиции (BUY or SELL) получать два параметра:

  • цену открытия позиции
  • текущую цену
Если позиция в прибыли и текущая цена отлежит от цены открытия позиции на определённое количество пунктов - модифицировать позицию.

 

Как то так. 

Alekseu Fedotov
731
Alekseu Fedotov 2016.11.15 18:04  
Vasily48:

Добрый день подскажите пожалуйста где можно прописать код чтобы робот переводил стоп лост в без убыток 

Где прописать я не знаю, не телепат. 

Вот, но это отдельный советник, вешается на любой график. 

Файлы:
Alekseu Fedotov
731
Alekseu Fedotov 2016.11.15 18:09  
А и звените, нужно на 5
Vasily48
104
Vasily48 2016.11.15 18:14  
Alekseu Fedotov:
А и звените, нужно на 5

А на мт5 есть такой 

Vasily48
104
Vasily48 2016.11.15 18:15  
Vladimir Karputov:

Сначала нужно получить количество всех позиций и зайти в цикл, для перебора открытых позиций,

void OnTick()
  {
   for(int i=PositionsTotal()-1;i>=0;i--)
     {
      if(m_position.SelectByIndex(i))
        {
         if(m_position.Symbol()==Symbol() && Magic==m_position.Magic())
           {
            if(m_position.PositionType()==POSITION_TYPE_BUY)
              {

далее выбрать позицию (чтобы можно было с ней работать и получать её свойства), проверить символ и Magic позиции.

Потом уже, в зависимости от типа позиции (BUY or SELL) получать два параметра:

  • цену открытия позиции
  • текущую цену
Если позиция в прибыли и текущая цена отлежит от цены открытия позиции на определённое количество пунктов - модифицировать позицию.

 

Как то так. 

А можно настроить робота чтобы он двигал стоп лост автоматически 
Vladimir Karputov
Модератор
33578
Vladimir Karputov 2016.11.15 18:39  
Vasily48:
А можно настроить робота чтобы он двигал стоп лост автоматически 
Да, конечно. Только есть тонкость: если Вы будете двигать стоп-лосс НА КАЖДОМ тике, торговый сервер очень обидится и отключит Вас от торговли :)
Vasily48
104
Vasily48 2016.11.15 19:28  

А почему. Есть правело в первый раз об этом слышу

Yuriy Asaulenko
2862
Yuriy Asaulenko 2016.11.15 20:25  
Vasily48:

Добрый день подскажите пожалуйста где можно прописать код чтобы робот переводил стоп лост в без убыток 

Это принципиально невозможно.)

Вы путаете "правильное" закрытие сделки и стоп. А это абсолютно разные вещи.

А стоп надо двигать время от времени потихоньку в сторону прибыли.

Vasily48
104
Vasily48 2016.11.15 20:36  

На мт4 был такой. он двигал стоп сам вот на мт5 ищу. Чтобы добавить его в робота

e-MovingInWL2.mq4  вот этот помощник на мт4 

/
Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий