Машинное обучение в трейдинге: теория, модели, практика и алготорговля - страница 3248

 
Maxim Dmitrievsky #:

сохраняется эталон паттерна, в тестере ищем корреляцию текущих значений с эталоном, открываем сделки по выбранной логике

Врубился, почему много samples. Если построить график корреляции на 1d-массиве, от получится нечто отдаленно похожее на это.


Выше верхней синей линии сверх-высокая корреляция. Видно, что она плавно на вершинках меняется.


Это значит, что в тестере увидели 0.9 - хорошо, открываемся. На следующем баре 0.91, затем 0.92, ...., 0.95, 0.94, ...., 0.9. Длина таких сверхвысоких подряд идущих значений тем больше, чем длиннее сам паттерн. Чисто математически.


Возможно, поэтому было наслоение большого количества сделок.

Форум по трейдингу, автоматическим торговым системам и тестированию торговых стратегий

Машинное обучение в трейдинге: теория, модели, практика и алготорговля

Maxim Dmitrievsky, 2023.09.21 15:07

бот открывает одновременно несколько сделок, если сигнал сохраняется, одним и тем же объемом, от этого кажется, что мартин


Поэтому, наверное, при майнинге имеет смысл учитывать в череде подряд идущих samples только первый.

 
fxsaber #:

Врубился, почему много samples. Если построить график корреляции на 1d-массиве, от получится нечто отдаленно похожее на это.


Выше верхней синей линии сверх-высокая корреляция. Видно, что она плавно на вершинках меняется.


Это значит, что в тестере увидели 0.9 - хорошо, открываемся. На следующем баре 0.91, затем 0.92, ...., 0.95, 0.94, ...., 0.9. Длина таких сверхвысоких подряд идущих значений тем больше, чем длиннее сам паттерн. Чисто математически.


Возможно, поэтому было наслоение большого количества сделок.


Поэтому, наверное, при майнинге имеет смысл учитывать в череде подряд идущих samples только первый.

Да, есть такое

 
Maxim Dmitrievsky #:

по статистике видно, допустим будущее 10 баров, вывожу все кривые каждого найденного экземпляра паттерна в будущем (типа прогноз)

Потом среднее по всем кривым

Типа этот паттерн на продажу, в среднем, и сколько пунктов видно

Нечто похожее видел здесь.

На скрине, похоже, только длина паттерна очень высокая, т.к. M1. На часовиках, наверное, покажет что-то интересное, раз нашли.


И эта проблема

наверное, при майнинге имеет смысл учитывать в череде подряд идущих samples только первый.

вроде, решается.

  • MinStep - условное задание шага (MinStep * Max(|KK|)), которое позволяет учитывать только лучшие из рядом-находящихся похожих участков по условию Limit.
Но там не майнинг (перебор), конечно. Хотя недалеко.
 
Maxim Dmitrievsky #:

Но я делаю в питоне и считаю корреляцию сразу для всех возможных пар, потом выбираю из этого.

Здесь самое главное - это скорость

На Питоне обязан быть аналог этого. Тогда должно быть быстро.

Кроссплатформенная библиотека оригинальных математических функций
Кроссплатформенная библиотека оригинальных математических функций
  • www.mql5.com
Подсмотренные из разных мест оригинальные математические функции, которые либо не имеют аналогов, либо выполняют свою работу значительно быстрее, чем альтернативные реализации
 
fxsaber #:

Нечто похоже видел здесь.

На скрине, похоже, только длина паттерна очень высокая, т.к. M1. На часовиках, наверное, покажет что-то интересное, раз нашли.


И эта проблема

вроде, решается.

Но там не майнинг (перебор), конечно. Хотя недалеко.

)) тоже видел

Изначально интересовало, как можно искать паттерны в многомерных массивах без МО. Пока не придумал ничего лучше, чем запихнуть все измерения в одно и посчитать через корреляцию (типа быстро). Наверное иногда значения нужно нормализовать, чтобы сильно разными не были.

 
fxsaber #:

На Питоне обязан быть аналог этого. Тогда должно быть быстро.

Есть, но при росте числа признаков (индикаторов) все равно не очень быстро.

 

В 3980 реализовали методы Conjugate для типов complex, vector<complex> и matrix<complex>. Они выполняют сопряжение для комплексных чисел.

Еще добавили обработку выхода ONNX-модели типа Sequence of maps. Функциональность ONNX Runtime серьезно повысилась.

Новая версия платформы MetaTrader 5 build 3980: Улучшения и исправления
Новая версия платформы MetaTrader 5 build 3980: Улучшения и исправления
  • 2023.09.21
  • www.mql5.com
В четверг 21 сентября 2023 года будет выпущена обновленная версия MetaTrader 5. В ней мы внесли ряд исправлений и улучшений в работу платформы...
 
Maxim Dmitrievsky #:

Есть, но при росте числа признаков (индикаторов) все равно не очень быстро.

Уже не помню, но сложность алгоритма точно меньше O(N^2). Думаю, не выше O(N*log). Поэтому не совсем понятно заметное замедление при росте признаков.

Там еще палка о двух концах: больше признаков, меньше samples - ниже стат. значимость.

 
Maxim Dmitrievsky #:

Наверное иногда значения нужно нормализовать, чтобы сильно разными не были.

Там каша может выходить без нормализации.

Форум по трейдингу, автоматическим торговым системам и тестированию торговых стратегий

Машинное обучение в трейдинге: теория, модели, практика и алготорговля

fxsaber, 2023.09.21 16:19

Тогда надо индикаторы приводить к каким-то единым попугаям. Даже если индикатором служит приращение на разных интервалах, иначе странная корреляция выйдет.

Если нестандартные returns, а такие,

то совсем непонятно, что показывает корреляция без нормализации. А вдруг... этот пропущенный, вроде, логичный шаг и приводит к хорошему результату...

 
fxsaber #:

Уже не помню, но сложность алгоритма точно меньше O(N^2). Думаю, не выше O(N*log). Поэтому не совсем понятно заметное замедление при росте признаков.

Там еще палка о двух концах: больше признаков, меньше samples - ниже стат. значимость.

Ну я же еще все возможные пары считаю сразу. Еще много всяких входных данных хочется попробовать. Да нормально. Просто в STUMPY есть возможность приблизительно считать, а потом уточнять. Получается заметное ускорение, плюс распарралеливание и на GPU. Наверное на тот пакет перейду полностью.

Причина обращения: