в OnTesterDeinit() готовим массив трейдов по оптимизациям и отправляем OpenCL-программу для расчета всех параметров, которые можно получить с помощью TesterStatistics
запись результатов в файл и сравнение эталоном, не забываем добавить параметры прохода из ParameterGetRange
Цель статьи:
показать самостоятельный расчет торговой статистики в MQL5
показать как этот кодпереносится в OpenCL и объяснить что и зачем при этом делается.
Без OpenCL расчет статы по double-массиву был в какой-то статье. Передача массива с Агента на Терминал - аналогично.
Мутить имеет смысл в другом направлении. Из кучи проходов Оптимизатора составить идеальный портфель из этих проходов. Тут и OpenCL может помочь, т.к. это мат. задача.
fxsaber: Мутить имеет смысл в другом направлении. Из кучи проходов Оптимизатора составить идеальный портфель из этих проходов. Тут и OpenCL может помочь, т.к. это мат. задача.
OpenCL позволяет проводить одноборазные вычисления на различающимися потоками входных данных. То есть выполнять распределенные вычисления по одному алгоритму
OpenCL позволяет проводить одноборазные вычисления на различающимися потоками входных данных. То есть выполнять распределенные вычисления по одному алгоритму
Вот поэтому и нужен OpenCL для вычисления портфеля. Это не детская задача, как вычисление статы.
При вычислении статы через передачу с Агентов не будет никаких параллельных расчетов.
Я же писал
в OnTesterDeinit()
готовим массив трейдов по (оптимизациям - описка) проходам и отправляем в OpenCL-программу
для расчета всех параметров, которые можно получить с помощью TesterStatistics
В случае же портфеля, нужно написать такую функцию
Она супер-параллелится. И имеет огромное практическое применение в трейдинге!
Можно и эту задачу решить. Только наложить ограничение на количество стратегий в портфеле. На эту тему можно было бы отдельную статью написать - "Cравнение Математических вычислений в тестере с Выполением расчетов в OpenCL". Дать готовое решение для трейдеров в виде MQL5-программы
Ну это высосанная из пальца задача. Для расчета статы не нужно дожидаться окончания тестирования, иначе можно столкнуться с оболом в виде нештатного закрытия Терминала. Более того, зачем что-то выжидать, когда можно тут же посчитать, как пришел очередной проход? Как целесообразность использовать OpenCL на задачах, которые не дадут никакого ускорения по сравнению с MQL5-кодом? В учебных целях - сомнительно. Потому что не видно преимуществ OpenCL. Ради самой технологии - для гиков.
Нужна практическая в трейдинге тяжелая мат. задача, где OpenCL способен показать космос. Такую задачу озвучил.
Для авторизации и пользования сайтом MQL5.com необходимо разрешить использование файлов Сookie.
Пожалуйста, включите в вашем браузере данную настройку, иначе вы не сможете авторизоваться.
Вы вошли в аккаунт. Двухфакторная аутентификация отключена. Настройте её заново и отсканируйте новый QR-код или продолжите с отключённой двухфакторной аутентификацией.
Вот еще идея для статьи - связка функций из раздела Работа с результатами оптимизации с вычислениями в OpenCL:
TesterStatistics
Цель статьи:
Пример получения данных во время оптимизации можно найти в статье Визуализируй стратегию в тестере MetaTrader 5
Без OpenCL расчет статы по double-массиву был в какой-то статье. Передача массива с Агента на Терминал - аналогично.
Мутить имеет смысл в другом направлении. Из кучи проходов Оптимизатора составить идеальный портфель из этих проходов. Тут и OpenCL может помочь, т.к. это мат. задача.Мутить имеет смысл в другом направлении. Из кучи проходов Оптимизатора составить идеальный портфель из этих проходов. Тут и OpenCL может помочь, т.к. это мат. задача.
OpenCL позволяет проводить одноборазные вычисления на различающимися потоками входных данных. То есть выполнять распределенные вычисления по одному алгоритму
OpenCL позволяет проводить одноборазные вычисления на различающимися потоками входных данных. То есть выполнять распределенные вычисления по одному алгоритму
Вот поэтому и нужен OpenCL для вычисления портфеля. Это не детская задача, как вычисление статы.
Вот поэтому и нужен OpenCL для вычисления портфеля.
Вы не поняли
Это не детская задача, как вычисление статы.
Как раз на примере понятной задачи можно объяснить как использовать OpenCL для параллельных расчетов.
Как раз на примере понятной задачи можно объяснить как использовать OpenCL для параллельных расчетов.
При вычислении статы через передачу с Агентов не будет никаких параллельных расчетов.
В случае же портфеля, нужно написать такую функцию
Она супер-параллелится. И имеет огромное практическое применение в трейдинге!
При вычислении статы через передачу с Агентов не будет никаких параллельных расчетов.
Я же писал
TesterStatistics
В случае же портфеля, нужно написать такую функцию
Она супер-параллелится. И имеет огромное практическое применение в трейдинге!
Можно и эту задачу решить. Только наложить ограничение на количество стратегий в портфеле. На эту тему можно было бы отдельную статью написать - "Cравнение Математических вычислений в тестере с Выполением расчетов в OpenCL". Дать готовое решение для трейдеров в виде MQL5-программы
Я же писал
Ну это высосанная из пальца задача. Для расчета статы не нужно дожидаться окончания тестирования, иначе можно столкнуться с оболом в виде нештатного закрытия Терминала. Более того, зачем что-то выжидать, когда можно тут же посчитать, как пришел очередной проход? Как целесообразность использовать OpenCL на задачах, которые не дадут никакого ускорения по сравнению с MQL5-кодом? В учебных целях - сомнительно. Потому что не видно преимуществ OpenCL. Ради самой технологии - для гиков.
Нужна практическая в трейдинге тяжелая мат. задача, где OpenCL способен показать космос. Такую задачу озвучил.