Всем добрый день!
Занимаюсь машинным обучением, нейронными сетями.Очень хорошо пошло прогнозирование по SP_500 по часовикам.
Есть желающие поучаствовать в работе с датасетом и улучшении модели? Слишком широк выбор вариантов дальнейшего развития модели
попробуй обучить нейросеть на лукойле… вот тогда может и будет толк
ну и на часовиках тестить нельзя
более того… надо внимательно смотреть сами свечи… на америке в свечи зачастую включена предторговая и послеторговая сессия… т.е надо чтобы свечи были строго с 9.30 до 16.00
на дневках вообще тестить нельзя совсем… т.к многие бумаги торгуются вне времени торгов, и эти цены включают в дневки...
более того… надо смотреть среднюю сделку… в %… бывает профит есть по тестам, но профит не отбивается никак комисами
По коммиссионным согласен, надо в итоге считать. Но это уже последняя стадия, натренируем эту сетку, будем тренировать другую — для поиска оптимального момента и определения стратегии поведения с учетом коммисионных
тебе надо сесть и крепко подумать… как переставить телегу и лошадь
ну как бы предствь что нейросеть учится не торгового бота делать, а дом… и сразу поймешь недостаток своего подхода
Что необходимо сделать и в какие сроки?
Последний столбец 'class' — и есть таргет, изменение SP&500 по часам. Это целевой показатель, уже сдвинутый назад на час. Это и является прогнозируемым показателем, разница High последующего часа минус (High+Low)/2 текущего часа. Пока что у меня loss='mean_squared_error' получается около 16.
А вот High — он один для целого часа. Это существенная характеристика временного промежутка. И он легче, намного легче поддается прогнозированию
Как отторговать? Допустим, в 20.59.59 вы знаете, что High в следующем часе будет выше на 0,5%. Мы просто покупаем сейчас и дожидаемся в следующем часе этих 0,5% для продажи
А как вы перед этим купили по (High+Low)/2? А если он не вырос на 0,5% — что вы будете делать? При вашем подходе ошибка прогноза ничего не говорит о реальном результате ваших сделок.
Если же вы прогнозируете close следующего часа относительно close текущего часа, понятно как продавать и покупать по ценам близким к ним и ошибка прогноза будет близко к жизни показывать насколько вы будете ошибаться при совершении этих сделок.
То есть если у вас получится хорошо натренировать сеть, то вы сможете прогнозировать изменение SP&500 в течение ближайшего часа. Потом уже можно заняться датасетом по нижней границе LOW.
Предполагается, что вы разбираетесь в способах машинного обучения. Это не только нейросети, там куча всего — xgboost, рандом-форрест и т.п.
Не забывайте про валидацию. Я на валидацию ставил последние 3000 сэмплов, это где-то 2 года наблюдений. Таким образом обеспечиваете имитацию испытания модели в реале
https://ru.wikipedia.org/wiki/%D0%A1%D0%BB%D1%83%D1%87%D0%B0%D0%B9%D0%BD%D1%8B%D0%B9_%D0%BF%D1%80%D0%BE%D1%86%D0%B5%D1%81%D1%81
Цитата: «Случайная функция называется стационарной в широком смысле, если её математическое ожидание и дисперсия постоянны, а АКФ зависит только от разности моментов времени, для которых взяты ординаты случайной функции. Понятие ввёл А. Я. Хинчин.».
Поэтому рано или поздно, но Вы сольете :-)
На самом деле машинное обучение и вообще нейросети в трейдинге применяются, но они обучаются анализировать совершенно иные параметры, в число которых цена не входит в принципе.
можете взять целевой столбец. он имеет нормальное распределение, типичный колокол. с вполне четким матожиданием и дисперсией
Вот 15 минутки сургутка CNN тупо решение в лоб. По цене закрытия. Если уж и брать, что-то другое, кроме закрытия, то простое среднее min max цены как то математически не очень красиво, должно быть что-то посложнее, ИМХО. Насчет часовиков и дневок согласен, дневки лучше, но где ж их столько взять. Поведение цены меняется с годами, старые данные не пойдут.
А у вас что за сеть? LSTM?
И какую вы помощь по датасету ждете от народа? Я его вообще никак не обрабатывал, ну кроме как к 0-1 привел.