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

 
ещё кто подскажет - делаю форвард-оптимизацию, только почему-то в результатах оптимизации нет 2-х вариантов по критерию. я так понял, должен быть бэк и форвард данные. в контекстном меню тоже ничего нет похожего. как посмотреть данные бэк и форвард по результатам оптимизации?
 

Подскажите начинающему.

При наступлении события Start в скрипте его обрабатывает функция OnStatr().

Я написал скрипт Print_1 

void OnStart()
  {
   int x, y, z;
   x=5;
   y=4;
   z=x+y;
   printf(IntegerToString(z));
  }

Я полагаю, что данная функция должна вывести в журнал терминала число 9 при кликании мышкой на скрипт Print_1. Но ничего не происходит.

Как и где в терминале увидеть вывод z на экран? Что является источником события Start? Как его запустить, чтобы наконец числ 9 вывелось на экран. Причем запустить из терминала.

Документация по MQL5: Программы MQL5 / События клиентского терминала
Документация по MQL5: Программы MQL5 / События клиентского терминала
  • www.mql5.com
Сразу же после того, как клиентский терминал загрузит программу (эксперт или пользовательский индикатор) и запустит процесс инициализации глобальных переменных, будет послано событие Init, которое обрабатывается функцией OnInit(), если она есть. Это событие также генерируется после смены финансового инструмента и/или периода графика, после...
 
Как отследить момент срабатывания ордера, чтобы выставить еще один ордер в том же направлении и на определенном расстоянии? (на mql5)
 
MaxTr:

Подскажите начинающему.

При наступлении события Start в скрипте его обрабатывает функция OnStatr().

Я написал скрипт Print_1 

Я полагаю, что данная функция должна вывести в журнал терминала число 9 при кликании мышкой на скрипт Print_1. Но ничего не происходит.

Как и где в терминале увидеть вывод z на экран? Что является источником события Start? Как его запустить, чтобы наконец числ 9 вывелось на экран. Причем запустить из терминала.

Print, printf принтуют информацию в окно "Инструменты", во вкладку "Эксперты".

Print

Выводит сообщение в журнал

PrintFormat

Форматирует и печатает наборы символов и значений в лог-файл в соответствие с заданным форматом


Вывод на экран осуществляется через 

Comment

Выводит сообщение в левый верхний угол ценового графика

Документация по MQL5: Общие функции / Print
Документация по MQL5: Общие функции / Print
  • www.mql5.com
Данные типа double выводятся с точностью до 16 десятичных цифр после точки, при этом данные могут выводиться либо в традиционном либо в научном формате – в зависимости от того, как запись будет наиболее компактна. Данные типа float выводятся с 5 десятичными цифрами после точки. Для вывода вещественных чисел с другой точностью либо в явно...
 
Sysmart:
Как отследить момент срабатывания ордера, чтобы выставить еще один ордер в том же направлении и на определенном расстоянии? (на mql5)


//+------------------------------------------------------------------+
//| TradeTransaction function                                        |
//+------------------------------------------------------------------+
void OnTradeTransaction(const MqlTradeTransaction &trans,
                        const MqlTradeRequest &request,
                        const MqlTradeResult &result)
  {
//--- get transaction type as enumeration value
   ENUM_TRADE_TRANSACTION_TYPE type=trans.type;
//--- if transaction is result of addition of the transaction in history
   if(type==TRADE_TRANSACTION_DEAL_ADD)
     {
      if(HistoryDealSelect(trans.deal))
         m_deal.Ticket(trans.deal);
      else
         return;
      if(m_deal.Symbol()==m_symbol.Name() && m_deal.Magic()==InpMagic)
        {
         if(m_deal.DealType()==DEAL_TYPE_BUY || m_deal.DealType()==DEAL_TYPE_SELL)
           {
            if(m_deal.Entry()==DEAL_ENTRY_IN)
 
Vladimir Karputov:


Слышал, что в OnTradeTransaction не стоит делать, т.к. не всегда срабатывает

 
Если хедж счет, можно отследить срабатывание ордера по изменению количества ордеров?
Документация по MQL5: Торговые функции / PositionsTotal
Документация по MQL5: Торговые функции / PositionsTotal
  • www.mql5.com
Торговые функции / PositionsTotal - справочник по языку алгоритмического/автоматического трейдинга для MetaTrader 5
 
Новая проблема, нужно выбрать последнюю открытую позицию в хедже
 
Sysmart:
Новая проблема, нужно выбрать последнюю открытую позицию в хедже

OnTradeTransaction + переменная объявленная в "шапке" эксперта. Переменная хранит тип последней открытой позиции. Имеет тип long и инициализируется значением '-1'. В OnTradeTransaction отлавливаете момент открытия позиции и записываете в переменную. 

Далее в своём коде проверяете эту переменную - если она равна '-1', значит в цикле перебираете открытые позиции и сравниваете время открытия каждой. Находите самую 'молодую' позицию и записываете в переменную. Если переменная не равна '-1' - значит сравниваете её с типом позиций.

Документация по MQL5: Основы языка / Функции / Функции обработки событий
Документация по MQL5: Основы языка / Функции / Функции обработки событий
  • www.mql5.com
В языке MQL5 предусмотрена обработка некоторых предопределенных событий. Функции для обработки этих событий должны быть определены в программе MQL5: имя функции, тип возвращаемого значения, состав параметров (если они есть) и их типы должны строго соответствовать описанию функции-обработчика события. Именно по типу возвращаемого значения и по...
 
Подскажите как положить деньги на МТ5.
Причина обращения: