К разработчикам: может для ArraySwap(char,uchar) и ArraySwap(uchar,char) - сделать исключение и пропустить проверку типа в компиляторе? Всё же работает. Или WebRequest или CryptDecode с uchar прегрузкой.
Всем салют. Build 5100 Win11. В визуальном режиме отладки пропали вкладки других ТФ по которым я получаю индикаторы. Сейчас они доступны только через меню View - Chart. Кто нибудь знает в чем проблема ?
Когда в MT5 появится нормальный тестер стратегий? Чтобы я во время теста смог хотя бы линию на графике провести или метку поставить? В MT4 все в порядке с этим было...
Билд 4885. Если в новом исправлено - сообщите. Но сомневаюсь, т.к. обновлений долго не было.
Баг с таймером. Если запускать с параметром quick=true, то функция работает очень быстро и таймер всегда срабатывает через 100мс.
Баг при quick=false: EventSetMillisecondTimer(100); вызывает OnTimer() не через 100 мс, а через время от предыдущего вызова до нового + 100 мс. Аналогично и EventSetTimer(1) не через 1 сек, а с дополнительной паузой.
Например если после предыдущего вызова, некий код работал 5 секунд, то следущий сработает через паузу 5 сек 100мс:
Эксперт:
Полный вывод в лог:
Убрать таймер не предлагайте - нужно именно так.
Работа через паузу таймером нужна для работы с графической панелью, чтобы на короткое время паузы она успела получить события нажатия кнопок и обработать их. Если работать без таймера то нажатия на кнопки вообще не срабатывают. Кнопка нужна для остановки этих медленных расчетов.
Надеюсь к релизу разработчики успеют исправить.
Добавлено: Возможно при EventKillTimer(); EventSetMillisecondTimer(100); EventSetTimer(100); надо что-то обнулить в внутреннем коде?
Не успели. ( Оставляю остановку скачивания через закрытие графика.
Vladislav Boyko # : Проверьте, пожалуйста, ArrayInitialize. Похоже, она немного сломалась. Подробности здесь и здесь .
Немного сломался? 😁
int ArrayInitializeWrapper<char>(char&[],char) Другой размер!!! int ArrayInitializeWrapper<short>(short&[],short) Другой размер!!! int ArrayInitializeWrapper<int>(int&[],int) Другой размер!!! int ArrayInitializeWrapper<long>(long&[],long) Другой размер!!! int ArrayInitializeWrapper<long>(long&[],long) Различное значение !!! Ожидалось:123 найдено:8608123439198240768 int ArrayInitializeWrapper<long>(long&[],long) Различное значение !!! Ожидалось:123 найдено:2598902716976 int ArrayInitializeWrapper<long>(long&[],long) Другое значение !!! Ожидалось:123 найдено:1 int ArrayInitializeWrapper<long>(long&[],long) Другое значение !!! Ожидалось:123 найдено:32 int ArrayInitializeWrapper<long>(long&[],long) Другое значение !!! Ожидалось:123 найдено:0 int ArrayInitializeWrapper<long>(long&[],long) Другое значение !!! Ожидалось:123 найдено:0 int ArrayInitializeWrapper<long>(long&[],long) Другое значение !!! Ожидалось:123 найдено:1 int ArrayInitializeWrapper<long>(long&[],long) Другое значение !!! Ожидалось:123 найдено:32 int ArrayInitializeWrapper<long>(long&[],long) Другое значение !!! Ожидалось:123 найдено:0 int ArrayInitializeWrapper<long>(long&[],long) Другое значение !!! Ожидалось:123 найдено:281857228800000 int ArrayInitializeWrapper<uchar>(uchar&[],uchar) Другой размер !!! int ArrayInitializeWrapper<ushort>(ushort&[],ushort) Другой размер!!! int ArrayInitializeWrapper<uint>(uint&[],uint) Другой размер!!! int ArrayInitializeWrapper<ulong>(ulong&[],ulong) Другой размер !!! int ArrayInitializeWrapper<ulong>(ulong&[],ulong) Другое значение !!! Ожидается:123 найдено:0 int ArrayInitializeWrapper<ulong>(ulong&[],ulong) Другое значение !!! Ожидается:123 найдено:0 int ArrayInitializeWrapper<ulong>(ulong&[],ulong) Другое значение !!! Ожидается:123 найдено:1 int ArrayInitializeWrapper<ulong>(ulong&[],ulong) Другое значение !!! Ожидается:123 найдено:32 int ArrayInitializeWrapper<ulong>(ulong&[],ulong) Другое значение !!! Ожидается:123 найдено:0 int ArrayInitializeWrapper<ulong>(ulong&[],ulong) Другое значение !!! Ожидается:123 найдено:0 int ArrayInitializeWrapper<ulong>(ulong&[],ulong) Другое значение !!! Ожидается:123 найдено:1 int ArrayInitializeWrapper<ulong>(ulong&[],ulong) Другое значение !!! Ожидается:123 найдено:32 int ArrayInitializeWrapper<ulong>(ulong&[],ulong) Другое значение !!! Ожидается:123 найдено:0 int ArrayInitializeWrapper<ulong>(ulong&[],ulong) Другое значение !!! Ожидается:123 найдено:0 int ArrayInitializeWrapper<bool>(bool&[],bool) Другой размер!!! int ArrayInitializeWrapper<double>(double&[],double) ВСЕ ОК int ArrayInitializeWrapper<float>(float&[],float) ВСЕ ОК int ArrayInitializeWrapper<color>(color&[],color) Другой размер!!! int ArrayInitializeWrapper<datetime>(datetime&[],datetime) Другой размер!!! int ArrayInitializeWrapper<datetime>(datetime&[],datetime) Различное значение !!! Ожидалось:2025.06.07 08:58:57 найдено:1970.01.01 00:00:00 int ArrayInitializeWrapper<datetime>(datetime&[],datetime) Различное значение !!! Ожидалось:2025.06.07 08:58:57 найдено:1970.01.01 00:00:00 int ArrayInitializeWrapper<datetime>(datetime&[],datetime) Различное значение !!! Ожидалось:2025.06.07 08:58:57 найдено:1970.01.01 00:00:01 int ArrayInitializeWrapper<datetime>(datetime&[],datetime) Различное значение !!! Ожидалось:2025.06.07 08:58:57 найдено:1970.01.01 00:00:32 int ArrayInitializeWrapper<datetime>(datetime&[],datetime) Различное значение !!! Ожидалось:2025.06.07 08:58:57 найдено:1970.01.01 00:00:00 int ArrayInitializeWrapper<datetime>(datetime&[],datetime) Различное значение !!! Ожидалось:2025.06.07 08:58:57 найдено:1970.01.01 00:00:00 int ArrayInitializeWrapper<datetime>(datetime&[],datetime) Различное значение !!! Ожидалось:2025.06.07 08:58:57 найдено:1970.01.01 00:00:01 int ArrayInitializeWrapper<datetime>(datetime&[],datetime) Различное значение !!! Ожидалось:2025.06.07 08:58:57 найдено:1970.01.01 00:00:32 int ArrayInitializeWrapper<datetime>(datetime&[],datetime) Различное значение !!! Ожидалось:2025.06.07 08:58:57 найдено:1970.01.01 00:00:00 int ArrayInitializeWrapper<datetime>(datetime&[],datetime) Различное значение !!! Ожидалось:2025.06.07 08:58:57 найдено:1970.01.01 00:00:00 int ArrayInitializeWrapper<ENUM_OBJECT_PROPERTY_DOUBLE>(ENUM_OBJECT_PROPERTY_DOUBLE&[],ENUM_OBJECT_PROPERTY_DOUBLE) Другой размер!!! int ArrayInitializeWrapper<ENUM_OBJECT_PROPERTY_DOUBLE>(ENUM_OBJECT_PROPERTY_DOUBLE&[],ENUM_OBJECT_PROPERTY_DOUBLE) Различное значение !!! Ожидалось:9, найдено:0 int ArrayInitializeWrapper<ENUM_OBJECT_PROPERTY_DOUBLE>(ENUM_OBJECT_PROPERTY_DOUBLE&[],ENUM_OBJECT_PROPERTY_DOUBLE) Различное значение !!! Ожидалось:9, найдено:0 int ArrayInitializeWrapper<ENUM_OBJECT_PROPERTY_DOUBLE>(ENUM_OBJECT_PROPERTY_DOUBLE&[],ENUM_OBJECT_PROPERTY_DOUBLE) Различное значение !!! Ожидалось:9, найдено:0 int ArrayInitializeWrapper<ENUM_OBJECT_PROPERTY_DOUBLE>(ENUM_OBJECT_PROPERTY_DOUBLE&[],ENUM_OBJECT_PROPERTY_DOUBLE) Различное значение !!! Ожидалось:9, найдено:0 int ArrayInitializeWrapper<ENUM_OBJECT_PROPERTY_DOUBLE>(ENUM_OBJECT_PROPERTY_DOUBLE&[],ENUM_OBJECT_PROPERTY_DOUBLE) Различное значение !!! Ожидалось:9, найдено:0 int ArrayInitializeWrapper<ENUM_OBJECT_PROPERTY_DOUBLE>(ENUM_OBJECT_PROPERTY_DOUBLE&[],ENUM_OBJECT_PROPERTY_DOUBLE) Различное значение !!! Ожидалось:9, найдено:0 int ArrayInitializeWrapper<ENUM_OBJECT_PROPERTY_DOUBLE>(ENUM_OBJECT_PROPERTY_DOUBLE&[],ENUM_OBJECT_PROPERTY_DOUBLE) Различное значение !!! Ожидалось:9, найдено:0 int ArrayInitializeWrapper<ENUM_OBJECT_PROPERTY_DOUBLE>(ENUM_OBJECT_PROPERTY_DOUBLE&[],ENUM_OBJECT_PROPERTY_DOUBLE) Различное значение !!! Ожидалось:9, найдено:0 int ArrayInitializeWrapper<ENUM_OBJECT_PROPERTY_DOUBLE>(ENUM_OBJECT_PROPERTY_DOUBLE&[],ENUM_OBJECT_PROPERTY_DOUBLE) Различное значение !!! Ожидалось:9, найдено:0 int ArrayInitializeWrapper<ENUM_OBJECT_PROPERTY_DOUBLE>(ENUM_OBJECT_PROPERTY_DOUBLE&[],ENUM_OBJECT_PROPERTY_DOUBLE) Различное значение !!! Ожидалось:9, найдено:0
Что вы сотворили с интерфейсом??? Все сливается и плывет. Зачем слева добавили у поля ТЕСТЕР или ИНСТРУМЕНТЫ надпись ТЕСТЕР СТРАТЕГИЙ и ИНСТРУМЕНТЫ, она только захламляет это поле.
ArraySwap
К разработчикам: может для ArraySwap(char,uchar) и ArraySwap(uchar,char) - сделать исключение и пропустить проверку типа в компиляторе? Всё же работает.
Или WebRequest или CryptDecode с uchar прегрузкой.
Билд 4885. Если в новом исправлено - сообщите. Но сомневаюсь, т.к. обновлений долго не было.
Баг с таймером.
Если запускать с параметром quick=true, то функция работает очень быстро и таймер всегда срабатывает через 100мс.
Баг при quick=false:
EventSetMillisecondTimer(100); вызывает OnTimer() не через 100 мс, а через время от предыдущего вызова до нового + 100 мс. Аналогично и EventSetTimer(1) не через 1 сек, а с дополнительной паузой.
Например если после предыдущего вызова, некий код работал 5 секунд, то следущий сработает через паузу 5 сек 100мс:
Эксперт:
Полный вывод в лог:
Убрать таймер не предлагайте - нужно именно так.
Работа через паузу таймером нужна для работы с графической панелью, чтобы на короткое время паузы она успела получить события нажатия кнопок и обработать их. Если работать без таймера то нажатия на кнопки вообще не срабатывают. Кнопка нужна для остановки этих медленных расчетов.
Добавлено: Возможно при EventKillTimer(); EventSetMillisecondTimer(100); EventSetTimer(100); надо что-то обнулить в внутреннем коде?Надеюсь к релизу разработчики успеют исправить.
Не успели. (
Оставляю остановку скачивания через закрытие графика.
Проверьте, пожалуйста, ArrayInitialize. Похоже, она немного сломалась. Подробности здесь и здесь .
Немного сломался? 😁
int ArrayInitializeWrapper<char>(char&[],char) Другой размер!!!
int ArrayInitializeWrapper<short>(short&[],short) Другой размер!!!
int ArrayInitializeWrapper<int>(int&[],int) Другой размер!!!
int ArrayInitializeWrapper<long>(long&[],long) Другой размер!!!
int ArrayInitializeWrapper<long>(long&[],long) Различное значение !!! Ожидалось:123 найдено:8608123439198240768
int ArrayInitializeWrapper<long>(long&[],long) Различное значение !!! Ожидалось:123 найдено:2598902716976
int ArrayInitializeWrapper<long>(long&[],long) Другое значение !!! Ожидалось:123 найдено:1
int ArrayInitializeWrapper<long>(long&[],long) Другое значение !!! Ожидалось:123 найдено:32
int ArrayInitializeWrapper<long>(long&[],long) Другое значение !!! Ожидалось:123 найдено:0
int ArrayInitializeWrapper<long>(long&[],long) Другое значение !!! Ожидалось:123 найдено:0
int ArrayInitializeWrapper<long>(long&[],long) Другое значение !!! Ожидалось:123 найдено:1
int ArrayInitializeWrapper<long>(long&[],long) Другое значение !!! Ожидалось:123 найдено:32
int ArrayInitializeWrapper<long>(long&[],long) Другое значение !!! Ожидалось:123 найдено:0
int ArrayInitializeWrapper<long>(long&[],long) Другое значение !!! Ожидалось:123 найдено:281857228800000
int ArrayInitializeWrapper<uchar>(uchar&[],uchar) Другой размер !!!
int ArrayInitializeWrapper<ushort>(ushort&[],ushort) Другой размер!!!
int ArrayInitializeWrapper<uint>(uint&[],uint) Другой размер!!!
int ArrayInitializeWrapper<ulong>(ulong&[],ulong) Другой размер !!!
int ArrayInitializeWrapper<ulong>(ulong&[],ulong) Другое значение !!! Ожидается:123 найдено:0
int ArrayInitializeWrapper<ulong>(ulong&[],ulong) Другое значение !!! Ожидается:123 найдено:0
int ArrayInitializeWrapper<ulong>(ulong&[],ulong) Другое значение !!! Ожидается:123 найдено:1
int ArrayInitializeWrapper<ulong>(ulong&[],ulong) Другое значение !!! Ожидается:123 найдено:32
int ArrayInitializeWrapper<ulong>(ulong&[],ulong) Другое значение !!! Ожидается:123 найдено:0
int ArrayInitializeWrapper<ulong>(ulong&[],ulong) Другое значение !!! Ожидается:123 найдено:0
int ArrayInitializeWrapper<ulong>(ulong&[],ulong) Другое значение !!! Ожидается:123 найдено:1
int ArrayInitializeWrapper<ulong>(ulong&[],ulong) Другое значение !!! Ожидается:123 найдено:32
int ArrayInitializeWrapper<ulong>(ulong&[],ulong) Другое значение !!! Ожидается:123 найдено:0
int ArrayInitializeWrapper<ulong>(ulong&[],ulong) Другое значение !!! Ожидается:123 найдено:0
int ArrayInitializeWrapper<bool>(bool&[],bool) Другой размер!!!
int ArrayInitializeWrapper<double>(double&[],double) ВСЕ ОК
int ArrayInitializeWrapper<float>(float&[],float) ВСЕ ОК
int ArrayInitializeWrapper<color>(color&[],color) Другой размер!!!
int ArrayInitializeWrapper<datetime>(datetime&[],datetime) Другой размер!!!
int ArrayInitializeWrapper<datetime>(datetime&[],datetime) Различное значение !!! Ожидалось:2025.06.07 08:58:57 найдено:1970.01.01 00:00:00
int ArrayInitializeWrapper<datetime>(datetime&[],datetime) Различное значение !!! Ожидалось:2025.06.07 08:58:57 найдено:1970.01.01 00:00:00
int ArrayInitializeWrapper<datetime>(datetime&[],datetime) Различное значение !!! Ожидалось:2025.06.07 08:58:57 найдено:1970.01.01 00:00:01
int ArrayInitializeWrapper<datetime>(datetime&[],datetime) Различное значение !!! Ожидалось:2025.06.07 08:58:57 найдено:1970.01.01 00:00:32
int ArrayInitializeWrapper<datetime>(datetime&[],datetime) Различное значение !!! Ожидалось:2025.06.07 08:58:57 найдено:1970.01.01 00:00:00
int ArrayInitializeWrapper<datetime>(datetime&[],datetime) Различное значение !!! Ожидалось:2025.06.07 08:58:57 найдено:1970.01.01 00:00:00
int ArrayInitializeWrapper<datetime>(datetime&[],datetime) Различное значение !!! Ожидалось:2025.06.07 08:58:57 найдено:1970.01.01 00:00:01
int ArrayInitializeWrapper<datetime>(datetime&[],datetime) Различное значение !!! Ожидалось:2025.06.07 08:58:57 найдено:1970.01.01 00:00:32
int ArrayInitializeWrapper<datetime>(datetime&[],datetime) Различное значение !!! Ожидалось:2025.06.07 08:58:57 найдено:1970.01.01 00:00:00
int ArrayInitializeWrapper<datetime>(datetime&[],datetime) Различное значение !!! Ожидалось:2025.06.07 08:58:57 найдено:1970.01.01 00:00:00
int ArrayInitializeWrapper<ENUM_OBJECT_PROPERTY_DOUBLE>(ENUM_OBJECT_PROPERTY_DOUBLE&[],ENUM_OBJECT_PROPERTY_DOUBLE) Другой размер!!!
int ArrayInitializeWrapper<ENUM_OBJECT_PROPERTY_DOUBLE>(ENUM_OBJECT_PROPERTY_DOUBLE&[],ENUM_OBJECT_PROPERTY_DOUBLE) Различное значение !!! Ожидалось:9, найдено:0
int ArrayInitializeWrapper<ENUM_OBJECT_PROPERTY_DOUBLE>(ENUM_OBJECT_PROPERTY_DOUBLE&[],ENUM_OBJECT_PROPERTY_DOUBLE) Различное значение !!! Ожидалось:9, найдено:0
int ArrayInitializeWrapper<ENUM_OBJECT_PROPERTY_DOUBLE>(ENUM_OBJECT_PROPERTY_DOUBLE&[],ENUM_OBJECT_PROPERTY_DOUBLE) Различное значение !!! Ожидалось:9, найдено:0
int ArrayInitializeWrapper<ENUM_OBJECT_PROPERTY_DOUBLE>(ENUM_OBJECT_PROPERTY_DOUBLE&[],ENUM_OBJECT_PROPERTY_DOUBLE) Различное значение !!! Ожидалось:9, найдено:0
int ArrayInitializeWrapper<ENUM_OBJECT_PROPERTY_DOUBLE>(ENUM_OBJECT_PROPERTY_DOUBLE&[],ENUM_OBJECT_PROPERTY_DOUBLE) Различное значение !!! Ожидалось:9, найдено:0
int ArrayInitializeWrapper<ENUM_OBJECT_PROPERTY_DOUBLE>(ENUM_OBJECT_PROPERTY_DOUBLE&[],ENUM_OBJECT_PROPERTY_DOUBLE) Различное значение !!! Ожидалось:9, найдено:0
int ArrayInitializeWrapper<ENUM_OBJECT_PROPERTY_DOUBLE>(ENUM_OBJECT_PROPERTY_DOUBLE&[],ENUM_OBJECT_PROPERTY_DOUBLE) Различное значение !!! Ожидалось:9, найдено:0
int ArrayInitializeWrapper<ENUM_OBJECT_PROPERTY_DOUBLE>(ENUM_OBJECT_PROPERTY_DOUBLE&[],ENUM_OBJECT_PROPERTY_DOUBLE) Различное значение !!! Ожидалось:9, найдено:0
int ArrayInitializeWrapper<ENUM_OBJECT_PROPERTY_DOUBLE>(ENUM_OBJECT_PROPERTY_DOUBLE&[],ENUM_OBJECT_PROPERTY_DOUBLE) Различное значение !!! Ожидалось:9, найдено:0
int ArrayInitializeWrapper<ENUM_OBJECT_PROPERTY_DOUBLE>(ENUM_OBJECT_PROPERTY_DOUBLE&[],ENUM_OBJECT_PROPERTY_DOUBLE) Различное значение !!! Ожидалось:9, найдено:0
Metatrader 5100 на Mac OS не работает сохранение темплейтов.
И пропала возможность прокрутить колесом мыши меню со списком темплейтов.