본문 바로가기
ML 관련/주식 시장 관련 논문

[논문 리뷰] Stock Market Trend Prediction with Sentiment Analysis based on LSTM Neural Network

by 탶선 2020. 5. 5.
반응형

본 논문에서는 시장 예측을 하기 위해 feature선택에 대해 다룬 논문이며 경제 뉴스의 감정 분석을 위해 LSTM을 사용한다.

 

 

Introduction

  • LSTM과 같은 딥러닝 기술들이 금융분야에서 효과적이며 이는 증명되었다.
  • 이에따라 LSTM신경망에 기반한 주식 시장 예측의 영향요인 분석을 목표로 시장예측에 딥러닝 방법을 사용
  • feature selection, 경제 뉴스의 감정분석, 신경망 구조에 중점을 둔 논문

 

background

주식시장 예측은 산업계 학계 등 많은 분야에서 관심을 가지는 기술

신경망, 유전자 알고리즘, svm 등의 알고리즘으로 주가 예측 사용

정확도 향상의 문제점

  1. 데이터 noise
    • 데이터 중복성
    • 데이터 노이즈
    • overfitting
  2. 시장 감정
    • 주식시장은 확률론적 분야 - 다양한 측면이 투자자의 감정에 영향
    • 시장 감정 - 주식시장 트렌드에 큰 영향
    • 투자자의 감정 - 보통 금융 뉴스의 영향
  3. 시계열 정보
    • 기존 방법 - 시계열 데이터 처리 (성능 제한)
    • ARIMA - 빅 데이터에 영향 적음

 

Related Literature

Huynh, Huy D., L. Minh Dang, and Duc Duong. "A New Model for Stock Price Movements Prediction Using Deep Neural Network." Proceedings of the Eighth International Symposium on Information and Communication Technology. ACM, 2017.
  • 위 논문은 양방향 Gated REcurrent Unit에 의존하는 새로운 예측 모델을 소개
Sun, Haonan, et al. "Stacked Denoising Autoencoder Based Stock Market Trend Prediction via K-Nearest Neighbour Data Selection." International Conference on Neural Information Processing. Springer, Cham, 2017.
  • 위 논문은 4개의 knn분류기를 기반으로 training set 선택을 포함하여 노이즈 제거 프로세스를 향상시켜 정확도를 향상
  • training set과 노이제 제거 오토 인코더 기반 커널 예측 deep architecture 생성
  • 시계열 데이터를 제대로 사용하지 못함
Akita, Ryo, et al. "Deep learning for stock prediction using numerical and textual information." Computer and Information Science (ICIS),
  • 일부 연구에서는 주식 선택의 문제 해결을 위해 금융 뉴스 데이터 사용

 

Datasets

  • 감정분석을 위한 경제뉴스 데이터, 주식 데이터
  • 웹 크롤러에서 data gatering, 전처리과정 설명x

 

sentiment analysis data

  • 투자자의 투자전략 수정에 대해 조언을 위해 뉴스의 감정분석 수행

경제 뉴스 데이터 전처리 processing diagram
전처리 후, 경제 뉴스를 감정 분석 신경망 모델의 입력으로 사용하기 위해 문장 벡터로 변환

Stock data

 - 신경망 입력

  • Stock fundamental Index
    • 많은 경제적 근본 요소 중 하나, 특히 기업 평가를 수행 할 때 일반적으로 사용되는 회계 수치 또는 여러 가지 근본적인 요소의 조합으로 주식에 가중치를 부여하는 지표
    • 기본 지수 방법론의 핵심 신념은 기초 회사 회계 / 평가 수치가 회사의 시장 가치보다 회사의 고유 가치를보다 정확하게 추정하는 것

  • Stock technique index
    • 투자자가 계산의 시장 성과에 과거의 가격과 현재 가격 수준을 비교하는 데 도움이 되는 주식 시장의 부분 집합. 

  • financial macro index

  • 이동 평균 KDF와 같은 higher-level technique indexes를 발명하여 계산 가능

 

Approach

  • 경제뉴스의 feature engineering 감정분석 및 주식 데이터 기반 예측방법 3가지
  • feature engineering - 오토 인코더를 사용하여 feature 차원축소, 다양한 feature 조합을 비교하여 최적화된 feature를 찾는 2단계
  • 경제 뉴스의 감정 분석 방법 - 경제 뉴스 제목 텍스트에 pos/neg 레이블로 레이블 지정, 감정표현 후 새로 게시될 뉴스 데이터 예측
  • 트렌드 예측 모델에서는 시계열 처리 능력 향상을 위해 LSTM형 신경망 구축

 

Feature Engineering

  • SDA(Stacked Denoising Auto Encoder) - 노이즈에 민감하지 않은 feature의 크기를 줄이는데 사용
  • 오토 인코더 - 데이터 코딩에 대한 unsupervised learning 수행시 사용되는 신경망
    • 일반적으로 차원 축소를 위한 일련의 데이터에 대한 높은 수준의 표현을 배우는것
    • 최적의 시퀀스 길이를 찾기 위해 다른 시퀀스 길이와 다른 샘플 양을 실험에 적용

경제 뉴스 processing diagram.

 

Sentiment Analysis of financial news

  • LSTM - 감정분석에 적용( 입력은 문장 벡터 )
  • 회사별로 데이터를 나누어 LSTM레이어에 추가, dense layer추가
  • 출력 layer는 감정분석 결과 출력, 값 범위 : 0.0~1.0 / 4quantile값 사용
    • -1 : 25% 미만인 경우
    • 0 : 25% value  75%
    • 1 : 75% 이상인 경우

 

모델 디자인

 

stock trend prediction

  • LSTM을 활용 추세 예측모델 구성에 사용
  • 감정분석 결과 + 주식 데이터를 LSTM Model의 입력으로 사용
  • 생산량은 주가 변동 추세
  • feature selection, 감정 분석 후 t일에 대한 주식데이터 t일에 감정 라벨을 얻음
  • 출력은 negative/even/positive로 -1/0/1 로 표현

trend prediction framework

 

EXPERIMENTS

Experiment 1: Accuracy Evaluation

  • 목표 : 제안된 방법을 동일한 실험 환경을 사용하여 다른 예측방법과 비교
  • 프로세스 :
    1. 다른 예측 방법을 사용하여 주식 추세 예측, 제안된 모델과 비교 30일 stock data 입력, 다음 3일의 평균 stock trend예측
    2. 변경 가격을 사용하여 다음 3일의 평균 변경 가격 계산
    3. 3Quantile값 0.33AC, 0.67AC, 평균 변경 가격을 카테고리 레이블로 변환
  • 트레이닝 모델, 입력 행렬로 주식 데이터를 출력으로 real_trend, pred_trend 예측
  • 3일간의 평균 변경 가격 계산, 예측 대상으로부터 새 열 ave_change지정
  • 3Quantile 값 0.33AC, 0.67AC를 얻어 ave_change 가격을 카테고리 레이블로 변환 
    • C < 0.33AC 인 경우 레이블 : -1(아래로)
    • 0.33AC < C < 0.67AC 인 경우 레이블 : 0(even)
    • C > 0.67AC 인 경우 레이블 : 1(위로)
  • Result_List = Real_list - Prediction_List
    • result = 0 이면 true, 그렇지 않으면 false
  • 정확도 = 0 count / 총 count
  • test data : 2011/01/01 ~ 2018/11/18 (약 11개월) 데이터 사용

Ping-an Finance Group 주식 데이터
제안한 방법, SVR의 주식 동향 예측, 3일 동안의 평균 변경 가격을 계산, 예측 대상으로 새 열 ave_change를 지정한 실험 결과

 

제안한 모델, SVR의 정확도 그래프

  • 그래프의 점 - 예측이 참 or 거짓을 의미 (포인트 값 = 예측 트렌드 결과 - 실제 트렌드 결과)
  • Y축 - 포인트 값 ( 0 : true / 1,-1 : 약간 잘못 / 2,-2 완전한 잘못
  • 제안한 분석법 정확도 - 65.78%
  • SVR 정확도 - 40.31% ( 둘 다 무작위 선택보다 성능 우수, 제안한 분석법이 가장 좋다)

 

Experiment 2: Feature Selection Effect

  • 목표 : 다른 feature 조합을 비교하고 최적화 된 feature selection을 찾는다.
  • feature dimension reduction's 성능 평가
  • 주식 데이터는 2011/07/01 ~ 2018/11/18 사용
  • 최적의 조합을 찾기 위해 다음 5가지 비교모델 실험 설정

  • M2는 M1에 비해 정확성은 낮지만 더 많은 feature를 제공하여 컴퓨팅 cost야기
    • Technique index는 trend 예측에 거의 영향이 없음( technique index와 fundamental index는 서로 중복됨 )
  • M3이 M1로 보아 Macro Index는 큰 영향을 미침, 개별 주가는 전체 주가와 긍정적인 상관 관계가 있다.
  • M4부터 정확도 하락으로 보아 feature가 너무 많으면 gradient vanishing, 데이터 중복문제 발생
  • M5, M4 비교하여 차원 축소에 오토인코더를 사용, gradient vanishing문제 해결, 예측성능 향상

 

Experiment 3 : Sentiment Analysis Performance Evaluation

  • 목표 : 감정 분석 유무의 비교
  • 경제 뉴스의 감정을 찾는데 효과적인 텍스트 감정분석 도구 설정
  • 경제뉴스 감정 통계로 매일 감정 지수 계산
  • 주식 데이터 : 2016/04/01 ~ 2017/10/01
  • 뉴스 데이터 : 2016/04/01 ~ 2017/10/01 (GUBA new data)

감정분석 후의 뉴스 데이터
일별 감정 레이블로 변환

 

최종 실험 결과

최종 실험 결과

최초 실험에서 감정 분석을 통해 예측 정확도 54.28% - 62.5%로 증가

감정 분석 효과 실험 결과

Experiment 4: Stability and Generality of the propose method

  • 목표 : 다양한 시장 산업 분야에서 제안된 방법의 안정성 평가
  • 방법 : 각기 다른 회사의 주식데이터를 사용, 개별적으로 실험 수행, 예측의 분산을 확인

안정성 평가 실험 결과

CONCLUSION

  • 주식 시장 예측 방법 제안
  • 시장 감정이 주식 시장에 영향을 미치는 매우 중요한 요소이며 예측 정확도를 향상시키는데 도움
  • feature compression, 감정분석을 활용하여 주식 trend를 예측하는 새로운 방법으로 SVR보다 정확도 20% 향상
  • 시장 감정은 감정분석에 의해 포착하였고 예측 정확도를 5%이상 향상시키는 중요한 요소
  • LSTM을 사용하는 Recurrent Neuron Network가 기존 시계열 예측 방법보다 경제 시계열 데이터를 더 잘 처리
  • 본 논문에서 제안한 방법은 개별 주식 or 복합 주식 예측과 같은 작업에서 안정적
반응형

댓글