Тест за 1 день по EURCHF начисляет свопы в конце дня для принудительно закрытых сделок в конце теста (end of test). Почему? Ведь в тестах по EURUSD и USDCHF не начисляет. Думаю надо или все символам начислять или всем не начислять, т.е. д.б. одинаковое поведение.
Проверил пару замеченных инструментов на нескольких датах. Похоже, что свопы тоже починили. Спасибо! (Жаль, что не пишите о сделанной работе, а приходится с новой бетой лазить по истории форума и проверять)
Хорошо бы сделать count с отрицательным значением, для переключения направления копирования тиков, чтобы получить тики до указанной даты: CopyTicks(_Symbol, ticks, COPY_TICKS_ALL, TimeMsec, -10); И получить 10 тиков от TimeMsec в прошлое. Нужно просто переключить направление копирования от найденной даты
Попробовал такое
#include <Trade\Trade.mqh> //подключаем библиотеку для совершения торговых операций
CTrade Trade; // объект для выполнения торговых операцийvoidOnInit(){}
voidOnTick(){
MqlTick Tick;
if (SymbolInfoTick(_Symbol, Tick)){
MqlTick ticks[];
int i=CopyTicks(_Symbol, ticks, COPY_TICKS_ALL, Tick.time_msc-100000, -3);
if(i>0){
Print(i," now=", (datetime)(Tick.time_msc)/1000,".",(Tick.time_msc)%1000," requested=", (datetime)(Tick.time_msc-100000)/1000,".",(Tick.time_msc-100000)%1000," first tick=",ticks[0].time,".",ticks[0].time_msc%1000, " last tick=",ticks[i-1].time,".",ticks[i-1].time_msc%1000);
}
}
}
Выдает тики, но не в количестве 3-х, а случайное количество. Примеры:
52 now=2023.05.30 23:54:42.140 requested=2023.05.30 23:53:02.140 first tick=2023.05.30 23:53:02.150 last tick=2023.05.30 23:54:42.140 53 now=2023.05.30 23:54:42.150 requested=2023.05.30 23:53:02.150 first tick=2023.05.30 23:53:02.150 last tick=2023.05.30 23:54:42.150 52 now=2023.05.30 23:54:42.212 requested=2023.05.30 23:53:02.212 first tick=2023.05.30 23:53:02.574 last tick=2023.05.30 23:54:42.212 53 now=2023.05.30 23:54:42.366 requested=2023.05.30 23:53:02.366 first tick=2023.05.30 23:53:02.574 last tick=2023.05.30 23:54:42.366
Тики старше запрошенного на 1-2 секунды и идущие вперед. Но начинающиеся от текущего времени. Т.е. какой то непонятный не описанный в справке функционал. Может всё-таки тики в прошлое от запрошенной даты выдать? Это будет реально полезная функция. Например при запросе -1 тика - можно получить цены на запрошенный момент времени (например до ролловера запросим 00:00:00.000 и получим последний тик до ролловера, был ли он в 23:59:59 или в 23:54:59 как последний тик торговой сессии ).
Спалили тайну тестерных граалей по реальным тикам на OOS!
Ну запрашивал тик из прошлого) Так что он не из будущего от текущего времени. Если запросить текущее время - то вернет все тики на запрошенной миллисекунде (иногда их бывает несколько).
Я правильно понимаю, что на последней релизной мт5 так и нет ключей командной строки, чтобы компилировать из консоли с подключением расширенного набора команд типа avx512? Если нет, просьба добавить. Спасибо.
Пустой разговор.
Не пустой. Многие узнают о внесении в MQL позитивных изменений - будут использовать в творчестве
Не пустой. Многие узнают о внесении в MQL позитивных изменений - будут использовать в творчестве
Любой баг можно воспринимать позитивным изменением. Хорошего настроения.
Любой баг можно воспринимать позитивным изменением. Хорошего настроения.
Вы не в теме просто - вот и чудятся везде баги, а их здесь нет (обобщил):
Это Вам любой грамотный пользователь подтвердит
Это Вам любой грамотный пользователь подтвердит
Ждем.
SymbolExist()
Forester #:
Тест за 1 день по EURCHF начисляет свопы в конце дня для принудительно закрытых сделок в конце теста (end of test). Почему? Ведь в тестах по EURUSD и USDCHF не начисляет. Думаю надо или все символам начислять или всем не начислять, т.е. д.б. одинаковое поведение.
Проверил пару замеченных инструментов на нескольких датах. Похоже, что свопы тоже починили. Спасибо! (Жаль, что не пишите о сделанной работе, а приходится с новой бетой лазить по истории форума и проверять)
Предложение по улучшению функционала.
Для https://www.mql5.com/ru/docs/series/copyticks
Хорошо бы сделать count с отрицательным значением, для переключения направления копирования тиков, чтобы получить тики до указанной даты:
CopyTicks(_Symbol, ticks, COPY_TICKS_ALL, TimeMsec, -10);
И получить 10 тиков от TimeMsec в прошлое. Нужно просто переключить направление копирования от найденной даты
Попробовал такое
Выдает тики, но не в количестве 3-х, а случайное количество. Примеры:
53 now=2023.05.30 23:54:42.150 requested=2023.05.30 23:53:02.150 first tick=2023.05.30 23:53:02.150 last tick=2023.05.30 23:54:42.150
52 now=2023.05.30 23:54:42.212 requested=2023.05.30 23:53:02.212 first tick=2023.05.30 23:53:02.574 last tick=2023.05.30 23:54:42.212
53 now=2023.05.30 23:54:42.366 requested=2023.05.30 23:53:02.366 first tick=2023.05.30 23:53:02.574 last tick=2023.05.30 23:54:42.366
Может всё-таки тики в прошлое от запрошенной даты выдать? Это будет реально полезная функция. Например при запросе -1 тика - можно получить цены на запрошенный момент времени (например до ролловера запросим 00:00:00.000 и получим последний тик до ролловера, был ли он в 23:59:59 или в 23:54:59 как последний тик торговой сессии ).
Тики старше запрошенного на 1-2 секунды и идущие вперед.
Спалили тайну тестерных граалей по реальным тикам на OOS!
Спалили тайну тестерных граалей по реальным тикам на OOS!
Ну запрашивал тик из прошлого) Так что он не из будущего от текущего времени.
После корректировки сообщения увидел это.
Ставлю в тестере период с 12.12.2023 по 31.12.2023. Текущие неполные сутки (14.12.2023) не входят в расчеты. Это так задумано или ошибка?