Шаблон соответствия для подсвечника / OHL C Данные в Python - PullRequest
0 голосов
/ 10 января 2020

Я работаю над приложением в Python, которое позволит пользователю выбрать группу свечей и сопоставить их с аналогичными шаблонами, найденными во всей базе данных свечей.

Я следовал 2-му учебнику в эта ссылка и фактически могла сделать что-то похожее на то, что я хочу сделать с подбором шаблонов.

https://opencv-python-tutroals.readthedocs.io/en/latest/py_tutorials/py_imgproc/py_template_matching/py_template_matching.html

Template enter image description here

Изображение для поиска enter image description here

Соответствующий результат enter image description here

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

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

Есть ли что-то похожее на сопоставление с шаблоном изображения, которое я могу использовать для поиска свечных моделей, похожих на заданное подмножество?

Например. «Посмотрите на последние 5 свечей в базе данных, затем посмотрите на всю базу данных и найдите похожие шаблоны вместе со сходством%»

Я читаю базы данных в словари так:

candle_dictionary = {
"opens": [123, 121, 122, 103],
"highs": [126, 131, 122, 133],
"lows": [143, 71, 92, 100],
"closes": [173, 124, 128, 123]
}

Таким образом, значение закрытия самой новой свечи в базе данных будет candle_dictionary["closes"][0], что будет 173.

1 Ответ

1 голос
/ 06 февраля 2020

супер простой короткий ответ:

Возьмите последние N значений и сделайте их вектором с N записями. Используйте pyflann для создания базы данных и поиска по ней.

Короткий, но все еще простой ответ :

Возьмите N последних свечей и вычислите возврат журнала между последовательными. Logret = log (c [t] / c [t-1 ]). Постройте гистограмму из них с K мусорными ведрами. Используйте его как K-мерный вектор.

Advanced : посмотрите на этот репозиторий и статьи, на которые ссылается автор. https://github.com/patrickzib/SFA

...