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

 
Вот, вообще удивительно 
void OnTick()
  {  for(int i=1,i=<60,i++){timeframe=i;
//---
   double J=iClose(   symbol_name,   timeframe,   start_pos);
   
   Print (J);}
  }
//+------------------------------------------------------------------+

'<' - unexpected token клосе.mq5 35 20

 'i' - variable already defined клосе.mq5 35 18

'++' - semicolon expected клосе.mq5 35 25

'J' - unexpected token клосе.mq5 37 11

'=' - unexpected token клосе.mq5 37 12

'=' - unexpected token клосе.mq5 37 12



 

 
for(int x=1;x<=7000; x++)
  {
   
  }

Вы хоть в документации,примерах,терминальных программах посмотрите как цикл пишется.

Как минимум через ;

https://www.mql5.com/ru/docs/basis/operators/for 

Документация по MQL5: Основы языка / Операторы / Оператор цикла for
Документация по MQL5: Основы языка / Операторы / Оператор цикла for
  • www.mql5.com
Основы языка / Операторы / Оператор цикла for - Документация по MQL5
 
Щас посмотрю.
 
Среди Кодов возврата торгового сервера обнаружил код 10026 "Автотрейдинг запрещен сервером". Стало интересно, как сервер определяет что торговля идёт руками или автоматом? Понятно что магик-номер или частые торговые операции и торговля ночью ещё могут предать, но если всё такое контролировать то сервер по каким другим параметрам разве может определить советник?
 
paladin800:

Среди Кодов возврата торгового сервера обнаружил код 10026 "Автотрейдинг запрещен сервером". Стало интересно, как сервер определяет что торговля идёт руками или автоматом? Понятно что магик-номер или частые торговые операции и торговля ночью ещё могут предать, но если всё такое контролировать то сервер по каким другим параметрам разве может определить советник?
См. идентификатор MQL5_PROGRAM_TYPE
 
Yedelkin:
См. идентификатор MQL5_PROGRAM_TYPE
Не, это свойство недоступно серверу. Сервер просто посылает команду терминалу 'Запретить автоторговлю', а терминал её выполняет, и выдаёт указанный код советнику или скрипту при попытке выполнить торговую операцию. Сервер не знает, что торгует советник, он просто запрещает авторговлю.
 
Valmars:
Не, это свойство недоступно серверу. Сервер просто посылает команду терминалу 'Запретить автоторговлю', а терминал её выполняет, и выдаёт указанный код советнику или скрипту при попытке выполнить торговую операцию. Сервер не знает, что торгует советник, он просто запрещает авторговлю.
Спасибо, узнал новое. Т.е., если сервер после запрещения торговли разрешит её, узнать об этом можно на стороне клиента будет только после перезагрузки терминала?
 
Yedelkin:
Спасибо, узнал новое. Т.е., если сервер после запрещения торговли разрешит её, узнать об этом можно на стороне клиента будет только после перезагрузки терминала?

В Лайте по умолчанию запрещена.Соответственно не работает.

Потом просишь поддержку разрешить.И начинает работать.Без перегрузки. 

 

В статье Торговые операции на MQL5 - это просто в разделе "Покупка/продажа по текущей цене" может кто знает там во время действия if(!trade.Buy(0.1)) {...} этот торговый класс, перед отправлением ордера на сервер, проверяет ли новые котировки или перед этим действием надо поставить Refreshrates?

 
paladin800:

В статье Торговые операции на MQL5 - это просто в разделе "Покупка/продажа по текущей цене" может кто знает там во время действия if(!trade.Buy(0.1)) {...} этот торговый класс, перед отправлением ордера на сервер, проверяет ли новые котировки или перед этим действием надо поставить Refreshrates?

Если речь идёт о методе Buy() класса Ctrade, то там имеется Refreshrates(). Запускается этот Refreshrates(), в частности, если во входных параметрах метода Buy() не указана цена. Посмотрите библиотеку.
Причина обращения: