Вопросы от начинающих MQL5 MT5 MetaTrader 5 - страница 1299

 
Alexey Viktorov:

Надо проверять в отладчике. Я уверенностью сказать не могу.

Понял спасибо

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

F7 - общие - только покупки

 
Iurii Tokman:

F7 - общие - только покупки

в мт5 такого нет

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

Как то так;

enum typ
  {
                        ty1=0,                  //Buy and Sell
                        ty2=1,                  //Only Buy
                        ty3=2                   //Only Sell
  };

input typ               TradesType=ty1;         //Type of trading operations
.
.
.
if(TradesType!=2 && ...
if(TradesType!=1 && ...
 
VVT:

Как то так;

Cпасибо

 

Добрый день, коллеги. Не могу найти ошибку в коде. Метод .Magic() класса CPositionInfo выдаёт правильное значение, если сделку открывать напрямую в коде советника через класс Trade.mqh.

Если же открывать сделку через тот же Trade.mqh, но вызванный в другом классе, то в коде советника метод  .Magic() выдаёт 0. Почему так?

Код прилагаю.

Файлы:
MQL5.zip  5 kb
 
Ildar Yusupov:

Добрый день, коллеги. Не могу найти ошибку в коде. Метод .Magic() класса CPositionInfo выдаёт правильное значение, если сделку открывать напрямую в коде советника через класс Trade.mqh.

Если же открывать сделку через тот же Trade.mqh, но вызванный в другом классе, то в коде советника метод  .Magic() выдаёт 0. Почему так?

Код прилагаю.

Код не открываю)

Значит во втором варианте Magic не используется, внимательно посмотрите код

 
Ildar Yusupov:

Добрый день, коллеги. Не могу найти ошибку в коде. Метод .Magic() класса CPositionInfo выдаёт правильное значение, если сделку открывать напрямую в коде советника через класс Trade.mqh.

Если же открывать сделку через тот же Trade.mqh, но вызванный в другом классе, то в коде советника метод  .Magic() выдаёт 0. Почему так?

Код прилагаю.

Архив даже не смотрел.

Алгоритм всегда такой: создаёте 'm_trade' - object of CTrade class. Если хотите чтобы он торговал по своему Magic - обязательно делаете

   m_trade.SetExpertMagicNumber(InpMagic);

- то есть нужно для объекта торгового класса установить этот самый Magic.

 
Vitaly Muzichenko:

в мт5 такого нет

я все по старинке, ни как не отвыкну...

Причина обращения: