CAD: многопериодная стратегия управления портфелем на основе кластеризации и глубокого обучения с подкреплением
Zhengyong Jiang, Jeyan Thiayagalingam, Jionglong Su, Jinjun Liang
Xi'an Jiaotong-Liverpool University, Suzhou, China · University of Liverpool · Neusoft Corporation, Shenyang · STFC, Harwell Campus, Oxford, UK · 3 октября 2023
Оригинал: Jiang, Z., Thiayagalingam, J., Su, J. and Liang, J. «CAD: Clustering And Deep Reinforcement Learning Based Multi-Period Portfolio Management Strategy», v1 — arxiv.org/abs/2310.01319 (PDF).
Рис. 1–7 воспроизведены из оригинальной публикации. Списки тикеров SSE/NASDAQ, детали алгоритмов и технические доказательства — в приложении PDF.
Ключевые слова: portfolio management, reinforcement learning, Asynchronous Advantage Actor-Critic, Deep Deterministic Policy Gradient, DBSCAN clustering.
Классификация arXiv: q-fin.PM
Аннотация
В этой работе представлена новая торговая стратегия, объединяющая методы обучения с подкреплением и кластеризации для управления портфелем в многопериодной торговле. Сначала метод кластеризации распределяет акции по группам на основе финансовых индикаторов. Затем алгоритм Asynchronous Advantage Actor-Critic (A3C) определяет торговые действия для акций внутри каждого кластера. Наконец, алгоритм Deep Deterministic Policy Gradient (DDPG) формирует вектор весов портфеля, который задаёт, сколько акций покупать, продавать или удерживать согласно торговым действиям разных кластеров. Насколько нам известно, наш подход — первый, сочетающий кластеризацию и RL для управления портфелем в многопериодной постановке.
Предложенная стратегия оценивается серией бэктестов на четырёх датасетах, всего 800 акций с Shanghai Stock Exchange (SSE) и NASDAQ. Результаты показывают превосходство над классическими методами управления портфелем — Robust Median Reversion (RMR), Passive Aggressive Median Reversion (PAMR) и рядом ML-методов — по различным метрикам. В бэктестах средняя доходность составляет 151% за 360 торговых периодов на 800 акциях против максимальных 124% у других методов на тех же периодах и тех же бумагах.
1. Введение
Управление портфелем — процесс распределения определённого объёма средств между разнообразными активами с целью максимизации доходности при заданном уровне риска (Cooper 1999; Davelos et al. 2001). В предыдущих работах предложена стратегия RNN-LSTM, объединяющая глубокое обучение и constrained optimization для многопериодной торговли (Jiang and Coenen 2019). Однако у неё два слабых места. Во-первых, обновление портфеля опирается на прогноз price ratio, который не всегда точен из-за непредсказуемых событий, влияющих на цены акций (Chen et al. 2021). Во-вторых, предположение о независимости цен акций может не выполняться: на рынке возможен interaction effect между ценами, что учитывают стратегии OLMAR и PAMR (Li and Hoi 2012; Li et al. 2012).
Цель работы — предложить стратегию, сочетающую кластеризацию и model-free RL, чтобы устранить проблему прогнозирования price ratio в RNN-LSTM. Насколько нам известно, это первое сочетание model-free RL и кластеризации в многoакционной постановке с выходом в виде торговых сигналов, не имеющих явного отображения на функцию награды (ожидаемую стоимость портфеля, mean-square variance и т.п.). Выход сети — вектор торговых сигналов, каждый элемент которого соответствует отдельной акции.
Преимущества предложенной стратегии четырёхкратны. Во-первых, model-free RL не требует заранее заданной модели среды (Tadepalli and Ok 2007) и адаптируется к разным рынкам (Gu et al. 2016). Во-вторых, кластеризация акций и отдельные нейросети для каждого кластера повышают эффективность агента при взаимодействии со средой через reward function. В-третьих, выход в виде вектора торговых сигналов избавляет от необходимости точного прогноза price ratio (Kaiser et al. 2019) и даёт гибкость в применении разных торговых правил. Наконец, вектор торговых сигналов позволяет количественно измерять риск и лучше контролировать риск портфеля.
Мотивация исследования двойная. Во-первых, зависимость RNN-LSTM от прогноза price ratio может приводить к высокой волатильности результатов; это мотивирует применение model-free RL, чтобы обойти проблему прогнозирования цен. Во-вторых, существующие RL-методы выдают портфель или торговое действие напрямую, что ограничивает способность агента количественно измерять риск. Выход в виде вектора торговых сигналов даёт большую гибкость в контроле риска и учёте комиссии. Кроме того, кластеризация обеспечивает обучение отдельных нейросетей для каждой группы акций и получение уникальной торговой политики на кластер.
Новизна работы:
- Насколько нам известно, мы первыми объединили RL и кластеризацию для построения портфеля в многопериодной торговле. Предложена novel model-free RL-стратегия: кластеризация делит акции на группы, для каждой обучается нейросеть алгоритмом A3C.
- Алгоритм DDPG определяет объём капитала на каждый кластер, что позволяет управлять торговым объёмом и снижать риск портфеля.
Ключевые вклады:
- Первое сочетание RL и кластеризации для многопериодного портфеля. Бэктесты показывают снижение Max Drawdown с 0,148 до 0,089 благодаря кластеризации.
- Комплексная оценка на четырёх датасетах, 800 реальных акций, два временных периода. Сравнение с десятью стратегиями — RNN-LSTM, RMR, PAMR и др. — по Final Value, Max Drawdown, Sharpe Ratio, Positive Days, Sortino Ratio и Calmar Ratio.
Структура статьи: раздел 2 — предыстория по построению портфеля; раздел 3 — постановка задачи; раздел 4 — методология; раздел 5 — бэктесты; раздел 6 — выводы и будущая работа.
2. Предыстория
Model-based deep RL уже показал заметные результаты в управлении портфелем, но большинство методов опираются на прогноз цены (Heaton et al. 2017; Xiong et al. 2016), точность которого, как показали наши предыдущие исследования (Jiang and Coenen 2019), может быть невысокой.
Успешные model-free попытки включают варианты RL (Dempster and Leemans 2006; Moody and Saffell 2001) и deep Q-learning (Mnih et al. 2015). Однако они выдают торговые действия лишь для одного актива. Мы впервые, насколько нам известно, применяем model-free RL и кластеризацию к множеству активов, генерируя торговые сигналы для акций разных кластеров без явной связи с reward function.
Кластеризация и model-free RL используются по трём причинам. Во-первых, совместная торговля разными категориями акций может снижать эффективность агента; разделение на категории позволяет обучать отдельные политики. Во-вторых, model-free методы не требуют прогноза цены; цель портфельного управления — максимизация прибыли, а не точность прогноза (Kaiser et al. 2019). В-третьих, вектор торговых сигналов гибче прогнозов движения цены или градаций торговых действий: разные торговые правила преобразуют сигналы в действия.
3. Постановка задачи
На финансовом рынке предполагается непрерывное инвестирование в $k$ активов на протяжении $n$ торговых дней. Инвестиции представлены вектором весов портфеля $w_t = [w_{t1}, \ldots, w_{tk}]^T \in [0,1]^k$, где $w_{tj}$ — доля капитала в активе $j \in \{1,2,\ldots,k\}$ непосредственно перед $t$-м торговым днём, при $\sum_j w_{tj} = 1$. После инвестирования доходность в $t$-й день вычисляется через вектор price ratio
\[ x_t = [x_{1t}, \ldots, x_{kt}]^T \in \mathbb{R}_+^k, \]где $x_{jt} = cp_{jt}/cp_{j,t-1}$, $cp_{jt}$ — цена закрытия $j$-го актива в день $t$, а $x_{jt}$ — доходность $j$-й акции в день $t$.
Когда рынок закрыт, собирается ценовая информация (open, close, high, low) для формирования price tensor $s_t$. Он подаётся на вход нейросети, которая выдаёт вектор торговых сигналов и вектор весов $w_{t+1}$ для инвестирования в следующий торговый день $(t+1)$ после обновления портфеля.
Задача — определить вектор $w_t$ в начале $t$-го дня так, чтобы максимизировать итоговую стоимость $V_n$ в конце $n$-го дня:
\[ V_n = V_0 \prod_{t=1}^{n} (w_t^T x_t), \]где $V_0$ — начальный капитал, $w_t^T x_t$ — периодическая доходность $k$ активов в конце $t$-го дня. Стратегия оценивается по итоговому cumulative wealth и другим метрикам, введённым ниже.
Рассматривается сценарий back-testing: агент «откатывается» в прошлое на выбранную дату без знания будущего и проводит paper trading. Предположения экспериментов:
- Perfect liquidity (Fama 1970): можно инвестировать в любую долю актива без ограничений по объёму заявок в стакане.
- Zero impact cost (Bikker et al. 2007): каждая сделка исполняется немедленно по последней цене.
Эти предположения близки к реальности при достаточно высокой ликвидности рынка (Murto and Tervioe 2014).
4. Методология
Предлагается подход Clustering And Deep Reinforcement Learning (CAD), объединяющий DBSCAN, A3C и DDPG для многопериодного управления портфелем. Стратегия состоит из четырёх шагов:
- Предобработка данных. Из дневных торговых записей извлекаются финансовые индексы для входного тензора A3C.
- Кластеризация. Акции делятся на кластеры методом t-SNE + DBSCAN по индексам из шага 1.
- Шаг A3C. A3C генерирует векторы торговых сигналов для каждого кластера; сигналы преобразуются в торговые действия по заданным правилам.
- Шаг DDPG. DDPG определяет, сколько акций разных кластеров покупать или продавать, объединяя действия из шага 3.
4.1. Предобработка данных
На шаге 1 предобрабатываются дневные записи каждой акции. Извлекаются 25 индексов — 5 Day Moving Average (5MA) (Glabadanidis 2015), Exponential Moving Average (EMA) (Jeremy et al. 2014), MACD (Boxer 2014) и др. — из open, close, high, low и volume. Эти индексы широко используются на рынке и в исследованиях. Они объединяются в тензор $s_t^{\mathrm{all}}$ — вход кластеризации, содержащий 25 индексов по множеству акций.
4.2. Шаг кластеризации
Акции можно классифицировать по разным признакам; разные категории требуют разных торговых стратегий. Поскольку «правильная» классификация неизвестна, используется кластеризация по финансовым индикаторам. Тензор индексов высокоразмерен (тысячи дневных записей на акцию), поэтому перед кластеризацией применяется t-Distributed Stochastic Neighbor Embedding (t-SNE) для понижения размерности.
4.2.1. Метод t-SNE
t-SNE предложен van der Maaten and Hinton (2008) для отображения высокоразмерных данных в низкую размерность: условные вероятности соседства в исходном и целевом пространствах сближаются. Метод популярен для визуализации высокоразмерных данных. Два главных преимущества:
- Широкий класс данных. t-SNE хорошо работает при линейной и нелинейной зависимости.
- Чёткое разделение. Точки с низким сходством в исходном пространстве остаются далеко в низкой размерности, что облегчает границы между категориями.
t-SNE выбран как наиболее распространённый метод понижения размерности с чёткими границами между категориями.
4.2.2. Метод кластеризации
После t-SNE низкоразмерные данные подаются в DBSCAN (Ester et al. 1996). Идея DBSCAN: для каждой точки кластера в $\varepsilon$-окрестности должно быть не менее MinPts точек — плотность превышает порог. Алгоритм 1 описывает DBSCAN (Ester 1996).
Алгоритм 1. DBSCAN
Вход: датасет D; радиус кластера eps; MinPts
Выход: множество кластеров C
1. Eps-окрестность точки p: Neps(p) = {q ∈ D | dist(p,q) ≤ eps}
2. p напрямую density-reachable из q, если p ∈ Neps(q) и |Neps(q)| ≥ MinPts
3. p density-reachable из q, если существует цепочка p₁= q, …, pₙ= p с прямой density-reachability
4. p density-connected с q, если ∃ o: p и q density-reachable из o
5. Кластер C — непустое подмножество D: (i) ∀p,q: p ∈ C и q density-connected с p ⇒ q ∈ C; (ii) ∀p,q ∈ C: p density-connected с q
6. Шум — точки, не принадлежащие ни одному Cᵢ
7. Обход всех точек для получения Cᵢ и шума
8. return Cᵢ и шумовые точки
Преимущества DBSCAN перед k-means:
- Автоматическое число кластеров. DBSCAN определяет число кластеров автоматически; k-means требует заранее заданного $K$ (Ester 1996).
- Гибкие формы. DBSCAN находит кластеры произвольной формы по плотности; k-means — только выпуклые. Core points с $\varepsilon$-окрестностью достаточной плотности соединяются в кластер; boundary points также могут быть включены (Ester 1996).
DBSCAN подходит для большого числа акций с неизвестным заранее числом категорий.
4.3. Шаг A3C
Акции вне кластеров исключаются из торгового пула. Оставшиеся акции по кластерам проходят шаг A3C. A3C сочетает policy gradient и Q-learning; асинхронное обучение нескольких Actor-Critic блоков обновляет параметры сети. Архитектура AC-блока показана на рис. 3 (Foster 2015): Actor network (Policy Gradient, Sutton et al. 1999) генерирует торговый сигнал; Critic network оценивает стоимость портфеля и «оценку» действия. Торговое правило преобразует выход Actor в конкретные действия; reward используется для TD-ошибки и обновления обеих сетей.
| Символ | Значение |
|---|---|
| $s_t$ | Состояние агента в момент $t$ |
| $\bar{s}_t$ | Тензор из предобработки — состояние в $t$ |
| $\pi(a|s_t)$ | Распределение вероятностей действия при состоянии $s_t$ |
| $V(s_t)$ | Value function — оценка стоимости состояния |
| $\theta_p$, $v$ | Веса actor network |
| $h_t$ | Выход A3C в момент $t-1$ |
| $n_c$ | Число кластеров в датасете |
| $n_{ci}$ | Число акций в $i$-м кластере |
| $n_t$ | Число торговых записей для обучения |
| $n_f$ | Число финансовых индексов |
4.3.1. A3C (Actor network)
Вход actor network — тензор $s_t^i$ кластера $i$ из предобработки и кластеризации. В тензор добавлен 26-й индекс — доля капитала в каждой акции; так тензор отражает состояние портфеля, на которое можно влиять торговлей. Итого 26 индексов.
Actor выдаёт вектор торговых сигналов $h_{t-1} = [h_t^1, h_t^2, \ldots, h_t^{n_{ci}}]$ для $i$-го кластера; вектор портфеля $b_{t-1}$ обновляется по сигналам. Элементы $h_t^j \in \{-1, 0, 1\}$ — SELL, HOLD, BUY. Размер $b_{t-1}$ — $n_{ci} \times 1$. После торговли вычисляется reward.
Actor основан на Policy Gradient (Sutton et al. 1999): при SELL/BUY вероятность соответствующего сигнала $\pi(a|s_{t-1})$ корректируется по оценке critic network (Q-learning, Wei et al. 2015). Critic оценивает $V(s_t)$ и «оценку» действия — увеличит ли оно стоимость состояния. Actor обновляет веса $\theta$ так, чтобы повышать вероятность полезных действий и снижать вероятность вредных.
На рис. 4 вход в момент $t-1$ — тензор $s_{t-1}$ размерности $n_t \times n_{ci} \times n_f$. В эксперименте $n_t = 1800$, $n_{ci} = 400$, $n_f = 26$. Индексы включают цены и технические индикаторы (5MA, EMA, MACD и др.). Состояние подаётся в RNN с LSTM, свёрточный слой и softmax дают распределение $\pi(s_{t-1})$; действие с максимальной вероятностью формирует $h_t$, по которому обновляется $b_{t-1}$.
4.3.2. A3C (Critic network)
Вход critic — тензор состояния $s_t$ (не путать с моментом времени $t$). Выход — value function:
\[ V(s_t) = \mathbb{E}_{\pi(s_t)}\big[r + \gamma \times V(s_{t+1})\big], \]то есть ожидаемая стоимость всех возможных состояний $t+1$ при следовании $\pi(s_t)$, плюс reward $r$ от доходности портфеля $b_t$ и транзакционных издержек при переходе $b_{t-1} \to b_t$. Learning rate $\gamma$ обычно 0,001.
4.3.3. Обновление сетей A3C
Целевая функция actor network $J(\pi)$ — ожидаемая награда агента под политикой $\pi$ из всех начальных состояний (Sutton et al. 1999):
\[ J(\pi) = \mathbb{E}\big[V(s_0)\big]. \]Градиент (Sutton et al. 1999):
\[ \nabla_\theta J(\pi) = \mathbb{E}\big[T(s,a) \cdot \nabla_\theta \log \pi(a|s)\big], \]где TD-ошибка $T(s_t, a) = r + \gamma V(s_t) - V(s_{t-1})$. Максимизируя $J(\pi)$, минимизируем policy loss:
\[ L_\pi = -J(\pi). \]Эмпирическая форма (Sutton et al. 1999):
\[ L_\pi = -\frac{1}{n}\sum_{i=1}^{n} T(s_i, a_i) \cdot \log \pi(a_i|s_i). \]Loss critic network по уравнению Беллмана (Sutton et al. 1999):
\[ V(s_0) = r_0 + \gamma r_1 + \gamma^2 r_2 + \cdots + \gamma^{n-1} r_{n-1} + \gamma^n V(s_n), \] \[ e = r_0 + \gamma r_1 + \cdots + \gamma^n V(s_n) - V(s_0). \]Цель — максимизировать $J(\pi)$ (минимизировать $L_\pi$) и минимизировать $e$ для точной оценки value function.
4.3.4. Политика обновления портфеля
Торговое правило, впервые предложенное в этой работе, объединяет вектор сигналов с правилами обновления портфеля: продаются акции с SELL, вырученные средства направляются на покупку акций с BUY. Алгоритм 2 формализует правило.
Алгоритм 2. Торговое правило обновления портфеля Вход: вектор портфеля bt−1; вектор сигналов ht Выход: вектор портфеля bt 1. hbuy: hbuyi = hit если hit = 1, иначе 0 2. hsell: hselli = 1 если hit = −1, иначе 0 3. R = bt−1T hsell — капитал от продаж 4. n — число положительных элементов hbuy; hbuy′i = hbuyi × R/n 5. bit = bit−1 + hbuy′i + bit−1 × hselli 6. return bt
4.4. Шаг хеджирования
На шаге A3C для каждого кластера строится отдельный портфель. DDPG используется как метод хеджирования для распределения капитала между портфелями кластеров (Jarrow and Turnbull 2012). Классические методы — Mean-Variance (Markowitz 1952), CAPM (Sharpe 1964), Black–Scholes (Jensen et al. 1973) — чувствительны к неожиданным событиям. Здесь доли капитала между портфелями определяет DDPG.
| Символ | Значение |
|---|---|
| $s_t$ | Состояние агента в $t$ |
| $s_t^{\mathrm{new}}$ | Новый тензор после предобработки хеджирования |
| $\theta^\mu$, $Q$ | Веса actor и critic network |
| $n_c$, $n_{ci}$, $n_t$, $n_f$ | Число кластеров, акций в кластере, записей, индексов |
| $w'$ | Выход DDPG для вектора весов портфеля |
4.4.1. Предобработка для хеджирования
Вход A3C для кластера $i$ — $s_{t-1}^i$ размерности $n_t \times n_{ci} \times n_f$. Для DDPG каждый индекс перерабатывается под новую сеть и целевую переменную. Процесс показан на рис. 6.
На примере цены закрытия вычисляется новый индекс idxratio — процентное изменение индекса — для тензора $s_t^{\mathrm{new}}$, входа DDPG:
- Матрица $s_t^{\mathrm{close}}$ — дневные close prices акций кластера $i$, размер $n_t \times n_{ci}$.
- Price ratio акции $a$ в $t$: $\mathrm{ratio}_{a,t} = \mathrm{close}_{a,t}/\mathrm{close}_{a,t-1}$, $\mathrm{ratio}_{a,0} = 1$.
- $\mathrm{close\_ratio}_t = \frac{1}{n}\sum_{a=1}^{n} \mathrm{ratio}_{a,t}$ — среднее изменение close price акций кластера $i$.
Аналогично вычисляются 25 новых индексов среднего процентного изменения исходных индексов. Для каждого кластера — матрица $n_t \times n_f$; объединение даёт тензор $s_t^{\mathrm{new}}$ размерности $n_t \times n_f \times n_c$ — вход DDPG.
4.4.2. Алгоритм DDPG
DDPG популярен в анализе временных рядов и continuous control (Lillicrap et al. 2015). Здесь он выбран как hedging method: лучше A3C на малых датасетах, хотя на больших action space exploration затруднена. Шум Ornstein–Uhlenbeck (Brockwell and Davis 2001) улучшает exploration. A3C генерирует сигналы для крупных кластеров; DDPG хеджирует агрегированные данные по кластерам. Вход — $s_t^{\mathrm{new}}$; выход — вектор весов $w' = [w'_1, \ldots, w'_{n_c}]$, где $w'_i$ — доля капитала в $i$-м кластере. Алгоритм 3 описывает DDPG (Lillicrap et al. 2015).
Алгоритм 3. DDPG
Инициализировать critic Q(s,a|θQ) и actor μ(s|θμ); target-сети Q′, μ′
Инициализировать replay buffer R; M эпизодов
for episode = 1 … M:
Инициализировать процесс шума P
Получить начальное состояние s₁
loop nθ шагов:
at = μ(st|θμ) + Pt
Исполнить at, получить rt, st+1; сохранить (st, at, rt, st+1) в R
Sample minibatch N переходов из R
yi = ri + γ Q′(si+1, μ′(si+1|θμ)|θQ)
Обновить critic: L = (1/N) Σ (yi − Q(si, ai|θQ))²
Обновить actor: ∇θμ J ≈ (1/N) Σ ∇aQ(s,a|θQ)|s=si,a=μ(si) ∇θμμ(s|θμ)
θQ′ ← τθQ + (1−τ)θQ′; θμ′ ← τθμ + (1−τ)θμ′
4.4.3. Построение итогового портфеля
Выход DDPG — $w' = [w'_1, \ldots, w'_{n_c}]$. Для итогового вектора весов объединяются результаты A3C и DDPG (алгоритм 4).
Алгоритм 4. Построение портфеля Вход: вектор портфеля bi для кластера i; вектор весов w′ Выход: итоговый вектор W for i = 1 … nc: wij = w′i × bij — доля в j-й акции кластера i Объединить w¹, …, wnc в W; return W
Вектор весов на каждый день $t$ строится по алгоритму 4; капитал инвестируется согласно $W$. Далее — подбор гиперпараметров A3C и DDPG.
4.5. Подбор гиперпараметров
A3C и DDPG имеют гиперпараметры: длина окна, число hidden units, learning rate (табл. 3–4). Оптимальные значения подбираются на 100 акциях SSE и NASDAQ; перебираются комбинации для максимизации стоимости портфеля.
4.5.1. Гиперпараметры A3C
Выход A3C — вектор торговых сигналов (качественный анализ). Сравнивается accuracy разных комбинаций:
\[ \alpha_{\mathrm{accuracy}} = \frac{n_{\mathrm{correct}}}{n_{\mathrm{total}}}, \]где $n_{\mathrm{correct}}$ — число действий, увеличивающих стоимость портфеля, $n_{\mathrm{total}}$ — общее число действий. Price ratio $pr_{jt} = cp_{jt}/cp_{j,t-1}$: если $pr_{jt} > 1{,}00005$ (с учётом комиссии 0,05%) — покупка; если $< 1{,}00005$ — продажа; иначе удержание. Более высокая accuracy — лучший результат A3C.
| Параметр | Значение |
|---|---|
| Length of window | 64 |
| Number of hidden layers | 2 |
| Hidden unit of first / second layer | 32 / 64 |
| Learning rate | 0,0001 |
| Batch size | 16 |
| Regularization | L1, λ = 0,001 |
| Iterations | 50 |
| Optimizer | ADAM |
| Training / CV / Back-test | 2008/8/6–2014/1/9 · 2014/1/10–2014/8/28 · 2014/8/29–2016/3/9 |
L1-регуляризация (Park and Hastie 2007) добавлена к actor loss $L_\pi + \lambda \sum_{\phi=1}^{m}|\omega_\phi|$ и critic loss $e + \lambda \sum_{\phi=1}^{m}|\omega_\phi|$ для предотвращения переобучения.
4.5.2. Гиперпараметры DDPG
Выход DDPG — вектор весов (количественный анализ). Сравнивается Sharpe Ratio (Sharpe 1994) при разных гиперпараметрах; выбирается комбинация с максимальным Sharpe:
\[ s_a = \frac{\mathbb{E}[R_a - R_f]}{\sqrt{\mathrm{Var}[R_a - R_f]}}, \]где $R_a$ — доходность актива, $R_f$ — безрисковая ставка. Более высокий Sharpe — лучший результат DDPG.
| Параметр | Значение |
|---|---|
| Length of window | 64 |
| Explore noise | OU noise |
| $\gamma$, $\tau$ | 0,99 / 0,02 |
| Learning rate | 0,0001 |
| Batch size / Replay buffer / Max step | 32 / 10000 / 100000 |
| Optimizer | ADAM |
| Training / CV / Back-test | 2008/8/6–2014/1/9 · 2014/1/10–2014/8/28 · 2014/8/29–2016/3/9 |
При подборе гиперпараметров вход A3C — тензор состояния кластера размерности $n_t \times n_{ci} \times n_f$ ($n_t = 1620$, $n_f = 26$). Для DDPG строится новый тензор $n_t \times n_f \times n_c$ ($n_f = 25$).
5. Результаты и обсуждение
В экспериментах использовано 800 акций SSE и NASDAQ (данные Yahoo Finance, Cazzoli et al. 2016). Данные разделены на train (обучение сетей), cross-validation (гиперпараметры) и test (бэктест). На каждую акцию: 1620 записей для обучения, 180 для CV, 360 для бэктеста.
5.1. Результаты бэктестов
5.1.1. Метрики эффективности
Шесть метрик для сравнения стратегий:
- Final Cumulative Portfolio Wealth (Li and Hoi 2012) — стоимость портфеля в конце периода; выше — лучше.
- Positive Days (Funt 2010) — доля периодов с положительной доходностью ($p_{t+1}/p_t > 1$); выше — лучше.
- Max Drawdown (Li 2016). Для процесса $X(t)$, $X(0)=0$, просадка в $T$:
Maximum drawdown (MDD) до $T$:
\[ M(T) = \max_{\tau \in (0,T)} \left[\max_{t \in (0,\tau)} X(t) - X(\tau)\right]. \]Интерпретация — доля капитала, потерянная в худшем сценарии; ниже MDD — лучше.
- Sharpe Ratio (Sharpe 1994; Memmel 2003):
выше — лучше risk-adjusted performance.
- Sortino Ratio (Sortino and Price 1994) — учитывает только downside volatility:
выше — лучше для risk-averse инвесторов.
- Calmar Ratio (Young 1991) — Sharpe с MDD как мерой риска:
Sortino чувствителен к downside deviation; Calmar менее подвержен недавним колебаниям и подходит для long-term инвесторов.
5.1.2. Результаты бэктестов и обсуждение
Начальный капитал бэктеста — $10^6$ (конкретное значение не влияет на относительные результаты). Комиссия 0,05% (Zou 2018).
| Метод | Final value | Max DD | Sharpe | Positive Days | Sortino | Calmar |
|---|---|---|---|---|---|---|
| CAPM | 141,11% | 0,093 | 1,64 | 0,532 | — | 4,03 |
| LSTM-DQN | 141,73% | 0,095 | 1,45 | 0,531 | 2,5 | 4,03 |
| A3C | 148,29% | 0,115 | 1,05 | 0,523 | 1,76 | 3,18 |
| DDPG | 151,29% | 0,089 | 1,70 | 0,542 | 2,94 | 5,23 |
Табл. 5 сравнивает DDPG с CAPM (Sharpe 1964), LSTM-DQN (Gao et al. 2020) и A3C как hedging methods. DDPG превосходит альтернативы по всем шести метрикам — обоснован выбор DDPG для CAD.
После hedging-шага CAD сравнивается с известными стратегиями (Li and Hoi 2012): OLMAR (Li and Hoi 2012), PAMR (Li et al. 2012), ONS (Agarwal et al. 2006), EG, Anticor (Borodin et al. 2011), RMR (Huang et al. 2013). Для CAD: 1620 периодов train, 360 — бэктest; вход — цены и индикаторы (5MA, EMA, MACD) всех акций.
| Стратегия | Final value | Max DD | Sharpe | Positive Days | Sortino | Calmar |
|---|---|---|---|---|---|---|
| CAD | 151,29% | 0,089 | 1,70 | 0,542 | 2,94 | 5,23 |
| A3C-CAPM | 124,06% | 0,0929 | 1,015 | 0,523 | 1,04 | 2,58 |
| ANTICOR | 107,77% | 0,175 | 0,705 | 0,503 | 1,01 | 0,499 |
| BAH | 101,54% | 0,171 | 0,289 | 0,501 | 0,32 | 0,148 |
| CRP | 109,22% | 0,148 | 0,833 | 0,518 | 1,89 | 0,688 |
| EG | 103,31% | 0,142 | 0,421 | 0,502 | 0,386 | 0,303 |
| ONS | 93,51% | 0,288 | −0,179 | 0,498 | −0,172 | −0,19 |
| PAMR | 116,64% | 0,213 | 1,09 | 0,509 | 1,94 | 0,826 |
| RMR | 115,23% | 0,146 | 1,28 | 0,516 | 2,00 | 1,11 |
| UP | 107,17% | 0,158 | 1,16 | 0,510 | 1,14 | 0,516 |
Buy and Hold даёт ~101,54% за 360 периодов — относительно стабильный рынок. CAD показывает наивысшую доходность (151,29%); A3C-CAPM с CAPM-хеджированием — вторую (124,06%). CAD лидирует по всем шести метрикам. Преимущество объясняется DBSCAN: автоматическое разделение акций на кластеры и исключение «шумовых» бумаг позволяет RL эффективнее обучать политику внутри однородных групп.
6. Заключение и будущая работа
Предложена novel многопериодная online-стратегия построения портфеля. t-SNE и DBSCAN делят акции на торговые пулы; A3C и DDPG формируют вектор весов по кластерам. В отличие от RL-методов с прямым выходом весов, стратегия гибко настраивается разными торговыми правилами. Доходность 151,29% превосходит восемь категорий традиционных методов на 800 акциях SSE/NASDAQ в четырёх временных периодах. CAD обходит бенчмарк A3C-CAPM по всем шести метрикам, подтверждая перспективность сочетания RL и кластеризации.
Направления улучшения:
- Новые индексы. Кластеризация улучшалась при добавлении индексов; планируется расширить набор и использовать квартальные значения.
- Новые методы кластеризации. Сравнение k-means и DBSCAN; в перспективе — spectral и hierarchical clustering.
- Больше акций. На малых выборках кластеризация работала хуже; увеличение числа бумаг должно улучшить результаты.
Приложение (полные списки тикеров SSE/NASDAQ, 400+400 кодов) — в оригинальном PDF; доказательства и технические детали опущены.
Литература
- [1] Amit Agarwal, Elad Hazan, Satyen Kale, and Robert E. Schapire. Algorithms for portfolio management based on the newton method. In International Conference, pages 9–16, 2006.
- [2] Jacob A. Bikker, Laura Spierdijk, and Pieter Jelle van der Sluis. Market impact costs of institutional equity trades. Journal of International Money and Finance, 2007.
- [3] A. Borodin, R. Elyaniv, and V. Gogan. Can we learn to beat the best stock. Journal of Artificial Intelligence Research, 21(1):579–594, 2011.
- [4] H. Boxer. Moving Average Convergence/Divergence. Profitable Day and Swing Trading: Using Price/Volume Surges and Pattern Recognition to Catch Big Moves in the Stock Market, 2014.
- [5] P. J. Brockwell and R. A. Davis. Discussion of "non-gaussian ornstein-uhlenbeck based models and some of their uses in financial economics,". 2001.
- [6] Lorenzo Cazzoli, Rajesh Sharma, Michele Treccani, and Fabrizio Lillo. A large scale study to understand the relation between twitter and financial market. In Network Intelligence Conference, 2016.
- [7] W. Chen, H. Zhang, M. K. Mehlawat, and L. Jia. Mean variance portfolio optimization using machine learning-based stock price prediction. Applied Soft Computing, 100(1):106943, 2021.
- [8] Robert G. Edgett Cooper. New product portfolio management:. Journal of Product Innovation Management, 16(4):333–351, 1999.
- [9] Davelos, L Anita, Kinkel, L Linda, Samac, and A Deborah. Modern investment theory. Prentice Hall,, 2001.
- [10] M. A. H. Dempster and V. Leemans. An automated fx trading system using adaptive reinforcement learning. Expert Systems with Applications, 30(3):543–552, 2006.
- [11] M. Ester. A density-based algorithm for discovering clusters in large spatial databases with noise. Proc.int.conf.knowledg Discovery & Data Mining, 1996.
- [12] M. Ester. A density-based algorithm for discovering clusters in large spatial databases with noise. Proc.int.conf.knowledg Discovery & Data Mining, 1996.
- [13] E. Fama. Efficient market hypothesis: A review of theory and empirical work. 1970.
- [14] D. J. Foster. A model of hippocampally dependent navigation, using the temporal difference learning rule. Hippocampus, 10, 2015.
- [15] M. J. Funt. Technical analysis. Pennsylvania Dental Journal, 77(2):33, 2010.
- [16] Z. Gao, Y. Gao, Y. Hu, Z. Jiang, and J. Su. Application of deep q-network in portfolio management. 2020.
- [17] P. Glabadanidis. Market timing and moving averages. 2015.
- [18] S. Gu, T. Lillicrap, Z. Ghahramani, R. E. Turner, and S. Levine. Q-prop: Sample-efficient policy gradient with an off-policy critic. 2016.
- [19] J. B. Heaton, N. G. Polson, and J. H. Witte. Deep learning for finance: deep portfolios. Applied Stochastic Models in Business & Industry, 33(1), 2017.
- [20] Dingjiang Huang, Junlong Zhou, Bin Li, Steven C. H. Hoi, and Shuigeng Zhou. Robust median reversion strategy for on-line portfolio selection. In International Joint Conference on Artificial Intelligence, volume 28, pages 2006–2012, 2013.
- [21] R. A. Jarrow and S. M. Turnbull. Pricing derivatives on financial securities subject to credit risk. Journal of Finance, 50(1):53–85, 2012.
- [22] M. C. Jensen, F. Black, and M. S. Scholes. The capital asset pricing model: Some empirical tests. Social Science Electronic Publishing, 1973.
- [23] Jeremy, Serror, Denis, S., and Grebenkov. Following a trend with an exponential moving average: Analytical results for a gaussian model. Physica, A. Statistical mechanics and its applications, 394:288–303, 2014.
- [24] Zhengyong Jiang and Frans Coenen. Long short-term memory-based multi-period price prediction for portfolio management. In Petra Perner, editor, Machine Learning and Data Mining in Pattern Recognition, 15th International Conference on Machine Learning and Data Mining, MLDM 2019, New York, NY, USA, July 20-25, 2019, Proceedings, Volume I, pages 187–200. ibai publishing, 2019.
- [25] L. Kaiser, M. Babaeizadeh, P. Milos, B. Osinski, R. H. Campbell, K. Czechowski, D. Erhan, C. Finn, P. Kozakowski, and S. Levine. Model-based reinforcement learning for atari. 2019.
- [26] L. Kaiser, M. Babaeizadeh, P. Milos, B. Osinski, R. H. Campbell, K. Czechowski, D. Erhan, C. Finn, P. Kozakowski, and S. Levine. Model-based reinforcement learning for atari. 2019.
- [27] Suleyman S. Kozat and Andrew C. Singer. Universal constant rebalanced portfolios with switching. In IEEE International Conference on Acoustics, Speech and Signal Processing, pages III–1129 – III–1132, 2007.
- [28] Bin Li and Steven C. H. Hoi. Online portfolio selection: A survey. Papers, 46(3):1–36, 2012.
- [29] Bin Li and Steven C. H. Hoi. On-line portfolio selection with moving average reversion. Papers, pages 173-190, 2012.
- [30] Bin Li and Steven C. H. Hoi. Online portfolio selection: A survey. Acm Computing Surveys, 46(3):1–36, 2012.
- [31] Bin Li, Peilin Zhao, Steven C. H. Hoi, and Vivekanand Gopalkrishnan. Pamr: Passive aggressive mean reversion strategy for portfolio selection. Machine Learning, 87(2):221–258, 2012.
- [32] Zhiyong Li. Maxdrawdown: Stata module to calculate the maximum drawdown of a stock, fund or other financial product. Statistical Software Components, 2016.
- [33] Timothy P. Lillicrap, Jonathan J. Hunt, Alexander Pritzel, Nicolas Heess, Tom Erez, Yuval Tassa, David Silver, and Daan Wierstra. Continuous control with deep reinforcement learning. Computer ence, 2015.
- [34] Harry Markowitz. Portfolio selection. Journal of Finance, 7(1):77–91, 1952.
- [35] Christoph Memmel. Performance hypothesis testing with the sharpe ratio. Social Science Electronic Publishing, 27(3):299–306, 2003.
- [36] V Mnih, K Kavukcuoglu, D Silver, A. A. Rusu, J Veness, M. G. Bellemare, A Graves, M Riedmiller, A. K. Fidjeland, and G Ostrovski. Human-level control through deep reinforcement learning. Nature, 518(7540):529, 2015.
- [37] J Moody and M Saffell. Learning to trade via direct reinforcement. Neural Networks IEEE Transactions on, 12(4):875–889, 2001.
- [38] P. Murto and Marko Tervioe. Exit options and dividend policy under liquidity constraints. International Economic Review, 55(1):197–221, 2014.
- [39] M. Y. Park and T. Hastie. L1-regularization path algorithm for generalized linear models. Journal of the Royal Statistical Society: Series B (Statistical Methodology), 2007.
- [40] William F. Sharpe. Capital asset prices: A theory of market equilibrium under conditions of risk. The Journal of Finance, 19(3):425–442, 1964.
- [41] William F. Sharpe. The sharpe ratio. Journal of Portfolio Management, 21(1):49–58, 1994.
- [42] Richard S. Sutton, David Mcallester, Satinder Singh, and Yishay Mansour. Policy gradient methods for reinforcement learning with function approximation. Submitted to Advances in Neural Information Processing Systems, 12, 1999.
- [43] P. Tadepalli and D. K. Ok. Model-based reinforcement learning. Artificial Intelligence, 100(1-2):177–224, 2007.
- [44] Hinton G Van der Maaten L. Visualizing data using t-sne[j]. Journal of Machine Learning Research, 9:2579–2605, 2008.
- [45] Q. Wei, D. Liu, and G. Shi. A novel dual iterative q-learning method for optimal battery management in smart residential environments. IEEE Transactions on Industrial Electronics, 62(4):2509–2518, 2015.
- [46] Ruoxuan Xiong, Eric P. Nichols, and Yuan Shen. Deep learning stock volatility with google domestic trends. Papers, 2016.
- [47] D. W. Zou. Predicting stock price movements from annual reports. 2018.
Оригинал статьи: Jiang et al., «CAD: Clustering And Deep Reinforcement Learning Based Multi-Period Portfolio Management Strategy», arXiv:2310.01319