Gray-box adversarial attack на торговых агентов на глубоком обучении с подкреплением

6.5/10

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 жертвы).

Вклад работы:

Репликационный пакет, включая архитектуры сетей и гиперпараметры, опубликован (Ataiefard and Hemmati 2023).

2. Предыстория

2.1 Deep RL для торговли

Общая задача оптимизации торговли на фондовом рынке формулируется как Markov Decision Process, решаемый алгоритмами deep reinforcement learning. Цель оптимизации RL agent — максимизация прибыли. Элементы RL-задачи:

Наиболее популярные 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:

  1. Baseline Agent: типичная actor-critic модель с двухголовой fully-connected neural network: одна голова — policy output (action), другая — value function.
  2. 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$.
  3. 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).

Рисунок 1
Рисунок 1. Обзор лимитного стакана (LOB), на который влияют adversarial attacks в архитектуре торговой среды.

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], \]

где:

Вектор пересчитывается и подаётся на 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).

Рисунок 2
Рисунок 2. Returns industrial trader в примере эпизода и returns того же агента в том же эпизоде под атакой предложенного adversary.

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 трейдера. Две метрики:

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 ModelMarketNatural $\bar R$Attack $\bar R$Best Attack $\bar R$$\Delta_{\mathrm{episode}}$Best $\Delta_{\mathrm{episode}}$
Baselineconfig10.541−0.484−2.03146.9%51.2%
Baselineconfig20.318−1.093−1.59447.3%52.0%
Baselineconfig30.332−1.146−2.30939.8%44.8%
Ensembleconfig10.727−0.051−0.99430.2%34.4%
Ensembleconfig20.611−0.823−2.06227.4%32.1%
Ensembleconfig30.698−0.983−2.13728.5%29.6%
Industrialconfig10.598−0.291−1.00322.1%36.4%
Industrialconfig20.919−1.094−1.87516.2%17.9%
Industrialconfig30.859−0.432−0.97625.3%27.7%

Таблица II. Расстояния (и p-values) Natural $\bar R$ и Attack $\bar R$.

Trader ModelKolmogorov–Smirnov Distancep-value
Baseline0.728.7593e−13
Ensemble0.646.0786e−10
Industrial0.544.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 ModelMarketCRAORBest CR
Baselineconfig182.88%118.9%88.30%
Baselineconfig295.36%164.1%101.43%
Baselineconfig385.59%135.2%90.09%
Ensembleconfig174.13%90.5%75.81%
Ensembleconfig275.33%97.8%77.64%
Ensembleconfig373.92%92.7%77.72%
Industrialconfig171.05%97.9%81.14%
Industrialconfig263.68%73.5%74.84%
Industrialconfig365.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 ModelMarketVictim CRAdversary Portfolio LossMean Episode RewardsLoss Hit Ratio
Baselineconfig182.88%16.04%0.893117.932%
Baselineconfig295.36%13.82%0.943412.146%
Baselineconfig385.59%20.13%0.978916.753%
Ensembleconfig174.13%28.54%0.910314.301%
Ensembleconfig275.33%27.76%0.952014.166%
Ensembleconfig373.92%21.49%0.844715.353%
Industrialconfig171.05%37.66%0.893910.099%
Industrialconfig263.68%39.23%0.894213.993%
Industrialconfig365.74%43.17%0.900713.067%

Предыдущие исследования 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 о возможных рисках.

Литература

Оригинал статьи: Ataiefard and Hemmati, «Gray-box Adversarial Attack of Deep Reinforcement Learning-based Trading Agents», arXiv:2309.14615