Gray-box adversarial attack на торговых агентов на глубоком обучении с подкреплением
Foozhan Ataiefard · Electrical and Software Engineering, University of Calgary, Calgary, Canada
Hadi Hemmati · Electrical Engineering and Computer Science, York University, Toronto, Canada · 26 сентября 2023
Оригинал: Ataiefard, F. and Hemmati, H. «Gray-box Adversarial Attack of Deep Reinforcement Learning-based Trading Agents», v1 — arxiv.org/abs/2309.14615 (PDF).
Исследование частично финансировалось NSERC Alliance – Alberta Innovates Advance Program (ALLRP/556396-2020 и 202102242). Рис. 1–2 воспроизведены из оригинальной публикации. Репликационный пакет: anonymous.4open.science/r/ADRL-B72D.
Ключевые слова: Deep Reinforcement Learning, Adversarial Attacks, Robustness, Automated Trading.
Классификация arXiv: cs.LG
Аннотация
В последние годы глубокое обучение с подкреплением (Deep RL) успешно применяется как «умный» агент во многих системах — сложных играх, беспилотных автомобилях, чат-ботах. Одно из интересных применений Deep RL — автоматизированный торговый агент на акциях. Любой такой агент уязвим к манипуляциям со стороны противников в торговой среде, поэтому изучение их устойчивости критично для практического успеха. Типичный подход к robustness RL — white-box gradient-based генерация adversarial samples (например, FGSM) — для торговли неприменим: модели защищены за API международных бирж вроде NASDAQ.
В этой работе показано, что «gray-box» атака на Deep RL-трейдера возможна простым участием в том же рынке акций без дополнительного доступа к торговому агенту. В предложенном подходе adversary agent использует гибридную deep neural network в качестве policy — свёрточные и полносвязные слои. В среднем по трём конфигурациям симулированного рынка adversary policy снижает значения награды на 214,17%, что соответствует снижению потенциальной прибыли baseline на 139,4%, ensemble-метода на 93,7% и коммерческого торгового ПО индустриального партнёра на 85,5%, при существенно меньшем бюджете, чем у жертв (427,77%, 187,16% и 66,97% соответственно).
1. Введение
Применение глубоких нейросетей в автоматизированной торговле привлекло огромный интерес в последние годы. Высокая способность DNN аппроксимировать сложные нелинейные зависимости в сочетании с алгоритмами reinforcement learning вроде Q-learning породила новое семейство решений — Deep RL. Deep RL успешно применялся к задачам управления: видеоигры (Mnih et al. 2013), Go (Silver et al. 2016), автономное вождение в симуляции и реальном мире (Dosovitskiy et al. 2017), торговля (Noonan 2017). Deep RL в автоматизированной торговле — относительно новая и мало изученная тема. Например, ensemble-метод, принимающий решение на основе трёх разных Deep RL алгоритмов (Yang et al. 2020), и подход inverse reinforcement learning (Roa-Vicens et al. 2019).
Несмотря на эффективность, эти алгоритмы уязвимы к adversarial perturbations входов. Vision-based Deep RL policies показали уязвимость к adversarial examples с mis-classification (Szegedy et al. 2013; Huang et al. 2017). В предыдущих работах по robustness Deep RL атакующий метод имеет прямой доступ к входу жертвы. Для многих приложений, включая торговлю, такой доступ практически невозможен. Для vision-based агентов работа Gleave et al. (2019) показала, что можно найти adversarial policy, взаимодействующую со средой жертвы как другой игрок.
Устойчивость к adversarial attacks особенно важна в торговой системе: adversary agent может легально действовать как трейдер, но под капотом манипулировать рынком против конкретного конкурента или компании/агента под атакой. Первый шаг к построению robust Deep RL trader agents — выявить слабые места относительно атак, а для этого нужен реалистичный и мощный генератор adversarial samples.
Поэтому в этой статье предлагается gray-box framework для создания adversarial samples для Deep RL trading agents, аналогичный торговле на реальном фондовом рынке. Gray-box предположение: исходный код торговых агентов, архитектура policy, веса DNN и алгоритмы обучения неизвестны противнику. Доступны лишь текущее состояние рынка и решение торгового агента (выбранное торговое действие в данном состоянии — публичная информация на многих торговых платформах). Framework использует agent-based симуляцию рынка в реальном времени ABIDES (Byrd et al. 2020) — одну из немногих open source симуляций, способных имитировать реальные фондовые рынки и использованную в финансовых публикациях.
Чтобы продемонстрировать эффективность adversary policy, обучены три trading agent в трёх наиболее реалистичных конфигурациях рынка симулятора. После обучения они интегрированы в торговую среду, где adversary также может торговать. Три аспекта adversary оцениваются через три research questions (RQ): (RQ1) насколько эффективен предложенный adversary в изменении решений trader agent; (RQ2) насколько он может изменить прибыль трейдера; (RQ3) может ли он сделать это при разумных издержках, оставаясь систематическим (т.е. косвенно влияя на выученную policy жертвы).
Вклад работы:
- End-to-end решение для создания gray-box adversarial attacks на Deep RL trader agents.
- Экспериментальная оценка атак на трёх агентах (включая industrial agent) и трёх рыночных сценариях.
- Доказательства, что предложенный подход создаёт успешные атаки при разумной стоимости, систематически (через влияние на выученную policy) ухудшая решения трейдера.
Репликационный пакет, включая архитектуры сетей и гиперпараметры, опубликован (Ataiefard and Hemmati 2023).
2. Предыстория
2.1 Deep RL для торговли
Общая задача оптимизации торговли на фондовом рынке формулируется как Markov Decision Process, решаемый алгоритмами deep reinforcement learning. Цель оптимизации RL agent — максимизация прибыли. Элементы RL-задачи:
- State ($s$): вектор с остатком баланса агента, числом принадлежащих акций, текущей ценой акций, лучшими bid и ask ценами и техническими индикаторами вроде RSI.
- Action ($a$): выбор действия агентом согласно текущему состоянию $s_t$. Для trading agent — buy, hold или sell заданного числа акций.
- Reward ($r$): функция награды RL agent за действие $a$ в состоянии $s$: $r(s, a, \hat s) \in \mathbb{R}$.
- Policy ($\pi$): deep neural network, отображающая множество состояний $S$ в множество действий $A$: $\pi: S \to A$.
Наиболее популярные deep RL алгоритмы на финансовых рынках относятся к actor-critic, actor-only, critic-only или ensemble этих техник (Fischer 2018).
Deep Q-learning алгоритмы — самые распространённые среди critic-only подходов для trading agents. Deep neural network обучается аппроксимировать Q-value function — оценку ожидаемой награды за действие $a$ в состоянии $s$. Агент использует Q-value для оптимизации policy, выбирающей действия с максимальной ожидаемой наградой. Actor-only алгоритмы работают с дискретным пространством действий (buy, hold, sell), что ограничивает контроль над торговыми действиями.
Другая популярная семья — actor-only (policy search) алгоритмы: они устраняют необходимость прогнозировать будущие награды, обучая лучшие торговые стратегии непосредственно из среды на немедленных наградах. Policy — по сути распределение вероятностей действий, представляющее торговую стратегию.
Большинство недавних применений deep RL в торговле используют actor-critic подходы. Две сети обучаются одновременно: первая учит policy $\pi$ (actor), вторая — оценку value function $V^\pi(s)$ (critic). $V^\pi(s)$ предсказывает будущие награды из среды, начиная с состояния $s$ и следуя действиям из сети $\pi$. Для эффективной policy её сеть обновляется policy gradients согласно $V$.
Robustness трёх automated trading RL agents проверяется предложенным adversary approach: Baseline agent, ensemble agent из Yang et al. (2020) и industrial agent:
- Baseline Agent: типичная actor-critic модель с двухголовой fully-connected neural network: одна голова — policy output (action), другая — value function.
- Ensemble Agent: более сложная модель из трёх actor-critic алгоритмов. Каждое действие выбирается от лучшего агента среди PPO, A2C и DDPG (Lillicrap et al. 2015). Оба агента используют reward function $R_t$: \[ R(s_t, a, s_{t+1}) = P_{t+1} - P_t, \] где $P_t$ — portfolio value в момент $t$ (стоимость активов агента, включая акции и cash). Все агенты используют один state vector $S$.
- Industrial Agent: агент индустриального партнёра, превосходящий два предыдущих. Архитектура схожа с ensemble agent, но включает детальные оптимизации, не раскрываемые по конфиденциальности. Исходный код доступных агентов — в репликационном пакете.
2.2 Adversarial policy в Deep RL
Как обсуждается в разделе V, ранее методы генерации adversary samples против Deep RL agents предполагали прямой доступ к входам жертвы или её policy. Напротив, поиск adversarial policy только через взаимодействие со средой жертвы достигнут для vision-based agents в PvP средах вроде роботизированных игр (Gleave et al. 2019).
В этом подходе вместо perturbation входа жертвы adversary взаимодействует с той же средой, содержащей victim trading agent. Встраивая жертву в среду с точки зрения adversary, атака трактуется как single agent RL problem. Цель обучения adversary — выучить действия, меняющие действия жертвы и минимизирующие накопленную награду $R_{\mathrm{victim}}(s_t, a_{\mathrm{victim}}, s_{t+1})$ на протяжении торгового эпизода. Эти действия могут казаться неинтуитивными с человеческой точки зрения.
Поиск adversarial policy для симуляционных игр с детерминированной моделью существенно отличается от торговой среды с неопределённостью и волатильностью; мы адаптируем эту методологию для trading adversary agent, способного ухудшать решения victim agent.
3. Adversarial policy для атаки trading agents
3.1 Adversary policy
Цель — продемонстрировать gray-box подход к атаке deep reinforcement learning trading agent: основные биржевые системы защищены и практически недоступны извне — нет простого способа манипулировать данными, получаемыми торговыми алгоритмами. Также предполагается отсутствие доступа к исходному коду trading agents, входу, архитектуре policy network и алгоритму обучения. Единственные доступные данные — текущее состояние среды и решение trading agent (выбранное действие в данном состоянии).
Adversary agent получает комбинацию входов DNN policy trading agent и выход агента. Предложенный adversary agent использует DNN как policy — свёрточные и fully connected слои, как в computer vision. Свёрточная часть захватывает более подходящее представление временной информации и связей между признаками; эффективно подавляет шум в данных, аналогично шумным пикселям в изображениях. Это повышает уверенность решений fully connected слоёв DNN по сравнению с сырыми точками данных.
Adversary обучается с Categorical Cross Entropy loss только на 4 днях рыночных данных (8% test data). Из-за временных зависимостей в данных фондового рынка RNN могли бы быть более уместны; здесь выбрана менее сложная архитектура, чтобы наглядно показать влияние adversary.
3.2 Reward function
Reward function должна отражать торговую задачу, максимизировать доходность и снижать уверенность решений trading policy; её должно быть легко оптимизировать. Предлагается $R$ как reward function adversary agent:
\[ R = (\mathrm{Balance} + P - \hat P) \times \alpha + \bigl|\pi(a|S) - \pi(\hat a|\hat S)\bigr| \tag{1} \]Balance — доступная валюта на каждом шаге. $P$ — portfolio value или стоимость принадлежащих акций; $\hat P$ — изменённая portfolio value после действия $a$ adversary. $\alpha$ — scaling factor, определяемый при обучении. $\pi$ — policy жертвы, принимающая торговые решения по состояниям $S$ и $\hat S$. Масштабирование активов в $R$ на $\alpha$ побуждает adversary сильнее фокусироваться на изменении решений trading agents, не переобучаясь на другие компоненты reward.
Для feasibility в реальном мире предполагается мягкое ограничение на деньги, потраченные adversary agent — фиксированный бюджет в начале торговли. Ещё одно важное ограничение при buy orders — market liquidity (общий объём акций, доступных для покупки). Агент должен определять отсутствие доступных акций по state vector из trading environment (раздел 3.4.2).
Поскольку решения adversary agent — сделки на рынке, приносящие прибыль или убыток, одно лишь изменение решения trading agent не является показателем эффективности adversary. Reward function adversary учитывает также потери активов, вызванные изменениями решений трейдера.
3.3 Advantage Actor Critic (A2C)
Actor-critic алгоритм в reinforcement learning — policy gradient algorithm, одновременно аппроксимирующий value function и policy. Value function предсказывает будущие награды в текущем состоянии агента и показывает, насколько хорошо состояние для агента. Произвольные колебания цены, объёма сделок и других признаков торговых данных делают среду стохастической с неизвестными переходами.
Для эффективного обучения adversary используется A2C (Advantage Actor Critic) — детерминированная синхронная реализация A3C (Mnih et al. 2016). A2C использует ensemble technique или advantage function, снижая дисперсию policy gradient при каждом update и делая policy более robust. Метод собирает несколько gradient updates от разных экземпляров той же policy на разных data points; на каждой итерации A2C усредняет все gradients и обновляет actor и critic networks. Более общие gradient updates ускоряют сходимость модели — алгоритм подходит для торговли, снижая влияние шумных или неопределённых действий.
3.4 Среда торговли в реальном времени
3.4.1 Trading simulation
Динамические рыночные данные, реагирующие на решения agents, — ключевая часть исследования: заявки agents должны иметь real-time impact на среду. Выбран ABIDES — agent-based trading market simulator с latent space, близким к реальному рынку (Byrd et al. 2020). ABIDES предоставляет API для размещения, отмены и изменения заявок. Для экспериментов ABIDES интегрирован в Gym environment. На каждом time step собирается полный Limit Order Book (LOB) как наиболее точное представление состояния рынка. Trading agents получают top-10 bids и asks с полезными индикаторами из LOB для решения о размещении заявки (рис. 1).
3.4.2 Policy input encoding
Bids ($\mathrm{bid}_i$) покупателей и asks ($\mathrm{ask}_j$) продавцов в симуляции упорядочены от лучших к худшим. Каждый $\mathrm{bid}_i$ и $\mathrm{ask}_j$ — цена, соответствующая buyer или seller agent. Симулятор знает каждого agent по id ($\mathrm{agent}_i$, $\mathrm{agent}_j$). Списки bids и asks представляются упорядоченными списками кортежей:
\[ \begin{aligned} \mathrm{bids} &= \langle (\mathrm{bid}_i, \mathrm{agent}_i), (\mathrm{bid}_{i+1}, \mathrm{agent}_{i+1}), \ldots \rangle, \quad \mathrm{bid}_i > \mathrm{bid}_{i+1}, \\ \mathrm{asks} &= \langle (\mathrm{ask}_j, \mathrm{agent}_j), (\mathrm{ask}_{j+1}, \mathrm{agent}_{j+1}), \ldots \rangle, \quad \mathrm{ask}_j > \mathrm{ask}_{j+1}. \end{aligned} \tag{2} \]Input vector как State($S_t$) торговой среды в момент $t$ формируется из исторической цены акций и векторов asks и bids, собранных во времени:
\[ V_t = \bigl[B,\, V,\, \mathrm{asks},\, n_{\mathrm{asks}},\, \mathrm{bids},\, n_{\mathrm{bids}},\, \mathrm{RSI},\, \mathrm{CCI},\, \mathrm{MACD}\bigr], \]где:
- $B \in \mathbb{R}$ — остаток валюты агента на данном шаге;
- $V \in \mathbb{R}$ — число акций в портфеле, купленных на предыдущих шагах;
- $\mathrm{asks} \in \mathbb{R}^{10}$ — 10 лучших ask-цен на рынке в момент $t$;
- $n_{\mathrm{asks}} \in \mathbb{N}^{10}$ — объём акций, доступных для покупки по каждой ask-цене;
- $\mathrm{bids} \in \mathbb{R}^{10}$ — 10 лучших bid-цен;
- $n_{\mathrm{bids}} \in \mathbb{N}^{10}$ — объём акций, доступных по каждой bid-цене;
- $\mathrm{RSI} \in \mathbb{R}$ — Relative Strength Index по собранным ценам; индикатор momentum, помогающий оценить перекупленность/перепроданность (Chong et al. 2014);
- $\mathrm{CCI} \in \mathbb{R}$ — Commodity Channel Index для циклических трендов (Maitah et al. 2016);
- $\mathrm{MACD} \in \mathbb{R}$ — momentum-индикатор связи двух скользящих средних цены (Chong et al. 2014).
Вектор пересчитывается и подаётся на neural network policy adversary training environment на каждом time step.
3.4.3 Training environment
OpenAI Gym — удобный framework для обучения широкого спектра agents на разных datasets и симуляциях, но не предоставляет среду, где agents играют друг против друга. Сначала trading agent обучается в нашей среде и сохраняются checkpoints лучшей policy. Затем adversary обучается в симулированной среде, где на каждом time step оба agents получают $S_t^i$; adversary agent также получает output trading policy ($a$) и прибыль от этого действия для решения о размещении заявки. По решению adversary обновляется $S_t^i$ для измерения impact изменения рынка.
4. Экспериментальная оценка
Research objective адресуется тремя RQ:
RQ1: Насколько эффективен предложенный adversary в изменении решений trading algorithms? В RQ1 игнорируется фактическая потеря прибыли trading agent, вызванная adversary; фокус — только на Softmax output trading policy. Сравнивается policy output trading agent до и после обновления симуляции заявками adversary policy. Также измерены rewards жертв для natural и under attack actions. Trading agents используют reward function, отражающую качество действий в терминах returns при обучении; эти функции использованы для сбора данных.
RQ2: Насколько adversary algorithm способен изменить прибыль трейдера? Как упомянуто в разделе 3.2, policy outputs трейдера трактуются как сделки на рынке; каждая может принести убыток или прибыль в зависимости от изменения цены акций. Однако изменение решения трейдера на одном шаге не гарантирует тренд в profit/loss: трейдер может компенсировать убытки одной сделки (или даже выйти в плюс после нескольких шагов), меняя следующие решения.
В сценарии, близком к реальной торговле, успешная атака adversary должна заставить трейдера терять прибыль на рынке через изменение его решений. Для измерения эффектов adversarial attacks на трейдера одна и та же market simulation запускается дважды параллельно: без adversary и с adversary, атакующим трейдера заявками (рис. 2).
RQ3: Насколько хорошо предложенный algorithm максимизирует gain или loss portfolio trading agent при разумных ограничениях? Exploits ли adversary конкретные паттерны торговли для атаки жертв? Ключевой показатель эффективности adversary — объём жертвованных ресурсов: adversary может манипулировать трейдером, но должен делать это с feasible loss margin для себя, не расходуя непредсказуемую долю бюджета и не нанося себе больших убытков. RQ3 отвечается отслеживанием assets adversary (balance и купленные акции). Также анализируются торговые методы adversary для изменения решений жертвы. Adversary обучен против трёх типов trading victims и должен выучить стратегии атаки каждого типа. Для изучения trading behaviour adversary agents отслеживаются episode rewards adversary параллельно с прямыми сделками с victim.
4.1 Метрики оценки
4.1.1 Метрики RQ1
Измеряется severity изменений поведения трейдера в каждом state. Первая метрика — среднее изменение Softmax output policy network трейдера. Исходное состояние симуляции без attacker — $S_t$; при присутствии attacker — $\hat S_t$. Среднее изменение policy output трейдера за эпизод из $N$ шагов:
\[ \Delta_{\mathrm{episode}} = \frac{1}{N}\sum_{t=1}^{N}\frac{\pi(a_t|S_t) - \pi(\hat a_t|\hat S_t)}{\pi(a_t|S_t)} \times 100 \tag{3} \]Вторая метрика эффективности adversary method — средние rewards за $N$ шагов эпизода:
\[ \bar R = \frac{1}{N}\sum_{t=1}^{N} R_{a_t}^{S_t} \tag{4} \]Отчитываются natural rewards (без атаки) вместе с reward under adversarial attacks за более 50 эпизодов для 3 trading agents. Для оценки различия распределений natural и attack rewards используется goodness of fit test для каждой жертвы.
Поскольку collected reward data принадлежат continuous distributions ($R \sim D_R$) и включают 50 data points на эксперимент, выбран Kolmogorov-Smirnov (KS) statistical test для измерения расстояния между distribution natural rewards ($D_{R_{\mathrm{natural}}}$) и attack rewards ($D_{R_{\mathrm{attack}}}$). KS test — non-parametric и distribution-free. Null hypothesis KS test: два распределения идентичны и из одного $D$ для всех data points; alternative — они не идентичны при rejection null hypothesis:
\[ R_{\mathrm{natural}}, R_{\mathrm{attack}} \stackrel{\mathrm{i.i.d.}}{\sim} D \tag{5} \] \[ R_{\mathrm{natural}}, R_{\mathrm{attack}} \stackrel{\mathrm{i.i.d.}}{\not\sim} D \]4.1.2 Метрики RQ2
В RQ2 оценивается impact изменений trading environment states adversary на portfolio трейдера. Две метрики:
- Cumulative reduction in returns per episode (CR): $P$ — returns трейдера без adversary, $\hat P$ — returns под атакой: \[ CR = \frac{1}{N_e}\sum_{t=1}^{N_e}\frac{P - \hat P}{P} \times 100 \tag{6} \] Среднее изменение cumulative returns за $N_e = 50$ эпизодов.
- Average reduction in returns per step (AOR): $p$ — returns на отдельном шаге без adversary, $\hat p$ — под атакой: \[ AOR = \frac{1}{N}\sum_{t=1}^{N}\frac{p - \hat p}{p} \times 100 \tag{7} \] Отчитывается best AOR за все 50 эпизодов с $N$ шагами для понимания распределения portfolio losses внутри эпизодов.
4.1.3 Метрики RQ3
Для оценки издержек adversary policy на рынке отчитываются portfolio value returns attacker и сравниваются с метрикой CR жертвы из RQ2. Успешный attacker должен иметь меньший loss, чем victim — иначе атака слишком дорога.
Для второй части RQ3 — торгует ли attacker напрямую с victim или систематически нарушает его learning process — отчитываются две метрики adversary. Первая — Mean Episode Rewards adversary из OpenAI Gym. Вторая — Loss Hit-Ratio: доля потерь victim, вызванных прямой торговлей с adversary agent. Для определения loss hit-ratio поддерживаются массивы agent ids для каждого bid и ask в trading environment:
\[ \begin{aligned} \mathrm{Bidids} &= [(\mathrm{AGENT}_1, \mathrm{shares}_1, \mathrm{price}_1), \ldots, (\mathrm{AGENT}_{10}, \mathrm{shares}_{10}, \mathrm{price}_{10})], \\ \mathrm{Askids} &= [(\mathrm{AGENT}_1, \mathrm{shares}_1, \mathrm{price}_1), \ldots, (\mathrm{AGENT}_{10}, \mathrm{shares}_{10}, \mathrm{price}_{10})]. \end{aligned} \]Векторы показывают, какому agent принадлежит каждый bid и ask. При completed exchange, если victim продаёт или покупает акции напрямую у adversary, exchange считается hit. Loss Hit Ratio для victim:
\[ \mathrm{Loss\ Hit\ Ratio} = \frac{\mathrm{Returns\ from\ hits}}{\mathrm{Total\ returns}}. \]Успешная атака ожидается с низким Loss Hit Ratio — victim не просто торгует только с adversary.
4.2 Генерация данных в реальном времени (симуляция)
Market simulation в training environment запускалась 50 раз для каждого эксперимента в 3 distinct market configurations от разработчиков. Конфигурации используют заданное число trading agents (noise agents, momentum agents), одного market maker и exchange agent для обработки заявок (детали — в репликационном пакете). Каждый эпизод начинается в 9:30 (открытие рынка) и заканчивается в 16:00. Trading и adversary agents собирают price data и заявки в LOB каждые 20 ms — момент пробуждения exchange agent для организации заявок. Размещение заявок разрешено в тот же момент для имитации real-time trading market.
4.3 Experimental setup
Обучение и evaluation каждого Deep RL agent для trader и adversary выполнялись на одной машине Ubuntu 20.04.2 LTS (Linux 5.8.0) с Intel Core i7-9700, 32 GB RAM и 8 GB GPU memory на NVIDIA GeForce RTX 2080. Реализация — PyTorch и OpenAI Gym.
4.4 Результаты
4.4.1 Результаты RQ1
Таблица I показывает $\bar R$ и $\Delta_{\mathrm{episode}}$ для трёх trading agents в двух сценариях: с adversary (attack $\bar R$) и без (natural $\bar R$) по уравнению (4). Включены наибольшие наблюдаемые значения обеих метрик.
Первое наблюдение: reward function трейдеров показывает существенный негативный impact от adversary. Все trading algorithms имеют положительную mean reward ($\bar R$) в trading environment — их решения генерируют приемлемые returns в течение эпизода или торгового дня. Mean reward после решений под атаками показывает, что предложенный adversary заставил victim делать incorrect trades и нарушил способность trading agent надёжно предсказывать будущую цену акций. Хотя trading agents получают те же technical indicators, они уязвимы к adversary orders в LOB.
По $\Delta$ в таблице I — широкий диапазон (от 16,2% до 47,3%). Общий паттерн ожидаем: baseline легче обмануть, затем ensemble method, industrial model — труднее манипулировать. Однако даже небольшие манипуляции Softmax output (например, 16,2% в Industrial-Config2) могут давать большие падения reward values (с 0,919 до −1,094 в этом примере).
Reported distance между Natural и Attack reward distributions в таблице II показывает существенную разницу в performance victims под атакой. Все p-values крайне меньше 0,05 — расстояние между $D(R_{\mathrm{natural}})$ и $D(R_{\mathrm{attack}})$ вычислено с confidence; null hypotheses из уравнения (5) отвергнуты.
Итог RQ1: средний Natural $\bar R$ по всем 9 trader-config парам — 0,623; средний Attack $\bar R$ — −0,711; снижение reward value на $(0{,}623 - (-0{,}711))/0{,}623 = 214{,}17\%$. Это демонстрирует эффективность предложенного adversary в принуждении agent к non-optimal trades на рынке, отражённым в reward function.
Таблица I. Средние и лучшие rewards и $\Delta$ за 50 эпизодов для agents под атакой и natural reward (без атаки).
| Trader Model | Market | Natural $\bar R$ | Attack $\bar R$ | Best Attack $\bar R$ | $\Delta_{\mathrm{episode}}$ | Best $\Delta_{\mathrm{episode}}$ |
|---|---|---|---|---|---|---|
| Baseline | config1 | 0.541 | −0.484 | −2.031 | 46.9% | 51.2% |
| Baseline | config2 | 0.318 | −1.093 | −1.594 | 47.3% | 52.0% |
| Baseline | config3 | 0.332 | −1.146 | −2.309 | 39.8% | 44.8% |
| Ensemble | config1 | 0.727 | −0.051 | −0.994 | 30.2% | 34.4% |
| Ensemble | config2 | 0.611 | −0.823 | −2.062 | 27.4% | 32.1% |
| Ensemble | config3 | 0.698 | −0.983 | −2.137 | 28.5% | 29.6% |
| Industrial | config1 | 0.598 | −0.291 | −1.003 | 22.1% | 36.4% |
| Industrial | config2 | 0.919 | −1.094 | −1.875 | 16.2% | 17.9% |
| Industrial | config3 | 0.859 | −0.432 | −0.976 | 25.3% | 27.7% |
Таблица II. Расстояния (и p-values) Natural $\bar R$ и Attack $\bar R$.
| Trader Model | Kolmogorov–Smirnov Distance | p-value |
|---|---|---|
| Baseline | 0.72 | 8.7593e−13 |
| Ensemble | 0.64 | 6.0786e−10 |
| Industrial | 0.54 | 4.9291e−07 |
4.4.2 Результаты RQ2
В RQ2 отчитываются CR и AOR из уравнений (6) и (7) для различных settings environment против разных trading algorithms аналогично RQ1. Результаты — в таблице III.
По CR видно, что предложенный adversary способен таргетировать returns victims, эффективно манипулируя их trade decision. Adversary не только предсказывает decision boundary жертвы (RQ1), но и учится предсказывать trend market price (returns и их reductions), интегрируя хорошее представление рынка и trading strategy жертвы (RQ2). Метод эффективен для targeted attacks (на profits) и untargeted attacks (только изменение output жертвы).
По AOR adversary заставляет victim принимать trading decisions, работающие против market trend. Снижаются returns даже лучшего trading agent не только на протяжении торговли, но и на отдельных шагах. AOR показывает intensity attacks: среднее снижение immediate profits (по трём market configs на trader) — 139,4% для baseline trader, 93,7% для ensemble, 85,5% для industry trader в weakest attack.
Таблица III. CR и AOR для baseline, ensemble и industrial trading algorithms, усреднённые за 50 эпизодов.
| Trader Model | Market | CR | AOR | Best CR |
|---|---|---|---|---|
| Baseline | config1 | 82.88% | 118.9% | 88.30% |
| Baseline | config2 | 95.36% | 164.1% | 101.43% |
| Baseline | config3 | 85.59% | 135.2% | 90.09% |
| Ensemble | config1 | 74.13% | 90.5% | 75.81% |
| Ensemble | config2 | 75.33% | 97.8% | 77.64% |
| Ensemble | config3 | 73.92% | 92.7% | 77.72% |
| Industrial | config1 | 71.05% | 97.9% | 81.14% |
| Industrial | config2 | 63.68% | 73.5% | 74.84% |
| Industrial | config3 | 65.74% | 85.1% | 69.93% |
4.4.3 Результаты RQ3
Для ответа на RQ3 сначала сравниваются losses victims (CR) с Adversary Portfolio Loss (таблица IV). Adversary достигает цели, расходуя небольшой процент стартового budget (100% loss означало бы использование всего assigned budget для fooling trader; initial budget adversary равен budget victim для fair comparison).
Для baseline victim adversary (в среднем по трём market configs) потребовалось на $(87{,}94/16{,}66) - 1 = 427{,}77\%$ меньше budget, чем victim; против ensemble — на $(74{,}46/25{,}93) - 1 = 187{,}16\%$ меньше; против лучшего trading victim — на $(66{,}82/40{,}02) - 1 = 66{,}97\%$ меньше. Хотя adversary должен размещать более крупные и возможно более убыточные сделки для манипуляции лучшими trading victims, даже с лучшими victims он достигал предпочтительного outcome с меньшим budget, чем victim.
Для insight в работу adversary представлены mean episode rewards adversary и loss hit ratio (таблица IV). Rewards относительно высоки во всех экспериментах против victims, даже где adversary performed worse — value function agent воспринимает adversary trades как достаточно efficient.
Loss hit ratio подтверждает: небольшая доля loss victim вызвана прямой торговлей с adversary — indicator стратегии adversary нарушить natural trading course victim. Сочетание high rewards и low loss hit ratio позволяет заключить: adversary выучил winning strategy — вместо прямого взаимодействия с victim в большинстве сценариев он меняет limit order book на более out-of-distribution observation по сравнению с training observation, знакомым victim.
Таблица IV. Portfolio loss за эпизод и normalized mean episode rewards adversary в сравнении с portfolio loss CR victims.
| Trader Model | Market | Victim CR | Adversary Portfolio Loss | Mean Episode Rewards | Loss Hit Ratio |
|---|---|---|---|---|---|
| Baseline | config1 | 82.88% | 16.04% | 0.8931 | 17.932% |
| Baseline | config2 | 95.36% | 13.82% | 0.9434 | 12.146% |
| Baseline | config3 | 85.59% | 20.13% | 0.9789 | 16.753% |
| Ensemble | config1 | 74.13% | 28.54% | 0.9103 | 14.301% |
| Ensemble | config2 | 75.33% | 27.76% | 0.9520 | 14.166% |
| Ensemble | config3 | 73.92% | 21.49% | 0.8447 | 15.353% |
| Industrial | config1 | 71.05% | 37.66% | 0.8939 | 10.099% |
| Industrial | config2 | 63.68% | 39.23% | 0.8942 | 13.993% |
| Industrial | config3 | 65.74% | 43.17% | 0.9007 | 13.067% |
5. Связанные работы
Предыдущие исследования adversary sample generation для DNNs в основном фокусируются на прямой модификации входов. Некоторые работы показали, что deep neural networks склонны к mis-classification при добавлении perturbation, незаметной для human vision (Szegedy et al. 2013); эти examples generalize на разные DNN architectures и training sets (Papernot et al. 2017). Позже появился Fast Gradient Sign Method (FGSM) (Goodfellow et al. 2014), эксплуатирующий gradients DNN для генерации adversarial examples.
Раннее применение adversary example generation с FGSM на нескольких deep reinforcement learning algorithms (DQN, A3C, TRPO) показало, что FGSM способен снижать policy agents независимо от environment, architecture и training algorithm (Huang et al. 2017). Метод применялся white-box для генерации FGSM perturbation, затем — transferability adversarial examples для атаки RL agents black-box с доступом только к DNN structure и training environment.
Gradient based adversarial example generation methods изучались и для RL в trading domain (Chen et al. 2021; Faghan et al. 2020). Оба метода атакуют input channel victim напрямую на historical stock exchange datasets. Эти assumptions делают оба подхода non-feasible для real-world trading scenario.
Universal adversarial perturbations threat model представлен через уязвимость RL генерацией fake orders в stock market dataset (Goldblum et al. 2021): perturbations применяются к test dataset итерацией по всем orders — всё ещё предполагается low-level access к inputs через custom changes записей dataset.
В работе Behzadan and Munir (2019) benchmark collision avoidance ability autonomous driving agents: robustness RL agent behaviours тестируется в environments с другими agents. Trading на stock market очень похож на такие environments, особенно zero-sum games, где деньги, потерянные одним agent, — прибыль другого. Некоторые работы показали, что RL agents, обученные в collaboration или против других agents, могут стать closely dependent и fail против different agents (Lanctot et al. 2017). Эта проблема адресуется использованием numerous noise agents в stock exchange simulation для обучения victims.
6. Заключение и дальнейшая работа
Статья представляет Deep RL adversary trading agent для тестирования lower-bound trading agents в сценарии, очень близком к real-world stock market. Предложенный подход показывает, что несмотря на complex deep neural networks в policy trading agent, они уязвимы к natural, но out-of-distribution attacks adversary. Подход протестирован в трёх settings market simulation против трёх разных trading agents.
Потенциальные расширения: (a) использование adversary для генерации defence method против таких threats; (b) обучение anomaly detection methods для оповещения automated trading agent или даже exchanges о возможных рисках.
Литература
- [1] V. Mnih, K. Kavukcuoglu, D. Silver, A. Graves, I. Antonoglou, D. Wierstra, and M. Riedmiller, «Playing atari with deep reinforcement learning,» arXiv preprint arXiv:1312.5602, 2013.
- [2] D. Silver, A. Huang, C. J. Maddison, A. Guez, L. Sifre, G. Van Den Driessche, J. Schrittwieser, I. Antonoglou, V. Panneershelvam, M. Lanctot et al., «Mastering the game of go with deep neural networks and tree search,» nature, vol. 529, no. 7587, pp. 484–489, 2016.
- [3] A. Dosovitskiy, G. Ros, F. Codevilla, A. Lopez, and V. Koltun, «Carla: An open urban driving simulator,» in Conference on robot learning. PMLR, 2017, pp. 1–16.
- [4] L. Noonan, «Jpmorgan develops robot to execute trades,» Financial Times, pp. 1928–1937, 2017.
- [5] H. Yang, X.-Y. Liu, S. Zhong, and A. Walid, «Deep reinforcement learning for automated stock trading: An ensemble strategy,» in Proceedings of the First ACM International Conference on AI in Finance, 2020, pp. 1–8.
- [6] J. Roa-Vicens, Y. Wang, V. Mison, Y. Gal, and R. Silva, «Adversarial recovery of agent rewards from latent spaces of the limit order book,» arXiv preprint arXiv:1912.04242, 2019.
- [7] C. Szegedy, W. Zaremba, I. Sutskever, J. Bruna, D. Erhan, I. Goodfellow, and R. Fergus, «Intriguing properties of neural networks,» arXiv preprint arXiv:1312.6199, 2013.
- [8] S. Huang, N. Papernot, I. Goodfellow, Y. Duan, and P. Abbeel, «Adversarial attacks on neural network policies,» arXiv preprint arXiv:1702.02284, 2017.
- [9] A. Gleave, M. Dennis, C. Wild, N. Kant, S. Levine, and S. Russell, «Adversarial policies: Attacking deep reinforcement learning,» arXiv preprint arXiv:1905.10615, 2019.
- [10] D. Byrd, M. Hybinette, and T. H. Balch, «Abides: Towards high-fidelity multi-agent market simulation,» in Association for Computing Machinery, ser. SIGSIM-PADS ’20, New York, NY, USA, 2020, p. 11–22.
- [11] Replication package. [Online]. Available: https://anonymous.4open.science/r/ADRL-B72D/README.md
- [12] T. G. Fischer, «Reinforcement learning in financial markets-a survey,» FAU Discussion Papers in Economics, Tech. Rep., 2018.
- [13] T. P. Lillicrap, J. J. Hunt, A. Pritzel, N. Heess, T. Erez, Y. Tassa, D. Silver, and D. Wierstra, «Continuous control with deep reinforcement learning,» arXiv preprint arXiv:1509.02971, 2015.
- [14] V. Mnih, A. P. Badia, M. Mirza, A. Graves, T. Lillicrap, T. Harley, D. Silver, and K. Kavukcuoglu, «Asynchronous methods for deep reinforcement learning,» in International conference on machine learning. PMLR, 2016, pp. 1928–1937.
- [15] T. T.-L. Chong, W.-K. Ng, and V. K.-S. Liew, «Revisiting the performance of macd and rsi oscillators,» Journal of risk and financial management, vol. 7, no. 1, pp. 1–12, 2014.
- [16] M. Maitah, P. Prochazka, M. Cermak, and K. Šrédl, «Commodity channel index: Evaluation of trading rule of agricultural commodities,» International Journal of Economics and Financial Issues, vol. 6, no. 1, pp. 176–178, 2016.
- [17] N. Papernot, P. McDaniel, I. Goodfellow, S. Jha, Z. B. Celik, and A. Swami, «Practical black-box attacks against machine learning,» in Proceedings of the 2017 ACM on Asia conference on computer and communications security, 2017, pp. 506–519.
- [18] I. J. Goodfellow, J. Shlens, and C. Szegedy, «Explaining and harnessing adversarial examples,» arXiv preprint arXiv:1412.6572, 2014.
- [19] H. Van Hasselt, A. Guez, and D. Silver, «Deep reinforcement learning with double q-learning,» in Proceedings of the AAAI conference on artificial intelligence, vol. 30, no. 1, 2016.
- [20] J. Schulman, S. Levine, P. Abbeel, M. Jordan, and P. Moritz, «Trust region policy optimization,» in International conference on machine learning. PMLR, 2015, pp. 1889–1897.
- [21] Y.-Y. Chen, C.-T. Chen, C.-Y. Sang, Y.-C. Yang, and S.-H. Huang, «Adversarial attacks against reinforcement learning-based portfolio management strategy,» IEEE Access, vol. 9, pp. 50 667–50 685, 2021.
- [22] Y. Faghan, N. Piazza, V. Behzadan, and A. Fathi, «Adversarial attacks on deep algorithmic trading policies,» arXiv preprint arXiv:2010.11388, 2020.
- [23] M. Goldblum, A. Schwarzschild, A. Patel, and T. Goldstein, «Adversarial attacks on machine learning systems for high-frequency trading,» in Proceedings of the Second ACM International Conference on AI in Finance, 2021, pp. 1–9.
- [24] V. Behzadan and A. Munir, «Adversarial reinforcement learning framework for benchmarking collision avoidance mechanisms in autonomous vehicles,» IEEE Intelligent Transportation Systems Magazine, vol. 13, no. 2, pp. 236–241, 2019.
- [25] M. Lanctot, V. Zambaldi, A. Gruslys, A. Lazaridou, K. Tuyls, J. Pérolat, D. Silver, and T. Graepel, «A unified game-theoretic approach to multiagent reinforcement learning,» Advances in neural information processing systems, vol. 30, 2017.
Оригинал статьи: Ataiefard and Hemmati, «Gray-box Adversarial Attack of Deep Reinforcement Learning-based Trading Agents», arXiv:2309.14615