MetaEditor build 1471 - страница 2

 
В MT4 в тестере всегда в истории видны все модификации ордеров и позиций. Где в MT5 включается показ этих событий?
 
fxsaber:
В MT4 в тестере всегда в истории видны все модификации ордеров и позиций. Где в MT5 включается показ этих событий?
ПКМ во вкладке бэктест?
 
ivanivan_11:
ПКМ во вкладке бэктест?
Да. И в отчете.
 
fxsaber:
Да. И в отчете.
я к тому,что там разве не видно?
 
ivanivan_11:
я к тому,что там разве не видно?

Данные о модификациях там не видны. Есть только TRADE_ACTION_DEALTRADE_ACTION_PENDING и TRADE_ACTION_CLOSE_BY.

А вот TRADE_ACTION_SLTPTRADE_ACTION_MODIFYTRADE_ACTION_REMOVE - отсутствуют. 

Документация по MQL5: Стандартные константы, перечисления и структуры / Торговые константы / Типы торговых операций
Документация по MQL5: Стандартные константы, перечисления и структуры / Торговые константы / Типы торговых операций
  • www.mql5.com
Стандартные константы, перечисления и структуры / Торговые константы / Типы торговых операций - справочник по языку алгоритмического/автоматического трейдинга для MetaTrader 5
 

Форум по трейдингу, автоматическим торговым системам и тестированию торговых стратегий

Список изменений в билдах MetaTrader 5 Client Terminal

MetaQuotes Software Corp., 2016.11.16 16:03

  1. Terminal: В торговой истории у ордеров и сделок закрытия позиций в режиме хеджинга теперь показывается тикет закрытой позиции. Это облегчит поиск парных операций открытия и закрытия.



Выводятся эти значения?
HistoryOrderGetInteger(OrderTicket, ORDER_POSITION_ID);
HistoryDealGetInteger(DealTicket, DEAL_POSITION_ID);
Т.е. фишка исключительно визуальная?
 

Ошибка при выполнении

int f( int& a2, string& a3 )
{
        a2 = 2;
        a3 = "ABCDEFGH";
        return 1;
}
class A { public:
        A() : a1( f( a2, a3 ) ) {}
        int    a1;
        int    a2;
        string a3;
};
void OnStart()
{
        A a;
        Print( a.a1, ":", a.a2, ":", a.a3 );
}

Результат: 1:2:

А куда пропало   "ABCDEFGH" ?

 
A100:

Ошибка при выполнении

int f( int& a2, string& a3 )
{
        a2 = 2;
        a3 = "ABCDEFGH";
        return 1;
}
class A { public:
        A() : a1( f( a2, a3 ) ) {}
        int    a1;
        int    a2;
        string a3;
};
void OnStart()
{
        A a;
        Print( a.a1, ":", a.a2, ":", a.a3 );
}

Результат: 1:2:

А куда пропало   "ABCDEFGH" ?

Сложные объекты (строки), похоже, инициализируются последними перед запуском тела конструктора. Поэтому даже если сделать вначале a3("Hello"), то в f a3 все равно будет NULL.
 
A100:

Ошибка при выполнении

int f( int& a2, string& a3 )
{
        a2 = 2;
        a3 = "ABCDEFGH";
        return 1;
}
class A { public:
        A() : a1( f( a2, a3 ) ) {}
        int    a1;
        int    a2;
        string a3;
};
void OnStart()
{
        A a;
        Print( a.a1, ":", a.a2, ":", a.a3 );
}

Результат: 1:2:

А куда пропало   "ABCDEFGH" ?

string же инициализируется NULL по умолчанию. Поэтому тут, полагаю, нужно было a3 расположить выше, чем a1, чтобы соблюсти нужный порядок инициализации.
 
Alexey Navoykov:
string же инициализируется NULL по умолчанию. Поэтому тут, полагаю, нужно было a3 расположить выше, чем a1, чтобы соблюсти нужный порядок инициализации.
Никогда бы не подумал, что порядок написания полей в классе важен. Выходит, что и private, public иногда надо делать по несколько раз внутри класса.