Если использовать Тестер/Оптимизатор без длительных перерывов даже на разных символах, тики не пропадают. Наверное, тики удаляются за счет подчистки каких-то кэшей Тестера.
Когда мне нужно заполнить часть большого массива одним значением Z я использую конструкцию:
ArrayInitialize(ar,Z); // промежуточный массив размер массива ar = 1000 ArrayCopy(arr,ar,5000); // основной массив заполняется значением Z c 5000 по 5999 элемент
Многие скажут - зачем так сложно, можно ведь проще:
ArrayFill(arr,5000,1000,Z);
Но по непонятной причине первый вариант с использованием промежуточного массива выполняется заметнее быстрее чем второй
2018.09.0411:01:17.222 TestArrayFill (EURUSD,M4) Время заполнения через ArrayFill = 3382018.09.0411:01:17.222 TestArrayFill (EURUSD,M4) Время заполнения через ArrayInitialize + ArrayCopy = 1112018.09.0411:01:18.563 TestArrayFill (EURUSD,M4) Время заполнения через ArrayFill = 3012018.09.0411:01:18.563 TestArrayFill (EURUSD,M4) Время заполнения через ArrayInitialize + ArrayCopy = 1222018.09.0411:01:19.717 TestArrayFill (EURUSD,M4) Время заполнения через ArrayFill = 3342018.09.0411:01:19.717 TestArrayFill (EURUSD,M4) Время заполнения через ArrayInitialize + ArrayCopy = 1422018.09.0411:01:21.095 TestArrayFill (EURUSD,M4) Время заполнения через ArrayFill = 3642018.09.0411:01:21.095 TestArrayFill (EURUSD,M4) Время заполнения через ArrayInitialize + ArrayCopy = 156
Пару лет назад я уже писал по этому вопросу в СД. На что получил ответ, что мол спасибо, проблему нашли и исправили, в следующем билде будет нормально.
Но проблема остается.
Причем тот же самый тест в MT4:
2018.09.0411:08:21.258 TestArrayFill EURUSD,H1: Время заполнения через ArrayInitialize + ArrayCopy = 1132018.09.0411:08:21.258 TestArrayFill EURUSD,H1: Время заполнения через ArrayFill = 78
Когда мне нужно заполнить часть большого массива одним значением Z я использую конструкцию:
Многие скажут - зачем так сложно, можно ведь проще:
Но по непонятной причине первый вариант с использованием промежуточного массива выполняется заметнее быстрее чем второй
Пару лет назад я уже писал по этому вопросу в СД. На что получил ответ, что мол спасибо, проблему нашли и исправили, в следующем билде будет нормально.
Ничего себе особенность и тонкость! Важная стандартная функция работы с массивами самого быстрого в мире языка алготрейдинга работает в 4 раза медленнее, чем на устаревшем языке MQL4. Только здесь.
Явный же бажище. Представляете, как многие программы залетают, когда его исправят.
Ничего себе особенность и тонкость! Важная стандартная функция работы с массивами самого быстрого в мире языка алготрейдинга работает в 4 раза медленнее, чем на устаревшем языке MQL4. Только здесь.
Явный же бажище. Представляете, как многие программы залетают, когда его исправят.
Добро.
Но вот как особенность в данный момент - разве плохо?
Названия символов обрезаются в GUI кэшей оптимизатора
Особенно актуально для кастомных символов - там названия часто длинные.
Если использовать Тестер/Оптимизатор без длительных перерывов даже на разных символах, тики не пропадают. Наверное, тики удаляются за счет подчистки каких-то кэшей Тестера.
Название символа не может быть длиннее 32 символов, включая терминирующий 0. То есть, по факту - 31.
На скрине обрезаны названия из 28-ми символов.
Нашли и исправили.
Спасибо. Если продолжить говорить про кастомные, то такие две ситуации с ними
1
Форум по трейдингу, автоматическим торговым системам и тестированию торговых стратегий
Ошибки, баги, вопросы
fxsaber, 2018.08.28 19:45
Возможно ли как-то починить это к следующему билду?
Когда переключаюсь на другой счет, то чарт кастомного символа теряет бары - "Ожидание обновления". Бары не запросить. При этом тики - без проблем.
После перезагрузки Терминала, конечно, бары на чарте доступны.
Хотелось бы, чтобы после переключения на другой счет бары кастомных символов оставались доступны без перезагрузки.
2.
Форум по трейдингу, автоматическим торговым системам и тестированию торговых стратегий
Ошибки, баги, вопросы
fxsaber, 2018.08.28 10:20
Успешное выполнение этой функции занимает минуту при 24 млн тиков. Возможно ли ускорить?
На скрине обрезаны названия из 28-ми символов.
Спасибо. Если продолжить говорить про кастомные, то такие две ситуации с ними
1
2.
Про 28 символов проверим.
2. Может и можно ускорить, но это не является первоочередной задачей.
Давайте подробности по первому пункту. Нужно чёткое воспроизведение.
Давайте подробности по первому пункту. Нужно чёткое воспроизведение.
fxsaber:
3. Переключаетесь на счет с другого торгового сервера.
Переключение равносильно потери связи... не исключено что в данном случае все сведется к этому https://www.mql5.com/ru/forum/275574#comment_8485737
Когда мне нужно заполнить часть большого массива одним значением Z я использую конструкцию:
Многие скажут - зачем так сложно, можно ведь проще:
ArrayFill(arr,5000,1000,Z);Но по непонятной причине первый вариант с использованием промежуточного массива выполняется заметнее быстрее чем второй
Пару лет назад я уже писал по этому вопросу в СД. На что получил ответ, что мол спасибо, проблему нашли и исправили, в следующем билде будет нормально.
Но проблема остается.
Причем тот же самый тест в MT4:
Когда мне нужно заполнить часть большого массива одним значением Z я использую конструкцию:
Многие скажут - зачем так сложно, можно ведь проще:
Но по непонятной причине первый вариант с использованием промежуточного массива выполняется заметнее быстрее чем второй
Пару лет назад я уже писал по этому вопросу в СД. На что получил ответ, что мол спасибо, проблему нашли и исправили, в следующем билде будет нормально.
Но проблема остается.
Причем тот же самый тест в MT4:
Может здесь стоит отметиться с этим?
Может здесь стоит отметиться с этим?
Ничего себе особенность и тонкость!
Явный же бажище.Важная стандартная функция работы с массивами самого быстрого в мире языка алготрейдинга работает в 4 раза медленнее, чем на устаревшем языке MQL4.
Только здесь.
Представляете, как многие программы залетают, когда его исправят.
Ничего себе особенность и тонкость!
Явный же бажище.Важная стандартная функция работы с массивами самого быстрого в мире языка алготрейдинга работает в 4 раза медленнее, чем на устаревшем языке MQL4.
Только здесь.
Представляете, как многие программы залетают, когда его исправят.
Добро.
Но вот как особенность в данный момент - разве плохо?