Сделал эксперта который совершает определенные действия если
в истории существует ордер с тикетом например Х , допустим совершается
действие Х1 после чего у нас появляются ордера с тикетом Y Z при
их закрытии их тикет остается в истории и как они там появляются
то совершаются действия Y1 Z1. А проблема в том что история то
у нас остается и никуда не девается и как я только начинаю выбирать
ордера из истории и смотрю их тикеты то мне вновь попадается
тикет X который был открыт снача, хотя он мне уже не нужен теперь
у меня уже другой тикет Х. Прогон по истории например только
трех последних закрытых позиций не подходит. Т.к. позиций у меня
может быть от 3 до 30 (т.е. от 3 до 30 разных тикетов). Какое Вы видите
решение данной проблемы.?
- Частичное закрытие ордеров
- Как в языке MQL4 определить тикет ордера, который возникает в результате закрытия встречных ордеров функцией OrderCloseBy() ?
- Вопросы от начинающих MQL5 MT5 MetaTrader 5
Проводите проверку не только по номеру тикета, но и, например,
по OrderOpenTime(). Хотя пост не вполне проясняет суть проблемы. Если существует
"уже другой тикет Х", то по нему и проводите проверку, зачем
искать " тикет X который был открыт снача". Опишите проблему
точнее, лучше на примере.
если в выборке имеем уже закрытый ордер с номером тикета Х1 и
Х1 в истории но нужно чтобы ордер рассматривался только последний
Если у тебя не предвидится обработка сразу двух ордеров, то можно попробовать так:
datetime lastorderclose;
int start(){
datetime closetimeorder;
...
for(int cnt=HistoryTotal()-1;cnt>=0;cnt--)
{
OrderSelect(cnt, SELECT_BY_POS, MODE_HISTORY);
closetimeorder=OrderCloseTime();
{
OrderSelect(cnt, SELECT_BY_POS, MODE_HISTORY);
closetimeorder=OrderCloseTime();
if(closetimeorder>lastorderclose)
{
closetimeorder=lastorderclose;
//дальше твои действия
}
}
...
}
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь