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

 
Dr.Trader:

как это сделать стандартно не знаю, но вот так например с библиотекой:


Спасибо огромное!!! Вы очень хорошо разбираетесь в пакетах, мне на тот же вопрос на спец. форуме  предложили наново писать класс format()  , и показали пример с ~ 300 строчек кода, я уже начал думать про костыли всякие, а тут отличное решение.. спасибо!

 

еще один вопрос - есть у меня три датафрейма немного разной длинны потому что наблюдения велись начиная с разного времени,

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

> head(sec1)
        date  time   open   high    low  close vol
1 2016.09.06 08:45 3081.5 3082.5 3080.5 3080.5   6
2 2016.09.06 08:50 3081.5 3081.5 3079.5 3080.5   6
3 2016.09.06 08:55 3081.5 3082.5 3081.5 3082.5  19
4 2016.09.06 09:00 3083.5 3083.5 3081.5 3082.5  19
5 2016.09.06 09:05 3083.5 3085.5 3082.5 3085.5   8
6 2016.09.06 09:10 3086.5 3086.5 3084.5 3086.5  15
> head(sec2)
        date  time  open  high   low close vol
1 2016.09.13 13:00 95.34 95.40 95.33 95.39  36
2 2016.09.13 13:05 95.40 95.43 95.39 95.41  40
3 2016.09.13 13:10 95.42 95.44 95.40 95.42  37
4 2016.09.13 13:15 95.41 95.42 95.39 95.39  25
5 2016.09.13 13:20 95.40 95.41 95.38 95.38  21
6 2016.09.13 13:25 95.39 95.42 95.38 95.42  32
> head(sec3)
        date  time    open    high     low   close vol
1 2016.09.14 18:10 1.12433 1.12456 1.12431 1.12450 137
2 2016.09.14 18:15 1.12444 1.12459 1.12424 1.12455 139
3 2016.09.14 18:20 1.12454 1.12477 1.12446 1.12469 148
4 2016.09.14 18:25 1.12468 1.12474 1.12442 1.12453 120
5 2016.09.14 18:30 1.12452 1.12483 1.12442 1.12482 156
6 2016.09.14 18:35 1.12481 1.12499 1.12472 1.12474 126
 
https://www.mql5.com/en/blogs/post/650079

Интересно. Улучшение существующей стратегии машинным обучением. Статья страдает от отсутствия информации про оьложенную выборку, но идея интересная.
 
mytarmailS:

еще один вопрос - есть у меня три датафрейма немного разной длинны потому что наблюдения велись начиная с разного времени,

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

в лоб будет так:

 


a <- data.frame(c1 = c('a','b','c','d','e','f'), c2 = c(1,2,3,4,5,6))

b <- data.frame(c1 = c('a','b','c','d','e'), c2 = c(1,2,3,4,5))

c <- data.frame(c1 = c('b','c','d','e','f'), c2 = c(2,3,4,5,6))


a$concat <- do.call(paste0, a[1:2])

b$concat <- do.call(paste0, b[1:2])

c$concat <- do.call(paste0, c[1:2])


concat_vec <- append(unique(a$concat)

    , c(unique(b$concat)

    , unique(c$concat)))

concat_vec_tbl <- as.data.frame(table(concat_vec))

concat_vec_tbl <- concat_vec_tbl[concat_vec_tbl$Freq == 3, ]



a <- a[a$concat %in% concat_vec_tbl$concat_vec, ]

b <- b[b$concat %in% concat_vec_tbl$concat_vec, ]

c <- c[c$concat %in% concat_vec_tbl$concat_vec, ]

 
Alexey Burnakov:
https://www.mql5.com/en/blogs/post/650079

Интересно. Улучшение существующей стратегии машинным обучением. Статья страдает от отсутствия информации про оьложенную выборку, но идея интересная.
Хорошая статья, я тоже в последнее время экспериментирую с  "СММ" но в более обычном виде
 
Alexey Burnakov:

в лоб будет так:

спасибо
 
Alexey Burnakov:
https://www.mql5.com/en/blogs/post/650079

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

Алексей!

Вот какой Вы интересный человек!

Я тут сто раз писал, что использую rf для улучшения показателей реальной ТС на индикаторах, а Вы не реагировали.

Более того я несколько раз высказывал мысль, что:

1. Берем реальную ТС

2. Выделяем проблемы ТС и начинаем из решать решать инструментами R 

 

В упомянутом мною случае я помощью rf я решал проблему отставания индикатора, который обычно дает сведения по бару 1 (-1), а rf дает сведения на бар вперед. Для Н4 это 8 часов! Как результат удалось существенно уменьшить просадку.

 
Alexey Burnakov:
https://www.mql5.com/en/blogs/post/650079

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

Идея этой статьи реализована немного иначе в статье https://www.mql5.com/ru/articles/1628.

Мне интересно все ли читают статьи о машинном обучение на этом сайте с годовой задержкой?(вопрос риторический)

Удачи 

Глубокая нейросеть со Stacked RBM. Самообучение, самоконтроль
Глубокая нейросеть со Stacked RBM. Самообучение, самоконтроль
  • 2016.03.31
  • //www.mql5.com/ru/users/vlad1949">
  • www.mql5.com
Статья является продолжением предыдущих статей по глубоким нейросетям и выбору предикторов. В ней мы рассмотрим особенность нейросети, инициируемой Stacked RBM, а также её реализации в пакете "darch".
 
СанСаныч Фоменко:

Алексей!

Вот какой Вы интересный человек!

Я тут сто раз писал, что использую rf для улучшения показателей реальной ТС на индикаторах, а Вы не реагировали.

Более того я несколько раз высказывал мысль, что:

1. Берем реальную ТС

2. Выделяем проблемы ТС и начинаем из решать решать инструментами R 

 

В упомянутом мною случае я помощью rf я решал проблему отставания индикатора, который обычно дает сведения по бару 1 (-1), а rf дает сведения на бар вперед. Для Н4 это 8 часов! Как результат удалось существенно уменьшить просадку.

Я понимаю. Просто без конкретики сложно оценить Глубину мысли. А в той статье картинки были. У Перервенко тоже похоже. И я его статью тоже читал.
 
Alexey Burnakov:
Я понимаю. Просто без конкретики сложно оценить Глубину мысли. А в той статье картинки были. У Перервенко тоже похоже. И я его статью тоже читал.

Ну, вот обиделся...

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

Пока имеем разрозненные куски.

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

Внимательнейшим образом слежу за работами Vladimir Perervenko. Ни разу не видел доказательств того, что модели не переобучены. Последняя ссылка. Определяется важность переменных по алгоритму одного из вариантов деревьев. Но деревья из-за удобства имеющихся шумовых величин стремятся чаще использовать чаще эти шумовые предикторы и как результат шум всплывает в оценке важности...

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

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

Как-то так. 

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