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

 
mytarmailS:

специально для вас, только с одной надеждой что будете р-ку учить)

там сразу две функции

и

первая создает дата сет из индикаторов, вторая целевую из зигзаг

все что вам надо это загрузить данные с ценой закрытия в 10к и записать ее в переменную clos

и получите свой umap с целевой


https://github.com/jlmelville/uwot

Очень приятно, спасибо!

Побольше бы комментариев :)

Вопрос тут в том, как синхронизировать предикторы из файла с полученной целевой?

 
Aleksey Vyazmikin:

Очень приятно, спасибо!

Побольше бы комментариев :)

Вопрос тут в том, как синхронизировать предикторы из файла с полученной целевой?

ну поскольку целевая строиться по цене то она уже синхронизирована, а если предикторы по той же сцене строятся то они значит тоже)

или я не понял вопрос  


Я постарался переменные называть так чтобы понятно было без коментариев

 

Вопрос от нуба.


Есть три переменные A, B, C. Из них составлено руками какое-то условие. Например.

(A > B) && (A - B < C) && (A + 3 * C > 2 * B)


Хочется это условие воспроизвести автоматом. Находить его не надо, т.к. я его уже знаю. Но нужно иметь например десяток каких-то весовых коэффициентов, определенная комбинация которых в состоянии с высокой вероятностью попадать в это условие, когда туда (полином это или НС - не знаю, т.к. ноль) подставляя A, B, C, получается выполнение оригинального условия.


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

 

Итак, как получилось обучить деревья по кластерам, рассказываю и показываю.

Получилась такая модель для распознания классов

На истории достаточно точная Accuracy 0.9196756 - т.е. логика кластера вполне воспроизводится.

Дальше обучил для каждого кластера по модели

Кластер 1

Кластер 2

Кластер 3

Кластер 4

У всех кластеров Accuracy 0.53 примерно.

А вот так выглядит модель без разбиения на кластеры

Accuracy 0.5293815 - примерно как и у кластеров.

Если сравнивать модели для кластеров и одну модель дерева со всей выборкой, то видно, что в у деревьев кластеров больше листьев с обобщенной информацией выборки с целевыми 1 и -1, что теоретически хорошо.

Посмотрим, что показывают тесты - в начале посмотрим на периоде обучения

Модель без разбиения на кластеры:

Модель с разбиением на кластеры:

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

А теперь посмотрим на выборку вне обучения.

И вот наши кластеры:

И модель без кластеров:

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

Решил посмотреть листья с кластерных моделей по отдельности, если бы не было кластера, на гистограмме по убыванию:


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

 
mytarmailS:

ну поскольку целевая строиться по цене то она уже синхронизирована, а если предикторы по той же сцене строятся то они значит тоже)

или я не понял вопрос  


Я постарался переменные называть так чтобы понятно было без коментариев

Как взять свой дата сет с предикторами и ценой закрытия и загрузить, указав колонку с ценой закрытия, а не использовать вариант генерации индикаторов в R?

Как я понимаю, раз целевая - вершки ZZ, то часть выборки с предикторами должна отфильтроваться, вот, а значит для подачи предикторов надо так же отфильтровать таблицу с предикторами, или как?

[Удален]  
fxsaber:

Вопрос от нуба.


Есть три переменные A, B, C. Из них составлено руками какое-то условие. Например.


Хочется это условие воспроизвести автоматом. Находить его не надо, т.к. я его уже знаю. Но нужно иметь например десяток каких-то весовых коэффициентов, определенная комбинация которых в состоянии с высокой вероятностью попадать в это условие, когда туда (полином это или НС - не знаю, т.к. ноль) подставляя A, B, C, получается выполнение оригинального условия.


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

как вариант

(A > B) && (A - B < C) && (A + 3 * C > 2 * B)

На вход НС - значения A,B,C n раз (допустим, 1000), на выход ответы вашей формулы для этих значений в виде 0;1. Попробовать. И посмотреть ошибку классификации, насколько хорошо модель воспроизводит условие.

если надо именно посмотреть какой вид и интерпретировать, то через деревья

Вариант 2 (если первый плохо сработал) - A, B, A-B, C, A+3*C, 2B - переменные, все то же самое как в первом варианте загнать в дерево. И можно посмотреть его структуру как у Алексея на картинках выше
 
fxsaber:

Есть три переменные A, B, C. Из них составлено руками какое-то условие.

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

Если условие известно, то подобрать значения А, Б и Ц, при которых оно выполняется, может тупой ГА.

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

[Удален]  

вариант 3 - через логистическую регрессию + генератор полиномиальных фичей. Тогда на выходе будет довольно короткая и легко интерпретируемая формула, подобная вашей

но я не шпрехаю в чем смысл воспроизводить условие через МО

 
Maxim Dmitrievsky:

вариант 3 - через логистическую регрессию + генератор полиномиальных фичей. Тогда на выходе будет довольно короткая и легко интерпретируемая формула, подобная вашей

но я не шпрехаю в чем смысл воспроизводить условие через МО

тогда уж "не ферштею")))

впрочем, я тоже.

 
fxsaber:

Вопрос от нуба.

Есть три переменные A, B, C. Из них составлено руками какое-то условие. Например.

Хочется это условие воспроизвести автоматом. Находить его не надо, т.к. я его уже знаю. Но нужно иметь например десяток каких-то весовых коэффициентов, определенная комбинация которых в состоянии с высокой вероятностью попадать в это условие, когда туда (полином это или НС - не знаю, т.к. ноль) подставляя A, B, C, получается выполнение оригинального условия.

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

Сетка с 1 скрытым нейроном способна научиться пересечению ма100 с ценой.

Это ее параметры, всего 103 штуки, на вход подаются приращения последних 100 баров. Нейрон с активацией tanh это функция tanh(x*W+b), по сути в скобках линейная регрессия, x - вход нейрона, W - матрица весов, b - смещение. В скрытом нейроне: W из 100 элементов, b из 1. И в выходном: W - 1 элемент, b - 1 элемент.

"Другой тестовый пример, пересечение ма и цены."

https://www.mql5.com/ru/forum/86386/page1879#comment_17365998