Наша модель прогнозирует цену закрытия индекса МосБиржи на текущий день, основываясь на данных, известных при открытии биржи и статей с новостных источников. Это может быть полезно проп-трейдерам/equity-тредерам:
- Так как динамика индекса МосБиржи показывает динамику всего Российского фондового рынка, на основании поведения индекса можно сделать предположение о поведении акций - основных компонентов индекса (Лукойл/Газпром/Сбер и т. д.).
- Есть фонды, составы портфелей которых реплицируют индекс МосБиржи (практически 1:1). Соответственно, зная утром, где будет цена, вечером можно открыть короткие/длинные позиции для заработка на изменении значения индекса.
Для бейзлайна и грамотного построения признакового пространства сначала анализировался сам временной ряд.
Затем строилась модель Тейла-Вейджа, которая использовалась для сравнения качества прогнозирования.Наше признаковое пространство состоит из следующих компонент:
- данные предыдущего дня (close, divisor, capitalization);
- временные данные (день, месяц, день недели);
- новости (политика, финансы, экономика).
Каждый день должен характеризоваться «состоянием мира» на данный момент: то есть, мы должны иметь вектор, агрегирующий информацию о новостях сегодняшего дня и всех предыдущих (он также должен легко обновляться при появлении новой статьи). Поэтому мы:
- Получили векторное представление всех статей с помощью BERT
- С помощью PCA понизили размерность этих представлений.
- Каждый день представили средним арифметическим получившихся на шаге 2 представлений.
- Для каждого дня получили его представление с учетом предыдущей истории с помощью скользящего среднего:
$h_t = \alpha * h_{t-1} + (1 - \alpha) * v_t$
Здесь$v_t$ - представление текущего дня на шаге 3;$\alpha$ - гиперпараметр.
Признавое описание объектов затем подается CatBoostRegressor.
Модель хорошо уловила тенденцию цены индекса:
Минималистичный интерфейс позволяет по введенным данным предсказать цену закрытия: