Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Как решается данная задача через DTW (пример):
Итого выполнили 50 000 000 сравнений по DTW алгоритму, который имеет сложность O(N^2). Т.е. очень грубо совершили 5 * 10^11 (500 миллиардов) элементарных вычислительных операций.
Теперь пришел новый бар - сделали еще раз 500 млрд вычислений.
Решили прогнать на истории, начиная с 200 000 крайнего элемента. Грубо, для прогона нужно совершить 200 000 раз по 500 млрд каждый вычислений. Итого 10^17 вычислений.
Даже если будет хитрая оптимизация, то она не даст выигрыша больше, чем на два порядка. Т.е. в лучшем случае надо будет совершить каких-то 10^15 вычислений.
Как решается данная задача через DTW (пример):
если не сложно то покажите в коде решение этой задачи, тут уже не сколько практический, а скорее спортивный интерес
Никто в здравом уме не возьмется за реализацию алгоритма, результат работы которого будет просто не дождаться.
Тот же КК Пирсона также не подходил бы, как и DTW, т.к. его вычислительная сложность тоже O(N^2). Но есть значительная алгоритмическая оптимизация вычислений КК Пирсона со сложностью O(N * log(N)), которая может позволить решить данную задачу за приемлемое время. Реализацию этого алгоритма выложил в Codebase. Для решения поднятой задачи осталось этот же алгоритм применить к множеству преобразованных ЗигЗагом цВР.
Никто в здравом уме не возьмется за реализацию алгоритма, результат работы которого будет просто не дождаться.
Тот же КК Пирсона также не подходил бы, как и DTW, т.к. его вычислительная сложность тоже O(N^2). Но есть значительная алгоритмическая оптимизация вычислений КК Пирсона со сложностью O(N * log(N)), которая может позволить решить данную задачу за приемлемое время. Реализацию этого алгоритма выложил в Codebase. Для решения поднятой задачи осталось этот же алгоритм применить к множеству преобразованных ЗигЗагом цВР.
Вы бы почитали для начала задачу которая стоит перед автором темы и его ответы.
Пробовал его. Тоже не понятно как им пользоваться. На выходе должен быть или путь трансформации или трансформированные данные.
На выходе алгоритма мы получили "матрицу накопленных расстояний" - "accumulated cost matrix" (а не просто локальную матрицу расстояний, которая на рисунке), при этом метод вернул нам значение правой нижней ячейки (по построению оно максимальное во всей матрице). Чтобы теперь найти путь, надо просто двигаться от ячейки (n,m) в сторону ячейки (1,1), выбирая каждый раз вариант с наименьшим значением:
ОК, спасибо, довольно доходчиво разъяснили, еще вопросик: нормализовать или приводить к одному порядку данные есть необходимость, на результат влияет?