Дипломная работа: Прогнозирование финансовых временных рядов с использованием экономического календаря

Внимание! Если размещение файла нарушает Ваши авторские права, то обязательно сообщите нам

Стратегия «Trade 1»: сигналы на покупку или продажу валютной пары формируются из условия, что опубликованный показатель оказался выше или ниже ожиданий аналитиков с учетом того, к какой стране относится новость.

Рисунок 1. Генерация сигналов buy / sell для 1 стратегии

Стратегия «Trade 2»: сигналы на покупку или продажу валютной пары формируются из условия, что опубликованный показатель оказался выше или ниже его предыдущего значения с учетом того, положителен или отрицателен прирост / снижение для валюты страны.

Рисунок 2. Генерация сигналов buy / sell для 2 стратегии

Стоит отметить, если фактическое значение в обоих стратегиях совпадало с прогнозным (In Line with Expectation), или с предыдущим, то генерировалось значение “no signal”, и торговля не производилась.

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

Таблица 3.

Описательные статистики доходностей с сигналов

Income_m5

Income _m15

Income _m30

Income _h1

Income _h4

Income _d1

Mean

14,18

11,88

9,85

8.10

25,79

30,75

Median

8

5

1

1

23

37

Maximum

758

805

772

657

1436

1053

Minimum

-696

-627

-639

-537

-667

-1130

Std. Dev.

85,422

91,11

99,71

109,24

198,16

366,48

Observations

607

607

607

607

607

607

Для стратегий были проанализированы диаграммы размаха (см. Приложения 2-25). Из текущего датасета были убраны моменты, когда выход новости не производил сигнала и заработка / убытка с него, по той же причине из исследования был убран Fed Interest Rate Decision (Решение ФРС по процентной ставке). Таким образом, исходя из анализа ящичковых диаграмм, наиболее прибыльными оказались новости, представленные в Таблице 4.

Таблица 4.

Новости генерирующие наибольшую прибыль с синалов

Trade 1

Новости

M5

ADP Nonfarm Employment Change; GDP; ISM Non-Manufacturing PMI; ISM Manufacturing PMI; New Home Sales; PPI; Pending Home sales; Nonfarm Payrolls; Unemployment Rate; CPI; Employment Change; RBNZ Interest Rate Decision.

M15

Core CPI; CB Consumer Confidence; Building Permits; ISM Manufacturing PMI; Pending Home sales; Nonfarm Payrolls; Unemployment Rate; CPI; Employment Change; RBNZ Interest Rate Decision.

M30

Nonfarm Payrolls; Pending Home Sales; Unemployment Rate; CPI; Employment Change; RBNZ Interest Rate Decision.

H1

Philadelphia Fed Manufacturing Index; Unemployment Rate; CPI; Employment Change; RBNZ Interest Rate Decision..

H4

ADP Nonfarm Employment Change; ISM Non-Manufacturing PMI; ISM Manufacturing PMI; Philadelphia Fed Manufacturing Index; Unemployment Rate; CPI; Employment Change; RBNZ Interest Rate Decision.

D1

New Home Sales; CPI; GDP; RBNZ Interest Rate Decision

Trade 2

M5

ADP Nonfarm Employment Change; New Home Sales; ISM Manufacturing PMI; ISM Non-Manufacturing PMI; Pending Home sales; Nonfarm Payrolls; Philadelphia Fed Manufacturing Index; PPI; Unemployment Rate; CPI; Employment Change; RBNZ Interest Rate Decision.

M15

Building Permits; Core CPI; Unemployment Rate; CPI; Employment Change; RBNZ Interest Rate Decision.

M30

Nonfarm Payrolls; Unemployment Rate; PPI; CPI; Employment Change; RBNZ Interest Rate Decision.

H1

Philadelphia Fed Manufacturing Index; Unemployment Rate; CPI; Employment Change; RBNZ Interest Rate Decision.

H4

ISM Non-Manufacturing PMI; ISM Manufacturing PMI; Philadelphia Fed Manufacturing Index; Unemployment Rate; CPI; Employment Change; RBNZ Interest Rate Decision.

D1

New Home Sales; CPI; RBNZ; GDP.

Убыточные торговые сделки не исключаются при моделировании, так как ухудшались метрики качества итоговых моделей и уменьшалась выборка, что может быть критично для XGBoost. Кроме того, опираясь на убыточные торговые сделки, можно выставлять соответствующие стоп-ордера, минимизируя потери.

2.3 Применения машинного обуения

Для моделирования в итоговый набор данных входили переменные, представленные в Таблице 5.

Таблица 5.

Переменные в модели XGBoost

Переменная

Значение

Тип

Income (m5, m15, m30, h1, h4, d1)

Доходность торговых сделок в пунктах

Целевая переменная

Country

Тип экономической новости

Категориальная переменная [1:23]

Signal

Сигнал buy / sell

Категориальная переменная

Standardized unexpected index

Индекс неопределенности

Предиктор, коэффициент

Power

Сила сигнала

Категориальная переменная

Volume (m5, m15, m30, h1, h4, d1)

Тиковые объемы

Целочисленный предиктор

Announcement

Публикации экономических новостей

Категориальная переменная

При построении логистической регрессии, где показатель income заменялся на class с бинарным выходом (1 - доход с сигнала, 2 - убыток с сигнала), (см. Приложения 26-28) было выявлено, что некоторые регрессоры не значимы для различных таймфреймов, однако для алгоритма машинного обучения их необходимо оставить, так как с этим набором переменных метрики точности были выше.

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

XGBoost - это оптимизированная распределенная библиотека повышения градиента, которая может быть использована для быстрого и точного решения многих проблем с данными. Известно, что он дает очень хорошие результаты по сравнению с другими моделями машинного обучения по многим задачам. Используемый метод известен как деревья с градиентным усилением решений. Дерево решений - это метод, используемый в классификации (чтобы определить, к какой группе принадлежит выборка) или регрессии (анализ временных рядов). Аспект машинного обучения этой модели работает путем оптимизации, которая измеряет, насколько «чист» узел. XGBoost - более устойчивая к перегрузкам и шумам, а также позволяет нам игнорировать стационарность в конкретном наборе данных.

В работе представлены результаты двух вариаций Xgboost с выходным параметром бинарной классификации и выходным параметром линейной аппроксимации.

Набор данных разделен на две части:

1. Обучающая выборка (с 03.01.2018 10:00:00 по 28.12.2018 11:00:00)

2. Тестовая выборка (с 03.01.2019 08:15:00 по 31.12.2019 10:00:00)

Таблица 6.

Xgboost с выходным параметром бинарной классификации

Торговая стратегия

Модель

Метрика точности

Итерации

profit

loss

Trade1_d1

XGBoost (log. reg.)

0,525 (158/301)

9

97

61

Trade1_h4

XGBoost (log. reg.)

0,538 (162/301)

7

95

67

Trade1_h1

XGBoost (log. reg.)

0,508 (153/301)

5

91

62

Trade1_m30

XGBoost (log. reg.)

0,525 (158/301)

19

75

83

Trade1_m15

XGBoost (log. reg.)

0,488 (147/301)

2

97

50

Trade1_m5

XGBoost (log. reg.)

0,581 (175/301)

5

122

53

Trade2_d1

XGBoost (log. reg.)

0,528 (159/301)

7

99

60

Trade2_h4

XGBoost (log. reg.)

0,542 (163/301)

5

91

72

Trade2_h1

XGBoost (log. reg.)

0,508 (153/301)

5

91

62

Trade2_m30

XGBoost (log. reg.)

0,525 (158/301)

19

75

83

Trade2_m15

XGBoost (log. reg.)

0,488 (147/301)

2

97

50

Trade2_m5

XGBoost (log. reg.)

0,581 (175/301)

5

122

53

Все модели градиентного бустинга, за исключением двух, которые работают на стратегии для 30-минутного таймфрейма показывают результат лучше, чем если бы это была модель «random choice». Наилучшая предсказательная сила у моделей на 4-х часовом и 5-минутном таймфрейме: на тестовую выборку в 301 наблюдение за 2019 год алгоритмы смогли успешно просчитать 163 и 175. Profit и Loss отвечают за количество прибыльных и убыточных сделок из подмножества тех, что смогла предсказать модель. Стоит отметить, что модели предсказывали сигналы, преимущественно приносящие положительный доход. В целом, если строго лимитировать возможные убытки и рассматривать прогнозы с точностью выше 50%, можно сделать вывод, что практически все модели дают положительный результат.

У каждой независимой переменной при проведении XGBoost есть веса, которые корректируются при очередном переобучении. Для моделей было установлено количество раундов - итераций, на каждой из которых вычисляются отклонения предсказаний уже обученного ансамбля в обучающей выборке.

Таблица 7.

Xgboost с выходным параметром линейной аппроксимации

Торговая стратегия

Модель

RMSE

Trade1_m5

XGBoost (lin. reg.)

58.27

Trade1_m15

XGBoost (lin. reg.)

51.83

Trade1_m30

XGBoost (lin. reg.)

75.07

Trade1_h1

XGBoost (lin. reg.)

121.50

Trade1_h4

XGBoost (lin. reg.)

174.33

Trade1_d1

XGBoost (lin. reg.)

381.92

Trade2_m5

XGBoost (lin. reg.)

47.03

Trade2_m15

XGBoost (lin. reg.)

74.15

Trade2_m30

XGBoost (lin. reg.)

65.77

Trade2_h1

XGBoost (lin. reg.)

103.67

Trade2_h4

XGBoost (lin. reg.)

118.48

Trade2_d1

XGBoost (lin. reg.)

395.14

Для Xgboost с выходным параметром линейной аппроксимации при оптимизации гиперпараметров было необходимо разделить выборку на обучающую и тестовую в пропорциях 9:1 соответственно. По данным из таблицы можно сказать, что лишь на младших таймфреймах алгоритм может дать какой-либо качественный результат, если говорить о точных прогнозах доходностей с сигналов, так как функция похожа на мульти заданный кусочный сплайн, или она имеет слишком специфичную параметрическую форму. Так как XGBoost имеет линейный параметр, мы не можем добиться большей аппроксимации, необходима не линейная функция, которая будет носить в себе большее пространство гипотез.

Рассматривая графики с предсказанными доходностями и оригинальными значениями (см. Приложения 29-40) можно сделать вывод о том, что практически все модели далеки от идеала и требуют более тонких настроек: улучшения гиперпараметров, увеличения выборки или дополнительных предикторов. Однако в большинстве своем, если предсказанное значение имеет знак аналогичный оригинальному, то это может расцениваться как положительный результат предсказания, не очень точный, но двигающийся в направлении реальных значений прибыли или убытка.

Тем не менее на основе обоих подходов с использованием XGBoost можно получать полезные метрики в реальном времени.

Предположим в реальном времени после выхода новости Nonfarm Payrolls (см. Приложение 10) по стратегии Trade 1 опубликованное фактическое значение оказалось хуже предыдущего. Новость пришла и Соединенных Штатов, и, так USD считается котируемой валютой в паре NZD/USD, алгоритм сгенерировал сигнал на покупку пары. В этом случае, опираясь на исторические значения доходностей сигналов по Nonfarm Payrolls на диаграммах размаха, можно выставить ордер на покупку по рынку с потенциалом прибыли на четырехчасовом промежутке: максимальное значение в пределах 450 пунктов; 25% - вероятность прибыли в 200 пунктов, 50% - прибыль в 70 пунктов. Также, опираясь на нижние квантили «ящиков с усами», можно выставлять стоп-ордера немного ниже потенциальных убытков: максимально возможный убыток - около 50 пунктов, 25% - убыток в 75 пунктов.

Если в Новой Зеландии опубликовали актуальный индекс потребительских цен (CPI), значение которого хуже предыдущего, алгоритм опираясь на стратегию Trade 2, при учете других предикторов, может сгенерировать сигнал на продажу валютной пары NZD/USD. В таком случае, если рассматривается прибыль в течение первого часа после выхода новости, можно размещать stop-loss немного ниже максимально возможного убытка в 250 - 175 пунктов, рассчитывая на прибыль от 125 до 575 пунктов с максимально возможной прибылью около 675 пунктов.

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

Теперь рассмотрим показатели, на которых модель акцентирует внимание при предсказании цены (см. Приложения 29-40). Для каждого нумерованного столбца диаграммы соответствуют предикторы: 0 - 'power', 1 - 'sui', 2- 'volume', 3 - 'country', 4 - 'signal, 5 - 'announcement'. На более низких таймфреймах модель ориентируется больше на типы сигналов (выше 40% вхождение), показатели объемов и принадлежность стране держатся на уровне вхождения около 20%. С увеличением таймфрейма модель немного уравнивает показатели, но с явным отрывом отдает предпочтение стране, которая публикует показатель (от 40 до 50%). Это может быть связано с тем, что сигналы из США более варьируются в прибыльности / убыточности стратегий, причем зачастую с одинаковыми размахами доходности и убыточности. Новости из Новой Зеландии более однонаправленны.

Источник: https://otherreferats.allbest.ru/download/1216721/