Проект UTMIST: Лиза Ю, Фернандо Асад, Эндрю Хуанг, Элисс Хуэй, Ананд Карки, Суджит Магеш, Гетинг (Дженис) Цинь, Питер Ши, Дав Врат, Ник Вуд, Рэндольф Чжан.

WallSteetBots2 — это 6-месячный проект по прогнозированию цен на криптовалюту с использованием твитов в Твиттере и рыночных данных с применением методов машинного обучения.

1. История

1.1. Мотивация

В настоящее время существует высокий уровень интереса и инвестиций в криптовалютные рынки, но сложный и постоянно меняющийся характер этих рынков затрудняет для инвесторов точное прогнозирование движения цен. По сравнению с другими финансовыми инструментами, такими как акции, облигации и опционы, криптовалюты также имеют высококачественные рыночные данные, которые находятся в свободном доступе для общественности.

В результате растет интерес к применению методов машинного обучения и обработки естественного языка для прогнозирования цен на криптовалюту. Алгоритмы машинного обучения предназначены для изучения закономерностей и взаимосвязей в данных, что может быть полезно для прогнозирования направления и величины будущих движений цен на криптовалюту. С другой стороны, обработка естественного языка может использоваться для анализа настроений в социальных сетях и новостных статей, касающихся криптовалют, что может помочь получить представление о рыночных тенденциях.

Наши модели обучаются на данных, полученных из Twitter, а также на высокочастотных рыночных данных из CoinAPI, Alpaca и других источников.

В этой статье будут освещены наши исследования по прогнозированию краткосрочной и среднесрочной доходности на криптовалютных рынках с использованием методов машинного обучения и обработки естественного языка.

1.2. Предыдущая версия WSB

Этот WallStreetBots-Crypto является продолжением прошлогодней итерации проекта WallStreeBots. Ранее WSB создал ИИ для торговли акциями, который пытался предсказать цену в следующую минуту обычных мем-акций, таких как GME, на основе настроений Reddit в реальном времени, и внедрил несколько методов оптимизации портфеля для периодической перебалансировки портфеля для оптимизации риска и доходности. Весь пайплайн был реализован на терминале WallStreetBots (http://www.wallstreetbots.org/). См. скриншот приборной панели терминала ниже.

Хотя прошлогодний проект WSB смог достичь точности предсказания направления более 66%, мы обнаружили, что самым большим ограничением было отсутствие общедоступных высококачественных рыночных данных по акциям. Эти данные, такие как данные биржевых торгов, доступны только профессиональным торговым фирмам. Следовательно, в этой итерации проекта мы переключаем наше внимание на прогнозирование цен на криптовалюту, учитывая их прозрачный характер.

1.3. Предыдущая академическая работа

1.3.1 Анализ настроений в Твиттере

В последние годы исследователи начали замечать возможности обработки естественного языка (NLP) и анализа текста для прогнозирования финансового рынка. Использование настроений пользователей на платформах социальных сетей для прогнозирования различных финансовых активов стало активной областью исследований. Одной из наиболее широко используемых социальных сетей в этом исследовании является Twitter. На этой платформе пользователи могут публиковать короткие тексты, называемые «твитами», которые содержат чувства и настроения. С момента основания Twitter в 2006 году он становится все более популярным. В 2022 году Twitter объявил, что у него будет 368 миллионов активных пользователей в месяц. Из-за популярности Твиттера было проведено много исследований по определению настроений в твитах. Например, Valence Aware Dictionary for Sentiment Reasoning (VADER) представляет собой основанную на правилах модель анализа настроений в тексте социальных сетей, которая достигает оценки F1 0,96, превосходя отдельных людей с оценкой F1 0,84. Однако есть исследования, показывающие, что около 14% контента Twitter для биткойнов отправляется ботами (Kraaijeveld and Smedt, 2020). Тем не менее, предыдущие исследования Antweiler and Frank (2004) и Bollen et al. (2011) демонстрирует, что использование текстов социальных сетей может помочь в прогнозировании рынка.

1.3.2 Прогнозирование и прогнозирование цены биткойна

В 2017 году Стенквист и Джейкоб Лённо исследовали использование анализа настроений в данных Twitter, связанных с биткойнами, для прогнозирования колебаний его цен. В их работе представлена ​​наивная модель прогнозирования, которая показывает, что наиболее точное агрегированное время для прогнозов составляет 1 час, предсказывая изменение цены биткойна на 4 часа в будущем. Более того, Малки и Фернандес (2019) изучили различные модели машинного обучения, чтобы предсказать направление цены, при этом лучшая модель в их работе достигла точности направления 62,91%. Несколько моделей машинного обучения также используются в работе Chen et al. (2020), результаты показывают, что модель с долговременной кратковременной памятью (LSTM) обеспечивает лучшую производительность, чем другие методы, использующие предыдущий обменный курс, такие как авторегрессионное интегрированное скользящее среднее (ARIMA), регрессия опорных векторов (SVM) и т. д. В том же году Kraaijeveld and Smedt (2020) показали, что настроения в Твиттере позволяют предсказать цену биткойнов, биткойн-кэш и лайткойн с помощью проверки причинно-следственной связи по Грейнджеру.

1.4. Торговая интуиция

В дополнение к соответствующим академическим исследованиям также важно учитывать торговую интуицию, которая объясняет фундаментальные движения цен на криптовалюту, обусловленные рыночным спросом и предложением. На протяжении всего проекта мы следим за тем, чтобы наши результаты соответствовали торговой интуиции.

2. Сбор данных

2.1. Твиты для НЛП

2.1.1. Очистка и очистка

Был разработан и выполнен скрипт парсинга твитов с использованием Snscrape для сбора данных по 14 различным криптовалютам (однако в рамках этого проекта изучались только прогнозы цен на биткойны). Сценарию требовался указанный диапазон дат, и он получал 100 твитов в час в пределах этого диапазона. Сценарий включает в себя набор эвристик для защиты от спама в учетных записях, публикующих твиты в Twitter. Эвристика одобрила учетные записи, которые были проверены, и отклонила учетные записи с низким соотношением подписчиков к количеству подписчиков, особенно те, у которых менее 10% подписчиков по сравнению с их подписками, учетные записи, которые в среднем публикуют твиты более 200 раз в день, и учетные записи, которые следуют максимальному количеству. других учетных записей в соответствии с требованиями Twitter.

2.1.2. Предварительная обработка NLP — Маркировка настроений твитов

Необработанный набор данных твитов был обработан с использованием двух предварительно обученных моделей анализа настроений НЛП в Python. В качестве моделей использовались VADER (словарь Valence Aware Dictionary for sEntiment Reasoning) и реализация модели Google T5, настроенная для распознавания эмоций.

VADER предоставляет единую функцию («sentiment_score»), которая измеряет общую положительную/отрицательную оценку твита, представленную в виде числа с плавающей запятой в диапазоне (-1, +1), где -1 указывает на высокую степень отрицательности, а +1 — на высокую. позитив.

Точно настроенная модель Google T5 предоставляет шесть функций, которые измеряют интенсивность определенных эмоций: счастья, грусти, гнева, страха и удивления. Эти функции представлены в виде чисел с плавающей запятой в диапазоне (0, 1), где 0 означает отсутствие обнаружения, а 1 — сильное обнаружение.

Несколько экземпляров облачных вычислений из Google Cloud Platform использовались для применения двух выбранных моделей к полному набору данных твитов.

2.1.3. Создание обработанного набора данных

Наборы данных с усредненными характеристиками NLP были созданы для различных частотных интервалов (1 час, 4 часа, 12 часов, 1 день) и объединены с соответствующей частотой данных о ценах на биткойн на бирже Binance, предоставленных CoinAPI. Эти наборы данных обеспечивают измерения средней интенсивности функций для каждого заданного временного интервала, что позволяет коррелировать функции НЛП с фактическим возвратом журнала биткойнов за каждый период. Ниже приведена таблица, содержащая функции, полученные путем манипулирования необработанными метриками тональности через определенные интервалы.

2.2. Рыночные данные

Проект собрал различные рыночные данные, сначала выдвинув гипотезу, основанную на торговой интуиции, относительно того, почему определенные данные должны быть движущей силой цены биткойна. Затем для этой функции проводится исследовательский кросс-корреляционный анализ (в момент времени t), и журнал Биткойн возвращает данные со смещением (в момент времени t + смещение смещения) для проверки линейных отношений. Команда также провела проверки нелинейной корреляции на основе проверки гипотез. Мы не сообщаем о каких-либо результатах нелинейной корреляции, поскольку они не были значимыми. Однако мы отмечаем, что реализация теста нелинейной корреляции имела высокий уровень ложноотрицательных результатов. См. таблицу ниже для характеристик и результатов теста корреляции.

В процессе сбора рыночных данных мы отмечаем, в частности, сценарии Python, используемые для сбора функций данных из CoinAPI. Скрипты были написаны для генерации ключей CoinAPI, сбора и предварительной обработки данных. Первый скрипт генерирует ключи CoinAPI и сохраняет их для последующего использования. Второй скрипт использовался для получения данных о ценах на биткойны в USDT и Ethereum в USDT с бирж Binance и FTX, которые были получены из CoinAPI. Обратите внимание, что мы собрали данные как о Биткойне, так и об Эфириуме на биржах Binance и FTX, потому что мы хотели проверить, есть ли какие-либо отношения между опережением и запаздыванием между ценами на две монеты на двух разных биржах. Из-за того, что каждый ключ может отправлять 100 запросов каждые 24 часа, сценарий использовал скользящее окно, чтобы гарантировать, что каждый ключ используется в соответствии с его возможностями, не сталкиваясь с какой-либо ошибкой превышения лимита запросов. Данные были собраны и предварительно обработаны с замечательной скоростью 1 миллион записей в час, что эквивалентно 1,9 годам данных в час. Затем данные очищались и вычислялись логарифмические возвращаемые значения. Функции для собираемых данных включали«Time_period_start», «Time_period_end», «Asset_ID», «Count», «Open», «High», «Low», «Close», «Volume» и «Вернисаж», с периодом = 1 минута. Эти функции использовались для расчета дополнительных функций, которые включали «Log_returns», который представляет собой естественный логарифм цены закрытия, деленный на цену открытия. Другая предварительная обработка включала преобразование временных меток из формата UTC в формат UNIX.

Подобные скрипты Python использовались для сбора дополнительной посекундной книги лимитных ордеров Биткойн и исторических данных о сделках. Интуитивно эти данные показывают, сколько людей готовы купить или продать, какое количество биткойнов и по какой цене. Это дает представление о спросе и предложении биткойнов, которые фундаментально влияют на любые изменения цен. Пример книги лимитных ордеров (также известной как торговая лестница) показан на следующем рисунке.

Для цены в каждой строке левый столбец показывает совокупный объем, который люди на бирже готовы купить по указанной цене, а правый столбец показывает совокупный объем, который люди готовы продать по указанной цене. На предыдущем рисунке мы назвали 2168,00 ценой продажи уровня 1, а 290 — объемом продажи уровня 1. Точно так же мы называем 2167,75 ценой предложения 1-го уровня, а 477 — объемом предложения 1-го уровня. Из CoinAPI мы собрали 2 уровня данных книги для Биткойн на бирже Binance (функции включают «аск_lvl1_price», «аск_lvl1_size», «аск_lvl2_цена», «аск_lvl2_size», «bids_lvl1_price», «bids_lvl1_size», «bids_lvl2_price» , «bids_lvl2_size»). Из них мы дополнительно разработали следующие функции:

  • "bid_ask_spread" = "asks_lvl1_price" — "bids_lvl1_price"
  • "bid_ask_strength" = "bids_lvl1_size" + "bids_lvl2_size" — "asks_lvl1_size" — "asks_lvl2_size"

В дополнение к лимитной книге, которую можно рассматривать как снимки в начале каждой секунды, мы также собрали агрегированные данные для всех сделок, которые были сопоставлены и выполнены в течение каждого интервала в секунду, получив следующие функции:

  • «общий_размер_покупки»
  • «общий_размер_продажи»
  • «buy_sell_strength» = «total_buy_size» — «total_sell_size»
  • «средняя_торговая_цена»
  • «минимальная_торговая_цена»
  • «max_trade_price»

В целом мы видим, что функции блока Биткойн и функции книги и торговли имеют значительную корреляцию с запаздывающими доходами журнала Биткойн. Поэтому мы приступили к обучению различных моделей машинного обучения этим функциям.

3. Подбор моделей машинного обучения

Основываясь на нашем выборе входных функций во время t, мы пытаемся предсказать логарифмическую доходность Биткойна во время t+1, где каждый временной интервал может составлять одну секунду, одну минуту, один час или один день в зависимости от набора данных. Это проблема регрессии. Все гиперпараметры модели настраиваются с помощью поиска по сетке, если не указано иное. На данном этапе мы оценивали только модели, основанные на точности направления и MSE. В следующем разделе мы приступим к более тщательной оценке многообещающих моделей с использованием дополнительных показателей.

3.1. Базовая модель — простая скользящая средняя

Мы рассмотрели простую модель скользящего среднего с размером окна 3 в качестве базовой модели и достигли точности направления 50,6% и MSE 2,548e-06.

3.2. Модель ARMA с исторической доходностью

Рассмотрены одномерные модели класса ARMA. Тестирование проводилось на наборе данных G-Research Kaggle по лог-возвратам биткойнов с использованием простой модели ARMA с автоматическим выбором данных и сезонными задержками. MSE в тестовом наборе данных был 1,32e-06, а точность направления вне выборки составляет 51%. Следует отметить, что из выборочных прогнозов для прогнозирования использовалась только первая точка данных тестового набора данных.

3.3. Машина опорных векторов (SVM) с данными о чувствах НЛП

Один из первоначальных подходов к прогнозированию логарифмической доходности цен на биткойны — это использование машин опорных векторов (SVM) для средних оценок тональности и настроения в час и день в собранных нами данных твитов. В частности, есть пять настроений: счастливое, грустное, злое, удивленное и страх. После разделения набора данных на основе количества подписчиков соответствующего пользователя Twitter для каждого твита получается 18 матриц. В частности, мы использовали кратное среднее количество подписчиков для разделения данных. Твиты делятся на три категории: низкие (ниже 2/3 среднего числа подписчиков), средние (от диапазона выше или равного 2/3 среднего числа подписчиков и ниже или равного 3/2). среднего числа подписчиков) и высокое (более 3/2 среднего числа подписчиков). С помощью модели регрессии опорных векторов (SVR) из библиотеки scikit-learn на Python, настраивая параметр регуляризации и параметр допуска, модель достигает точности направления 56,3% со среднеквадратичной ошибкой 0,00665 и средней абсолютной ошибкой 0,0522. при использовании ежедневных данных. Однако SVM дал худшие результаты, когда мы сократили временной интервал данных до одного часа, модель теперь имеет точность направления 54,0%, но MSE 1,61 и MAE 0,807. Это увеличение ошибки означает, что SVM с линейным ядром не фиксирует характеристики данных из-за их сложности.

3.4. Модель XGBoost с учетной записью NLP, твитом, настроением и данными об объеме/цене

Модель XGBoost (XGB) была обучена на почасовых совокупных средствах учетных записей (подписчики, подписчики), твитах (лайки, ответы, ретвиты) и настроении (счастливом, грустном, страхе, гневе, удивлении) твитов, извлеченных в дополнение к данные об объеме и цене биткойнов. Это дало MSE 3,104e-05 и точность 53,1%.

3.5. LSTM с данными о чувствах НЛП

Обработанные данные NLP, описанные выше, использовались для обучения моделей Keras LSTM для каждого из указанных интервалов. Была использована модель LSTM со 100 единицами, за которыми следовали отсев и плотный слой, а гиперпараметры были настроены с использованием байесовского поиска гиперпараметров, доступного в Weights and Biases. Входными переменными были 15 функций, описанных выше, а также возвращаемые значения журнала (за предыдущие периоды). Было использовано разделение обучения/тестирования 2:1, позволяющее протестировать производительность модели на ~1 году невидимых исторических данных о криптовалюте. .

Период тестирования наиболее эффективной модели, обученной на 24-часовых интервалах усредненного настроения, дал общую точность направления 56% и среднеквадратичную ошибку 0,0013.

Одной заметной тенденцией, которую мы постоянно наблюдали в наших моделях, была сильная корреляция между более длинными интервалами настроений и улучшенными торговыми показателями. Модель с наихудшими показателями была обучена на интервалах настроений в 1 час, а модель с лучшими показателями — на 24-часовом интервале. Это имеет несколько возможных последствий: возможно, влияние настроений в Твиттере на рынок криптовалюты происходит с задержкой и, как правило, проявляется намного позже публикации твитов. В качестве альтернативы возможно, что усредненные метрики настроений являются более статистически значимыми при выборке через более длительные интервалы времени и, следовательно, дают лучшее представление о направлении, в котором пойдет рынок.

3.6. Линейная регрессия с данными о цене и объеме

Модель линейной регрессии используется для прогнозирования доходности журнала биткойнов с использованием данных о цене и объеме. Существуют следующие модельные допущения для гауссовой линейной модели: линейность, равная дисперсия, нормальность и независимость. На практике логарифмическая доходность цены акций приблизительно соответствует распределению Гаусса. В этом случае предполагается, что такое же распределение применяется к криптовалюте, для которой выполняются нормальность и равная дисперсия. Однако никакой другой информации о линейности и независимости нет. Необходимо создать регрессионную модель, чтобы проверить соответствие линейной модели. Перед подгонкой модели необходимо очистить набор данных. Основной проблемой в наборе данных является мультиколлинеарность. Мультиколлинеарность возникает, когда есть переменные, которые имеют высокую корреляцию друг с другом. В обучающем наборе данных можно найти корреляцию между количеством и объемом, и количество в конечном итоге отбрасывается. Окончательная модель имеет объем, максимум, минимум, открытие и закрытие в качестве параметров, которые предсказывают логарифмическую доходность. Параметры имеют статистическую значимость. Однако линейная корреляция между логарифмическим доходом и ковариатами очень низкая (все ниже 0,01). Это говорит о том, что линейная модель не является хорошим выбором для прогнозирования логарифмической доходности. MSE составляет 3.16044e-06, а точность направления составляет 50,6%.

3.7. LSTM с одной переменной и ценовыми данными

Модель LSTM с одной переменной с 50 единицами, отсеваемым слоем и плотным слоем была обучена прогнозировать цены биткойнов в следующую минуту на основе исторических результатов журнала биткойнов, где размер окна равен 10. Модель была обучена с использованием стохастического градиентного спуска и потери MSE. . Модель была настроена с помощью поиска по сетке. Окончательная точность направления теста составила 49,8%, а MSE - 4,95e-07.

3.8. Многовариантный LSTM с данными о книгах и сделках

Многопараметрическая модель LSTM со 100 единицами, отсеваемым слоем и плотным слоем была обучена на наборе данных книги и сделок для прогнозирования средней, минимальной и максимальной торговой цены Биткойна в следующую секунду путем прогнозирования логарифмических возвратов этих значений. Преимущество прогнозирования не только центра, но и минимальных/максимальных цен сделок позволяет нам прогнозировать диапазон вероятных цен сделок в следующую секунду. Эта информация может быть полезна маркет-мейкерам, чтобы удалить свои котировки, когда книга вот-вот будет съедена, или стать агрессором и опережать грядущие тренды. Однако для целей этого проекта мы оцениваем результаты только прогнозов средней цены, чтобы обеспечить совместимость с другими изученными наборами данных/моделями. Многовариантные признаки были преобразованы из данных временных рядов с использованием размера окна 10. Окончательная модель была обучена с использованием оптимизатора Адама (SGD дал субоптимальные результаты) с затухающей скоростью обучения и потерей MSE. Модель была настроена с помощью поиска по сетке. Окончательная точность направления теста составила 66,6%, а MSE - 1,45e-09.

3.9. HMM с данными о книгах и сделках

Многомерная скрытая марковская модель Гаусса с 25 скрытыми состояниями также была приспособлена к книге биткойнов и набору данных о сделках, чтобы предсказать среднюю, минимальную и максимальную торговую цену биткойна в следующую секунду путем прогнозирования логарифмических возвратов этих значений. Одним из важных шагов предварительной обработки данных перед подбором модели является нормализация всех признаков до достаточно малого диапазона. Например, цена продажи книги уровня 1 преобразуется в номинальную разницу между ней и средней ценой сделки. Это позволяет модели HMM лучше соответствовать данным, используя небольшое конечное число состояний, поскольку модель предполагает, что скрытые состояния являются дискретными. Окончательная точность направления теста составляет 57,4%, а MSE - 1,89e-09.

4. Дальнейшая оценка LSTM с данными о чувствах НЛП и LSTM с данными о книгах и сделках.

Нашей лучшей моделью, приспособленной к данным NLP, была модель LSTM, а лучшей моделью, приспособленной к рыночным данным, была LSTM с данными о книгах и сделках. Давайте оценим эти две модели более тщательно, используя больше показателей, чем просто точность направления и MSE. Важно отметить разницу в частоте данных между двумя моделями. LSTM, адаптированный к настроениям NLP, прогнозирует ежедневную доходность журнала, тогда как LSTM, адаптированный к набору данных книг и сделок, прогнозирует доходность журнала посекундно. Прогнозирование более длинных интервалов — более сложная задача, поэтому важно помнить об этом при непосредственном сравнении производительности двух моделей.

4.1. Показатели оценки эффективности

Показатели оценки необходимы для правильной оценки производительности каждой из наших моделей. В этом проекте мы будем использовать два основных типа метрик: финансовые и статистические.

4.1.1. Финансовые показатели

Финансовые показатели очень полезны для определения эффективности моделей в контексте риска и прибыльности на рынке. Мы построили график кумулятивной доходности гипотетического портфеля на 1 доллар с течением времени с реинвестированием на каждом временном шаге, когда весь портфель занимает либо длинную, либо короткую позицию, основываясь на прогнозах нашей модели. Это можно сравнить с доходностью эталонного портфеля владения или продажи биткойнов на 1 доллар за тот же инвестиционный период. Если бы мы хотели свести к минимуму риск неправильных прогнозов, мы могли бы рассмотреть значение отсечения, при котором наш гипотетический портфель занимал бы длинную/короткую позицию только в том случае, если прогнозируемая доходность больше, чем отсечение. Эта гипотетическая кривая доходности портфеля также может быть проверена на наличие больших просадок или колебаний, что обеспечивает стабильную доходность с течением времени. Мы также сообщаем о максимальной просадке такого портфеля, его коэффициенте Шарпа и коэффициенте Сортино (коэффициент Сортино наказывает только риск, связанный с отрицательной доходностью, а не с положительной). Как правило, модель с коэффициентом Шарпа больше 1 считается хорошей.

4.1.2. Статистические показатели

В дополнение к финансовым показателям мы также рассмотрели статистические показатели, включая прогнозируемую точность направления, MSE, матрицу путаницы и оценку F1. Мы также визуализировали диаграмму рассеяния фактических и прогнозируемых результатов журнала, распределение неправильных прогнозов и некоторые выборочные прогнозы.

4.2. Производительность LSTM на основе данных о чувствах НЛП

Для LSTM, обученного на данных настроений НЛП (24-часовой интервал), итоговая точность направления теста составила 56,5%, а MSE — 0,0013. Гипотетический портфель в 1 доллар, который торгуется с реинвестированием с использованием наших прогнозов в течение тестового периода ~ 400 дней, принес примерно 7% прибыли, превзойдя холдинг биткойнов примерно в 6 раз. Портфель имеет коэффициент Шарпа 0,154, коэффициент Сортино 0,163 и максимальную просадку 15,38%. См. ниже виноград для визуализации некоторых прогнозов возврата журнала и матрицы путаницы, если мы рассматриваем это как проблему двоичной классификации. Оценка F1 составляет 0,564.

4.3. Производительность LSTM на основе данных о книгах и сделках

Для LSTM, обученного на данных книги и торговли, точность направления конечного теста составила 66,6%, а MSE - 1,45e-09. Гипотетический портфель в 1 доллар, который торгуется с реинвестированием с использованием наших прогнозов в течение периода тестирования ~ 3500 секунд, принес примерно 5% прибыли, превзойдя биткойн в 47 раз. Портфель имеет коэффициент Шарпа 0,32, коэффициент Сортино 0,48 и максимальную просадку 0,02%. Если мы будем торговать только на основе сигналов прогнозируемой доходности выше порога отсечения, мы сможем получить коэффициент Шарпа выше 1,2 и коэффициент Сортино выше 2,8. См. графики ниже для визуализации некоторых прогнозов возврата журнала и матрицы путаницы, если мы рассматриваем это как проблему бинарной классификации. Оценка F1 составляет 0,625. Основываясь на распределении процентов неправильных прогнозов, мы видим, что много неправильных прогнозов происходит, когда фактическое движение цены биткойна близко к 0. Это может быть связано с тем, что фактическое небольшое движение фактической цены связано с шумом.

Учитывая высокую производительность обеих моделей, мы задались вопросом, приведет ли объединение обоих наборов данных к лучшим результатам, чем использование обеих моделей по отдельности. Наборы данных имеют разную частоту; данные nlp представляются почасово, а данные книги/торговли — в секундах. Из-за временных ограничений проекта мы объединили два набора данных, повторив точку данных настроений НЛП для каждой точки данных книги / сделки. В результате для каждой точки данных в объединенном наборе данных будут самые последние данные nlp, которые строго предшествуют точке данных, чтобы избежать смещения вперед. Комбинированный набор данных использовался для обучения многопараметрической модели LSTM. Однако результат хуже, чем у модели LSTM только с данными книг и сделок. Этому есть возможные объяснения: точки данных nlp наивно повторяются, и вместо этого может быть более подходящим позиционное вложение с временным кодированием. Учитывая разницу в частоте между двумя наборами данных, информация точки данных nlp может вводить в заблуждение для точек данных, которые находятся «дальше» от точки данных nlp.

5. Заключительные мысли

5.1. Ограничения

На данный момент мы показали, что наша модель и торговая стратегия эффективны и способны приносить огромную прибыль всего за несколько часов. Однако есть несколько ограничений, которые трейдеры должны учитывать при реализации этой модели и стратегии в режиме реального времени.

Одним из существенных ограничений моделей высокочастотной торговли является требование данных в реальном времени. Эти данные необходимы для точных прогнозов, но они не всегда могут быть легко доступны, а некоторые источники данных могут быть защищены платным доступом. Автоматическое получение и анализ данных в режиме реального времени может быть сложным и трудоемким процессом, что ограничивает доступность этого типа торговли.

Еще одним важным ограничением, которое следует учитывать, являются торговые издержки. Высокочастотная торговля требует совершения большого количества сделок за короткий период, что влечет за собой дополнительные торговые издержки. Эти затраты могут быстро возрасти, и если их не учитывать, они могут значительно снизить прибыль, получаемую стратегией. Более того, розничные трейдеры часто платят более высокую комиссию за торговлю, чем институциональные трейдеры, что еще больше увеличивает стоимость торговли.

Кроме того, недавние изменения в политике API Twitter наложили ограничения на данные, доступные через платформу. Twitter стал ключевым источником данных для обработки естественного языка (NLP), которая является неотъемлемой частью высокочастотного трейдинга. Недоступность данных из Twitter ограничивает источники данных, доступных для анализа, что снижает эффективность стратегии. Это также вызывает вопросы о скорости, с которой данные будут доступны, и их точности, поскольку ключевой особенностью модели является немедленная доступность данных.

Кроме того, модели высокочастотной торговли требуют значительных вычислительных мощностей, что может оказаться невозможным для розничных трейдеров или небольших торговых фирм. Предсказанная мощность стала возможной благодаря сложным нейронным сетям, которые требуют большого вычислительного потенциала, который может быть недоступен по запросу. Необходимость в соединениях с малой задержкой еще больше усложняет требования к инфраструктуре. Достижение низкой задержки необходимо для обеспечения того, чтобы сделки выполнялись быстро, в нужное время и по нужной цене. Однако реализация инфраструктуры, необходимой для соединений с малой задержкой, может быть дорогостоящей и сложной задачей.

В целом, у этой стратегии есть ряд ограничений, но все они непреодолимы. Мы уверены, что при правильной стратегии и достаточном капитале эта модель и стратегия могут быть реализованы с прибылью.

5.2. Дальнейшие действия

Дальнейшие шаги проекта могут включать попытки объединить наиболее многообещающие модели в одну модель или ансамбль моделей. Также можно было бы проделать дополнительную работу по объединению наборов данных с разной частотой. Количество функций данных также можно уменьшить с помощью методов уменьшения размерности, таких как PCA.

Узнайте больше о WSB2 и других проектах ML на странице проекта UTMIST. Вы также можете найти презентацию WSB2 (и других проектов UTMIST) здесь.

6. Цитирование

https://ojs.aaai.org/index.php/icwsm/article/view/14550

https://www.sciencedirect.com/science/article/pii/S104244312030072X

https://onlinelibrary.wiley.com/doi/10.1111/j.1540-6261.2004.00662.x

https://www.sciencedirect.com/science/article/pii/S187775031100007X

http://www.diva-portal.org/smash/get/diva2:1110776/FULLTEXT01.pdf

https://www.sciencedirect.com/science/article/pii/S1568494618306707

https://doi.org/10.1016/j.ijforecast.2020.02.008