Любые вопросы новичков по MQL4 и MQL5, помощь и обсуждение по алгоритмам и кодам - страница 1771

 
Mihail Matkovskij #:

У вас изначально неправильная логика работы с ордерами. Найдите простого эксперта на МА (например, в CodeBase) и пользуйтесь. Или можете переделать его под свою задумку. Относительно вашего кода в целом, там всё неправильно. Уделите больше внимания кодингу. Начните с простого. Или, как я уже сказал, найдите готовый пример.

Фрагменты кода добавляйте с помощью специальной кнопки сверху:


спасибо. а в чем именно неправильная логика?
 
Mihail Matkovskij #:

У вас изначально неправильная логика работы с ордерами. Найдите простого эксперта на МА (например, в CodeBase) и пользуйтесь. Или можете переделать его под свою задумку. Относительно вашего кода в целом, там всё неправильно. Уделите больше внимания кодингу. Начните с простого. Или, как я уже сказал, найдите готовый пример.

Фрагменты кода добавляйте с помощью специальной кнопки сверху:


Sanjakotik78 #:
 18

и что знаат эти ошибки. смотрел примеры с других советников там такого ничего не выбивало
 
Sanjakotik78 #:
спасибо. а в чем именно неправильная логика?

Вы вызываете:

if(OrderClose(OrderTicket(),OrderLots(),Ask,3,Black))
   if(OrderSend(Symbol(),OP_SELL,Lots,Bid,3,0,0,"",0,0,Red))
      return;
Но для того чтобы правильно вызвать  OrderTicket() и OrderLots(), нужно перед ними вызвать OrderSelect(). И это еще не всё...


Что по вашему делает функция OrderClose, перед тем, как ордер или позиция закроется?

 
Sanjakotik78 #:
спасибо. а в чем именно неправильная логика?

Изначально в том, что

нужно правильно вставлять код!
 
Сергей Таболин #:

Изначально в том, чтосп

Сергей Таболин #:

Изначально в том, что

спасибо всем. буду разбираться дальше

 
Sanjakotik78 #:
и что знаат эти ошибки. смотрел примеры с других советников там такого ничего не выбивало

Я уже выделил несколько ваших ошибок, в предыдущем сообщении. Посмотрите внимательно код и вы найдёте ещё не одну ошибку. Поэтому, как я уже сказал, начните с простого. Или сделайте своего робота на основе простого примера (об этом я тоже говорил вам), где все нужные функции и операторы прописаны правильно.

 
Sanjakotik78 #:

Mihail Matkovskij #:

Я уже выделил несколько ваших ошибок, в предыдущем сообщении. Посмотрите внимательно код и вы найдёте ещё не одну ошибку. Поэтому, как я уже сказал, начните с простого. Или сделайте своего робота на основе простого примера (об этом я тоже говорил вам), где все нужные функции и операторы прописаны правильно.

Хотя, в MQL4 скобки как раз и не нужны (). Bid и Ask там это переменные. А я вчера почему-то решил, что там, как в  MQL5, Bid() и Ask(), это функции. Уже давно пишу приложения на MQL5 и сто лет не писал ничего исключительно под 4-й МетаТрейдер.

Любые вопросы новичков по MQL4 и MQL5, помощь и обсуждение по алгоритмам и кодам
Любые вопросы новичков по MQL4 и MQL5, помощь и обсуждение по алгоритмам и кодам
  • 2021.11.28
  • www.mql5.com
В этой ветке я хочу начать свою помощь тем, кто действительно хочет разобраться и научиться программированию на новом MQL4 и желает легко перейти н...
 
Люди поможите. Есть индикатор и бот. Индикатор открывает ордера, а бот сопровождает. Для корректной работы боту нужен таймфрейм на котором был открыт ордер. Таймфрейм индикатором прописывается в комментарий ордера, но когда ботом закрывается часть объема, комментарий перезаписывается и вместо ТФ значится например "from #30029192". Есть другой простой способ считывать боту таймфрейм ордера?
 
Nerd Trader #:
Индикатор открывает ордера...

Индикатор не может открывать ордера и производить торговые операции. Смотрите документацию.

Nerd Trader #:
Для корректной работы боту нужен таймфрейм на котором был открыт ордер.

Ордер открывается по символу. Никакие таймфреймы для этого не нужны.

 
Mihail Matkovskij #:

Индикатор не может открывать ордера и производить торговые операции. Смотрите документацию.

Ордер открывается по символу. Никакие таймфреймы для этого не нужны.

значит это бот, не суть. Первый бот открывает, второй сопровождает. Я знаю как открываются ордера, но второму боту нужен таймфрейм, вы не внимательно прочитали.
Причина обращения: