РОЗРОБКА ПРОТОТИПІВ ТОРГОВИХ РАДНИКІВ ДЛЯ ФОНДОВОГО ТА КРИПТОВАЛЮТНОГО РИНКІВ
Ключові слова:
фондовий ринок, криптовалютний ринок, прототипи , торгові радники, розробка прототипівАнотація
На даний момент прогнозування курсу інструментів фінансового ринку відбувається за допомогою великої кількості різних методів. До цих методів можна віднести як фундаментальний аналіз, який дозволяє будувати судження про подальші зміни на ринку за допомогою вивчення поля новин, так і технічний, в якому основним інструментарієм служать статистичні та математичні засоби. Багато професійних трейдерів для передбачення курсу використовують свої навички у пошуку максимально схожих патернів, користуючись при цьому різними індикаторами. До того ж, хорошим індикатором може служити і курс іншого інструменту над ринком. Така ситуація зустрічається за високого рівня залежності (кореляції) курсів. Крім того, деякі учасники ринку використовують сучасні технології, що допомагають при прийнятті інвестиційних рішень До таких технологій можна віднести штучні нейронні мережі, які при правильному проектуванні та навчанні здатні стати ефективним інструментом для прогнозування [1].
Як інструменти прогнозування було обрано мову програмування Python та бібліотеку Keras. Цей набір дає можливість швидко та відносно легко будувати нейронні мережі різної складності [2].
Середовищем розробки став хмарний Colaboratory від Google. Основна перевага цього середовища полягає у безкоштовних обчислювальних потужностях на основі звичайних процесорів, графічних та тензорних. Останні є ексклюзивом компанії Google та за продуктивністю вони обходять CPU та GPU. Це відкриває можливість швидше навчати складні нейромережі [3].
Для навчання нейронної мережі на початку були отримані історичні дані курсу акцій зарубіжних компаній (Tesla, Google, Amazon, Facebook), а також дані курсу криптовалют (Bitcoin, Litecoin, Ethereum, Monero) за весь період їх існування на торгових біржах. Частота даних складає один день. Дані містять спостереження за такими змінними, як ціни відкриття та закриття, максимальна та мінімальна ціна, а також обсяги торгів [4].
Загалом, дані ціни відкриття поточного дня (свічки) відображають ціну закриття попереднього або, іншими словами, ціна відкриття – це ціна закриття з лагом рівним одиниці. Подібна картина характерна для ринків, що постійно протягом дня працюють і не закриваються у вихідні та святкові дні, таких, як, наприклад, криптовалютний. З цієї причини під час прогнозування курсу криптовалют дані ціни відкриття не враховувалися. З фондовим ринком ситуація трохи інакша. Оскільки у певні дні та години він закривається, при відкритті виникають розриви між цінами відкриття та закриття, які називаються гепом. Визначається він шляхом знаходження різниці між ціною закриття поточної свічки та ціною відкриття попередньої. Геп пояснюється тим, що на момент відкриття ринку попит на пропозицію фінансового інструменту недостатній. Таким чином, ці дані можуть дати деяке уявлення про ринок, тому було вирішено використати саме їх під час аналізу фондового ринку замість ціни відкриття.
Дані максимальної та мінімальної ціни дня (свічки) також були замінені на їхню різницю. Принаймні основна інформація, яку вони дають, полягає в тому, наскільки сильно змінювалася ціна (в обох напрямках) протягом формування свічки. Таким чином, маємо такі основні змінні: геп, різниця між максимальною та мінімальною ціною, ціна закриття та обсяги торгів.
До наявних чотирьох змінних було вирішено додати ще три додаткові: волатильність, різниця між двома експоненційними ковзними середніми, а також коефіцієнт кореляції.
Число вимірювань було вибрано рівне 6. Далі вся вибірка була розбита на підвибірки, що навчається і тестується. у співвідношенні 90% до 10% відповідно, кожна з яких, у свою чергу, також була розбита на умовні підвибірки X (вхідні дані) та Y (вихідні дані):
- підвибірки X містять такі дані: геп, різниці між максимальною та мінімальною ціною, ціни закриття, обсяги торгів, волатильності, різниці двох експоненційних ковзних середніх та дані коефіцієнта кореляції;
- підвибірки Y містять лише дані ціни закриття.
Дане дослідження спрямоване на пошук патернів для прогнозування ціни закриття акцій компаній, тому було вирішено використовувати гібрид згорткової та рекурентної нейронної мережі [2].
Передбачається, що мережа знаходитиме патерни і на їх основі буде передбачати подальший рух ціни.
На вхід нейромережа приймає лише масиви даних, тому обидві підвибірки X (тренувальна та тестована) були представлені у вигляді тривимірного масиву, що містить дані 30-ти спостережень з восьми змінних.
Підбір гіперпараметрів проходив під час навчання мережі протягом 50-ти епох на тренувальній вибірці. Дослідним шляхом було помічено, що вже після 40-ї епохи показник функції втрат зменшується значно повільніше. В результаті для нейромережі був обраний період у 100 епох, оскільки після цього втрати не зменшувалися.
Після прогнозування курсу акцій і криптовалют була проведено оцінку точності та якості передбачення. Для цього було обчислено середню квадратичну та середню абсолютну похибки (MSE та MAE) та кількість вірних торгових позицій на підвищення (Long) / зниження (Short), а також загальна кількість вірних передбачень.
Результати показали, що побудована нейромережа навчилася досить добре. У більшості інструментів відсоток вірних сигналів на зниження більше, ніж на підвищення, що за правильно налаштованої стратегії може збільшити відсоток прибуткових торгів. Загальна кількість вірних передбачень у середньому встановилася на рівні 59,3%, що є досить високим показником.
Далі було проведено бектестинг прогнозних даних. Як наявний початковий капітал було обрано суму 50 тис. грн. Враховано також комісії (брокера, біржі тощо), рівні 0,05% від суми угоди. Це середній показник по ринку загалом.
Найбільшу прибутковість серед портфелів дає саме криптовалютний, проте подібні активи є дуже ризикованими через високу волатильність цифрових валют. Подібні скачки в портфелі можна пояснити не скільки погано налаштованою моделлю для прогнозів, а, скоріше, особливістю ринку. У зв'язку з низьким показником загальної ринкової капіталізації щодо фінансового ринку, маніпуляції великих трейдерів та інвесторів здійснюють значний вплив на курс криптовалют
Таким чином, можна зробити висновки, що виявлення закономірностей у курсах різних інструментів на фінансових ринках дозволяє побудувати модель для прогнозування їх подальшого руху. Виявлення явних та прихованих патернів за допомогою штучних нейронних мереж, а також використання одного криптовалютного інструменту як індикатор для передбачення курсу іншого може здійснити внесок у розвиток процесу прийняття торгових рішень.
Протягом дослідження було проаналізовано різноманітні методи прогнозування часових рядів (зокрема фінансових), в тому числі нейромережні технології. Визначено оптимальний тип архітектури штучної нейронної мережі для передбачення фінансових даних. Це гібрид згорткової та рекурентної мережі, яка досить добре зменшує розмірність вхідних даних, зберігаючи в собі їх “природу”.
Посилання
Diederik P. Kingma. Adam: A Method for Stochastic Optimization / Diederik P. Kingma, Jimmy Ba. 3rd International Conference for Learning Representations (ICLR), San Diego, 2015. URL: https://arxiv.org/abs/1412.6980 (the date of access: 02.11.2022)
PyNeurGen – Python Neural Genetic Algorithm Hybrids. URL: http://pyneurgen.sourceforge.net/recurrent.html (the date of access: 02.11.2022)
Google Colaboratory. URL: https://colab.research.google.com (the date of access: 09.11.2022)
Investing. URL: https://www.investing.com (the date of access: 09.11.2022)