ВВЕДЕНИЕ 7
1 Теоретические основы 8
1.1 Анализ тональности 8
1.2 Предварительная обработка текста 9
1.3 Построение векторной модели текста 11
1.3.1 Bag of words 11
1.3.2 TF-IDF 11
1.4 Логистическая регрессия 12
1.5 Рекуррентная нейронная сеть 15
1.6 LSTM 16
1.7 Метрики оценки моделей регрессии 18
1.7.1 Средняя абсолютная ошибка (MAE) 18
1.7.2 Среднеквадратичная ошибка (MSE) 18
1.7.3 Корень из среднеквадратичной ошибки (RMSE) 19
1.7.4 Коэффициент детерминации (R2) 19
2 Используемые технологии и библиотеки 21
2.1 Python 21
2.2 Jupyter Notebook 21
2.3 Pandas 22
2.4 NumPy 23
2.5 Scikit Learn 24
2.6 NLTK 24
2.7 TensorFlow 24
2.8 Keras 25
2.9 Matplotlib 26
3 Реализация 27
3.1 Сбор данных 27
3.2 Преобразование входных данных 28
3.3 Анализ тональности новостных заголовков 29
3.3.1 Модель NLTK VADER 29
3.3.2 Модель логистической регрессии 30
3.4 Построение модели для предсказания цены акций 31
ЗАКЛЮЧЕНИЕ 37
СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ И ЛИТЕРАТУРЫ 38
ПРИЛОЖЕНИЕ А 40
Прогнозирование цен акций - это попытка предсказать будущую стоимость акций компании, торгуемых на бирже. Успешное прогнозирование будущей цены акций может принести значительную прибыль. Сложность предсказания фондового рынка состоит в том факте, что для создания высокоточных прогнозов требуется полная и надежная информация, также возможность корректно интерпретировать информацию и применить методы предсказания цены. Технические трейдеры основывают свой анализ на предположениях, что паттерны рыночной цены повторят себя в будущем и, следовательно, они могут быть использованы для целей предсказания цены. Наиболее распространенной и наиболее изученной техникой являются прогнозы, основанные на временных рядах.
В последнее время модели глубокого обучения все чаще используются в прогнозировании временных рядов, используя исторические цены акций. Но помимо исторических цен, на формирование будущей цены значительно влияет новостной фон. Извлечение настроения из полного текста новости более трудоемко, а зачастую и менее эффективно, чем извлечение только из заголовка.
Целью работы является создание гибридной модели глубокого обучения для прогнозирования цен акций, сочетающей в себе исторические цены акций и настроения из новостных заголовков.
Задачи:
1) Сбор данных, включающих в себя исторические цены акций и соответствующих им новостных заголовков.
2) Предварительная обработка собранных данных.
3) Построение модели анализа тональности.
4) Построение регрессионной модели глубокого обучения совершающей прогнозы на основе исторических цен акций и соответствующих тональностей.
В ходе работы были собраны данные об исторических ценах акций и соответствующих им новостных заголовков, на которых был проведен анализ тональности при помощи модели VADER, основанной на правилах и логистической регрессии, затем была построена гибридная LSTM модель для предсказания цен акций, натренированная на исторических ценах и соответствующим им тональностям.
Были изучены методы обработки входных данных, в том числе текстовых, анализ тональности, логистическая регрессия, нейронные LSTM сети, метрики оценивания моделей.
Было показано на примере фондового индекса S&P 500, что применение анализа тональности вместе с историческими данными акций улучшает качество прогнозирования. Построенная модель улавливает тренд движения цен и показывает достаточно точные значения. Из чего можно сделать вывод, что настроения новостного фона влияют на изменение цены акций.
Поставленные цели и задачи работы были выполнены.
1. Wu S. et al. S_I_LSTM: stock price prediction based on multiple data sources and sentiment analysis //Connection Science. - 2022. - Т. 34. - №. 1. - С. 44-62.
2. Jing N., Wu Z., Wang H. A hybrid model integrating deep learning with investor sentiment analysis for stock price prediction //Expert Systems with Applications. - 2021. - Т. 178. - С. 115019.
3. Elbagir S., Yang J. Twitter sentiment analysis using natural language toolkit and VADER sentiment //Proceedings of the international multiconference of engineers and computer scientists. - 2019. - Т. 122. - С. 16.
4. Armstrong J.S., Collopy F. Error measures for generalizing about forecasting methods: Empirical comparisons. International Journal of Forecasting. 1992. P. 69-80
5. Hossain M. A. et al. Hybrid deep learning model for stock price prediction //2018 ieee symposium series on computational intelligence (ssci). - IEEE, 2018. - С. 1837-1844.
6. Jin Z., Yang Y., Liu Y. Stock closing price prediction based on sentiment analysis and LSTM //Neural Computing and Applications. - 2020. - Т. 32. - №. 13. - С. 9713-9729.
7. Adarsh R. et al. Comparison of VADER and LSTM for sentiment analysis //International Journal of Recent Technology and Engineering. - 2019. - Т. 7. - №. 6. - С. 540-543.
8. Рекуррентная нейронная сеть [Электронный ресурс] URL: https://ru.wikipedia.org/wiki/Рекуррентная_нейронная_сеть
9. Долгая краткосрочная память [Электронный ресурс] URL: https://ru.wikipedia.org/wiki/Долгая_краткосрочная_память
10. scikit-learn [Электронный ресурс]URL: https://scikit-learn.org
11. Pandas [Электронный ресурс]URL: https://pandas.pydata.org/
12. Keras [Электронный ресурс] URL: https://keras.io/
13. TensorFlow [Электронный ресурс] URL: https://www.tensorflow.org/
14. NLTK [Электронный ресурс] URL: https://www.nltk.org/
15. Kaggle dataset [Электронный ресурс] URL:
https://www.kaggle.com/datasets/yash612/stockmarket-sentiment-dataset