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

 
Maxim Dmitrievsky:

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

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

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

 
Maxim Dmitrievsky:

З.Ы. возвращаюсь к тому, что давно хотел сделать - МО + стох 

http://www.turingfinance.com/random-walks-down-wall-street-stochastic-processes-in-python/

Тема интересная - особенно модель Мертона со скачками или какие-то её вариации.Кажется, в отличии от обычной диффузии она не сводится (дискретизацией по времени) к авторегрессии, или же это делается как-то нетривиально. Возможно, расчёты в скользящем окне для портфеля окажутся совсем неподъёмными.

 

Случайный лес - это подгонка под историю без возможности корректировки. Я еще год назад выжал из СЛ все варианты.

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

Pytorch = TensorFlow 1.x + Keras + Numpy = TensorFlow 2.0

 
Roffild:

Pytorch = TensorFlow 1.x + Keras + Numpy = TensorFlow 2.0

а конфигурация сеток какая понравилась? там же конструктор

 

Конструктор - это круто!

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

Если на входе уже нормализованные данные, то "функции активации" между слоями нафиг не нужны. В том же Alglib от "функции активации" не избавиться. 

У меня есть целая система контроля изменений ввиде Jenkins + MLFlow для перебора вариантов и хранения результатов.

Сейчас конфигурация такая:

Sequential(
  (input): Linear(in_features=2836, out_features=1000, bias=True)
  (hidden1): Linear(in_features=1000, out_features=100, bias=True)
  (hidden2): Linear(in_features=100, out_features=2, bias=True)
  (output_activ): Softmax()
)

Конечно, не сразу понял как обучать сеть на видеокарте за счет задержек на передачу данных. Сейчас у меня код оптимизирован и обучается в 100 раз быстрее от изначального варианта за счет сокращения количества закачек данных на видеокарту.

 
Roffild:

Конструктор - это круто!

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

Если на входе уже нормализованные данные, то "функции активации" между слоями нафиг не нужны. В том же Alglib от "функции активации" не избавиться. 

У меня есть целая система контроля изменений ввиде Jenkins + MLFlow для перебора вариантов и хранения результатов.

Сейчас конфигурация такая:

Конечно, не сразу понял как обучать сеть на видеокарте за счет задержек на передачу данных. Сейчас у меня код оптимизирован и обучается в 100 раз быстрее от изначального варианта за счет сокращения количества закачек данных на видеокарту.

а как же рекуррентный слой? lstm или gru

 
Roffild:

Конструктор - это круто!

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

Если на входе уже нормализованные данные, то "функции активации" между слоями нафиг не нужны. В том же Alglib от "функции активации" не избавиться. 

У меня есть целая система контроля изменений ввиде Jenkins + MLFlow для перебора вариантов и хранения результатов.

Сейчас конфигурация такая:

Конечно, не сразу понял как обучать сеть на видеокарте за счет задержек на передачу данных. Сейчас у меня код оптимизирован и обучается в 100 раз быстрее от изначального варианта за счет сокращения количества закачек данных на видеокарту.

Cкорость это круто, но вторично.
На форварде ваша НС успешно предсказывает? Если да, то интересно посмотреть сигнал или хотябы результаты тестера с форвардом.
 
Maxim Dmitrievsky:

а как же рекуррентный слой? lstm или gru

Может и добавлю, но сейчас хочу полностью протестировать свой вариант. Для изменения структуры сети мне достаточно 1 строку добавить в код.  У нас не перевод текста, а распознавание исторического события.

https://pytorch.org/docs/stable/nn.html - выбирай любой понравившийся слой и добавляй в одну строку.

torch.nn¶
  • pytorch.org
class ¶ A kind of Tensor that is to be considered a module parameter. Parameters are subclasses, that have a very special property when used with s - when they’re assigned as Module attributes they are automatically added to the list of its parameters, and will appear e.g. in iterator. Assigning a Tensor doesn’t have such effect. This is...
 
Roffild:

Случайный лес - это подгонка под историю без возможности корректировки. Я еще год назад выжал из СЛ все варианты.

Градиентный бустинг вроде, как до обучается из предыдущих ошибок.

Roffild:

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

Каким макаром классифицировать, по наклону(вверх или вниз), что ли?


Еще хотел спросить про MLP, что в скикит-лерн. Он очень долго считается и результат не особо впечатляет, стоит ли на нем заморачиваться?

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

 
Всем привет. Впервые решил воспользоватся сервисом фриланс. Хочу окончательно перейти на Forts. Посмотрим как там умельци справятся с моими задачама. Что до метода опорных векторов. Да он тяжеловат в расчете, но в текущих реалиях жалеть машиночасы не стоит, если Вы не находитесь в поиске, а уже нашли. :-)
Причина обращения: