KR102355255B1 - Lstm 신경망과 텍스트 마이너를 이용한 주가 실시간 예측 시스템 - Google Patents

Lstm 신경망과 텍스트 마이너를 이용한 주가 실시간 예측 시스템 Download PDF

Info

Publication number
KR102355255B1
KR102355255B1 KR1020200043398A KR20200043398A KR102355255B1 KR 102355255 B1 KR102355255 B1 KR 102355255B1 KR 1020200043398 A KR1020200043398 A KR 1020200043398A KR 20200043398 A KR20200043398 A KR 20200043398A KR 102355255 B1 KR102355255 B1 KR 102355255B1
Authority
KR
South Korea
Prior art keywords
neural network
stock price
data
stock
news
Prior art date
Application number
KR1020200043398A
Other languages
English (en)
Other versions
KR20210125773A (ko
Inventor
홍성혁
고경일
Original Assignee
백석대학교산학협력단
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 백석대학교산학협력단 filed Critical 백석대학교산학협력단
Priority to KR1020200043398A priority Critical patent/KR102355255B1/ko
Publication of KR20210125773A publication Critical patent/KR20210125773A/ko
Application granted granted Critical
Publication of KR102355255B1 publication Critical patent/KR102355255B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/04Forecasting or optimisation specially adapted for administrative or management purposes, e.g. linear programming or "cutting stock problem"
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q40/00Finance; Insurance; Tax strategies; Processing of corporate or income taxes
    • G06Q40/06Asset management; Financial planning or analysis

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Development Economics (AREA)
  • Economics (AREA)
  • Human Resources & Organizations (AREA)
  • Strategic Management (AREA)
  • General Physics & Mathematics (AREA)
  • Game Theory and Decision Science (AREA)
  • Finance (AREA)
  • Accounting & Taxation (AREA)
  • Operations Research (AREA)
  • General Business, Economics & Management (AREA)
  • Marketing (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Artificial Intelligence (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • General Health & Medical Sciences (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Tourism & Hospitality (AREA)
  • Quality & Reliability (AREA)
  • Technology Law (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)

Abstract

LSTM(long short-term memory networks) 신경망을 이용하여 주가의 과거 데이터를 이용하여 학습시키고, 학습된 신경망으로 주가를 예측하되, 텍스트 마이너를 통해 실시간 증시 뉴스를 분석하여 예측된 주가에 가중치를 부가하는, LSTM 신경망과 텍스트 마이너를 이용한 주가 실시간 예측 시스템에 관한 것으로서, LSTM 신경망을 구비하는 신경망 모듈; 과거의 주가 데이터를 이용하여 상기 LSTM 신경망을 학습시키는 신경망 학습부; 뉴스 데이터를 텍스트 마이닝하여 호재 또는 악재 여부를 수치로 나타내는 무드 데이터를 추출하는 텍스트 마이너; 및, 당일까지의 주가 데이터를 상기 LSTM 신경망에 입력시켜, 출력되는 예측 주가 데이터를 획득하고, 획득된 예측 주가 데이터에 상기 무드 데이터로 가중치를 주어 최종 예측 주가 데이터를 산출하는 주가 예측부를 포함하는 구성을 마련한다.
상기와 같은 시스템에 의하여, LSTM 신경망을 통해 주가를 예측하고 텍스트 마이너를 통해 실시간 뉴스의 분석 결과로 가중함으로써, 주가의 시계열성에 의한 예측과 동시에 시시각각 변하는 뉴스 환경을 모두 반영하여 보다 정확한 주가를 예측할 수 있다.

Description

LSTM 신경망과 텍스트 마이너를 이용한 주가 실시간 예측 시스템 { A real-time stock price prediction system using LSTM neural network and text miner }
본 발명은 LSTM(long short-term memory networks) 신경망을 이용하여 주가의 과거 데이터를 이용하여 학습시키고, 학습된 신경망으로 주가를 예측하되, 텍스트 마이너를 통해 실시간 증시 뉴스를 분석하여 예측된 주가에 가중치를 부가하는, LSTM 신경망과 텍스트 마이너를 이용한 주가 실시간 예측 시스템에 관한 것이다.
일반적으로, 현재 주가 예측 시스템은 과거의 데이터를 분석하여 시계열을 통해 추론하거나[특허문헌 1], 인공지능을 이용하여 주가의 변동 패턴을 학습하고 미래를 예측하는 방식을 이용하고 있다[특허문헌 2].
그러나 주가에 미치는 요소들이 다양하고, 과거의 데이터를 가지고 미래를 예측하는 것은 사실상 불가능하다. 또한, 주식 시장은 과거의 거래 패턴이 반복하지 않고, 국제관계, 특정사건, 유명인의 발언 등 매 순간 새로운 상황에 영향을 받는다. 그래서 통상의 딥러닝 알고리즘을 적용한다고 해도 시시각각 변화하는 주식의 가격을 예측하는 것은 거의 불가능하다.
즉, 통상의 인공 신경망의 경우 모든 입출력이 독립적이라고 가정하고 계산을 한다. 그러나 주가는 과거의 데이터, 즉, 과거 주가가 미래의 주가에 영향을 준다. 따라서 이러한 특성을 잘 반영하는 학습 방법을 적용할 필요가 있다.
또한, 주가의 시계열 분석 뿐만 아니라 뉴스에 의한 시장 상황을 반영하여 주가를 예측할 필요가 있다.
한국 등록특허공보 제10-1508361호(2015.04.08.공고) 한국 등록특허공보 제10-1458004호(2014.11.04.공고)
Sepp Hochreiter, JuRgen Schmidhuber, "Long Short-Term Memory", Neural Computation, Vol. 9 , Issue 8, November 1997, pp 1735??1780
본 발명의 목적은 상술한 바와 같은 문제점을 해결하기 위한 것으로, LSTM(long short-term memory networks) 신경망을 이용하여 주가의 과거 데이터를 이용하여 학습시키고, 학습된 신경망으로 주가를 예측하되, 텍스트 마이너를 통해 실시간 증시 뉴스를 분석하여 예측된 주가에 가중치를 부가하는, LSTM 신경망과 텍스트 마이너를 이용한 주가 실시간 예측 시스템을 제공하는 것이다.
즉, 본 발명의 목적은 순환 인공신경망(RNN, recurrent neural networks) 계열인 LSTM 신경망을 이용하여 주가의 시계열성에 의해 예측 데이터를 생성하고, 텍스트 마이너(YTextMiner 등)를 이용하여 실시간 증시뉴스를 분석하여 호재 및 악재로 판단 후 예측 데이터 생성 시 가중치(Weight)를 조절하여 과거 시계열 데이터와 비교하여 최적의 주가를 예측하는, LSTM 신경망과 텍스트 마이너를 이용한 주가 실시간 예측 시스템을 제공하는 것이다.
상기 목적을 달성하기 위해 본 발명은 LSTM 신경망과 텍스트 마이너를 이용한 주가 실시간 예측 시스템에 관한 것으로서, LSTM 신경망을 구비하는 신경망 모듈; 과거의 주가 데이터를 이용하여 상기 LSTM 신경망을 학습시키는 신경망 학습부; 뉴스 데이터를 텍스트 마이닝하여 호재 또는 악재 여부를 수치로 나타내는 무드 데이터를 추출하는 텍스트 마이너; 및, 당일까지의 주가 데이터를 상기 LSTM 신경망에 입력시켜, 출력되는 예측 주가 데이터를 획득하고, 획득된 예측 주가 데이터에 상기 무드 데이터로 가중치를 주어 최종 예측 주가 데이터를 산출하는 주가 예측부를 포함하는 것을 특징으로 한다.
또한, 본 발명은 LSTM 신경망과 텍스트 마이너를 이용한 주가 실시간 예측 시스템에 있어서, 상기 신경망 학습부는, (a) 과거 주가의 시계열 데이터를 수집하는 단계; (b) 각 주가의 중간값을 산출하는 단계; (c) 각 주가의 중간값의 증분을 산출하는 단계; (d) 산출된 증분을 정규화 하는 단계; (e) 정규화된 증분의 시계열 데이터로부터 순차 모델을 생성하는 단계; 및, (f) 상기 순차 모델로 상기 LSTM 신경망을 학습시키는 단계를 포함하는 방법을 수행하는 것을 특징으로 한다.
또한, 본 발명은 LSTM 신경망과 텍스트 마이너를 이용한 주가 실시간 예측 시스템에 있어서, 상기 (c)단계에서, 상기 중간값의 증분에 시그모이드 함수를 적용하여 상기 증분을 정규화 하는 것을 특징으로 한다.
또한, 본 발명은 LSTM 신경망과 텍스트 마이너를 이용한 주가 실시간 예측 시스템에 있어서, 상기 정규화된 증분을 다음 수식 1에 의하여 산출하는 것을 특징으로 한다.
[수식 1]
Figure 112020037046668-pat00001
단,
Figure 112020037046668-pat00002
,
Figure 112020037046668-pat00003
이고,
t는 날짜이고, H(t)와 L(t)는 주가 데이터의 각각 t일의 고가와 저가를 나타냄.
또한, 본 발명은 LSTM 신경망과 텍스트 마이너를 이용한 주가 실시간 예측 시스템에 있어서, 상기 (e)단계에서, 전체 정규화된 증분의 시계열 데이터 S(-N+1),S(-N+2), ....,S(0)로부터 순차적으로 다수의 배치 세트를 생성하되, 배치 크기 n+1로 하나의 세트를 형성하여 일련의 N-n개의 배치 세트를 구성하고, 각 배치 세트는 n개의 과거 주가 데이터 세트와, 해당 세트일 때의 예측 주가의 정답으로 구성함으로써 순차 모델을 구성하는 것을 특징으로 한다.
상술한 바와 같이, 본 발명에 따른 LSTM 신경망과 텍스트 마이너를 이용한 주가 실시간 예측 시스템에 의하면, LSTM 신경망을 통해 주가를 예측하고 텍스트 마이너를 통해 실시간 뉴스의 분석 결과로 가중함으로써, 주가의 시계열성에 의한 예측과 동시에 시시각각 변하는 뉴스 환경을 모두 반영하여 보다 정확한 주가를 예측할 수 있는 효과가 얻어진다.
도 1은 본 발명을 실시하기 위한 전체 시스템의 예시 구성도.
도 2는 본 발명의 일실시예에 따른 LSTM 신경망과 텍스트 마이너를 이용한 주가 실시간 예측 시스템의 구성에 대한 블록도.
도 3은 본 발명의 일실시예에 따른 LSTM 신경망의 구조를 예시한 도면.
도 4는 본 발명의 일실시예에 따른 신경망 학습부의 학습 방법을 설명하는 흐름도.
도 5는 본 발명의 일실시예에 따른 주가 데이터 세트를 예시한 표.
도 6는 본 발명의 일실시예에 따른 주가 학습 방법에 대한 프로그래밍 코드.
도 7은 본 발명의 일실시예에 따른 정규화 방법에 대한 프로그래밍 코드.
도 8은 본 발명의 일실시예에 따른 훈련 방법에 대한 프로그래밍 코드.
이하, 본 발명의 실시를 위한 구체적인 내용을 도면에 따라서 설명한다.
또한, 본 발명을 설명하는데 있어서 동일 부분은 동일 부호를 붙이고, 그 반복 설명은 생략한다.
먼저, 본 발명을 실시하기 위한 전체 시스템의 구성을 도 1을 참조하여 설명한다.
도 1에서 보는 바와 같이, 본 발명을 실시하기 위한 전체 시스템은 사용자 단말(10), 주가를 예측하는 주가예측 서버(30), 주가 정보를 제공하는 주가정보 서버(50), 및, 뉴스 등을 제공하는 뉴스 서버(60)로 구성된다. 추가적으로, 필요한 데이터를 저장하는 데이터베이스(40)를 더 포함하여 구성될 수 있다.
먼저, 사용자 단말(10)은 사용자가 사용하는 단말로서, 스마트폰, 태블릿PC, 노트북, 개인용 컴퓨터(PC) 등 컴퓨팅 기능을 가지는 통상의 컴퓨터 단말이나 전용 단말이다.
사용자 단말(10)은 주가예측 서버(30)에 접속하여, 주가예측 서버(30)에서 제공하는 주가 예측 서비스를 제공받을 수 있다. 즉, 사용자 단말(10)은 주가예측 서버(30)에서 종목을 입력하고, 입력된 종목에 대한 예상 주가를 요청하여 수신한다.
바람직하게는, 예상 주가는 최고 목표가와 최저 목표가 등으로 구성된다.
다음으로, 주가정보 서버(50)는 주가 정보를 제공하는 통상의 서버로서, 증권사, 주가 정보제공 업체 등에서 운영되는 서버이다. 주가정보 서버(50)는 다수 개가 존재할 수 있으며, 각 주가 정보 서버(50)는 서로 다른 종류의 주가 정보를 제공할 수 있다.
바람직하게는, 주가 정보는 고가, 저가, 종가 등으로 구성된다. 또한, 각 주가 정보는 날짜별 정보(날짜별 데이터)로 구성된다. 즉, 주가 정보는 현재 또는 과거의 거래 영업일에 거래된 주가 정보를 포함한다.
다음으로, 뉴스 서버(60)는 뉴스를 제공하는 서버로서, 각 신문사, 방송사, 또는 공시 기관 등에 의해 운영되는 서버이다. 뉴스 서버(60)는 온라인 상에 뉴스를 제공한다.
뉴스 정보는 텍스트로 작성된 뉴스 데이터들이다.
뉴스 서버(60)가 제공하는 뉴스는 제공자에 따라 구분될 수 있다. 즉, 뉴스 제공자는 금융감독원, 각 신문사 또는 방송사 등이다.
다음으로, 주가예측 서버(30)은 통상의 서버로서, 사용자 또는 사용자 단말(10)의 요청에 따라, 주가를 예측하고, 예측된 주가 정보를 사용자에게 제공한다. 바람직하게는, 특정 종목명을 입력받아, 해당 종목에 대한 주가를 예측하여, 해당 종목의 예측 주가 데이터를 제공한다.
특히, 주가예측 서버(30)은 LSTM 신경망의 신경망을 구비하고, 과거의 주가 정보를 이용하여 LSTM 신경망을 학습시킨다. 그리고 학습시킨 LSTM 신경망에 현재 주가 정보를 입력하여, 예측된 주가 데이터를 출력한다.
또한, 주가예측 서버(30)는 예측된 주가 데이터를 최고 목표가와 최저 목표가로 제공할 수 있다. 이때, 바람직하게는, 예측 주가에서 오차 범위를 설정하여 최고 목표가와 최저 목표가를 추출한다.
또한, 주가예측 서버(30)는 주가정보 서버(50)로부터 주가 정보를 수신하여 활용한다.
또한, 주가예측 서버(30)는 텍스트 마이너를 구비하여, 텍스트 마이너를 이용하여 뉴스에 대한 마이닝 분석을 수행한다. 텍스트 마이너를 통해, 현재 뉴스가 긍정적인지 부정적인지를 수치(호재 또는 악재에 대한 수치)로 추출한다. 이때의 수치를 뉴스 평가도라 부르기로 한다.
특히, 텍스트 마이너에 해당 종목명을 입력하여, 해당 종목에 대한 뉴스 평가도를 추출한다. 또한, 텍스트 마이너는 뉴스 서버(60)로부터 뉴스 데이터를 분석하여 뉴스 평가도를 추출한다.
또한, 주가예측 서버(30)는 뉴스 평가도를 가중치로 변환하여, 앞서 구한 예측 주가 데이터에 해당 가중치를 가중하여 최종 예측 주가 데이터를 산출한다.
다음으로, 본 발명의 일실시예에 따른 주가 실시간 예측 시스템(30)의 구성을 도 2를 참조하여 설명한다.
본 발명에 따른 주가 실시간 예측 시스템(30)은 앞서 주가예측 서버(30) 형태로 구현될 수 있다. 또는, 주가 실시간 예측 시스템(30)은 서버-클라이언트 형태로 구현되고, 사용자 단말(10)에 클라이언트 모듈이 설치될 수 있다.
도 2에서 보는 바와 같이, 본 발명의 일실시예에 따른 주가 실시간 예측 시스템(30)은 LSTM 신경망으로 구성되는 신경망 모듈(31), 신경망을 학습시키는 신경망 학습부(32), 뉴스를 분석하는 텍스트 마이너(33), 및, 주가를 예측하는 주가 예측부(34)로 구성된다.
먼저, 신경망 모듈(31)은 LSTM(long short-term memory networks) 신경망을 구비한다.
LSTM(Long Short Term Memory networks) 신경망은 RNN(순환신경망, Recurrent Neural Network)의 한 종류이며, 과거의 데이터가 미래에 영향을 줄 수 있는 구조를 가진다. 따라서 LSTM 신경망은 주가 예측에 가장 적합한 모델이다.
기존의 RNN 신경망에서는 장기 의존성 문제점인 체인 룰(Chain Rule)에 의해 [-1, 1]사이의 값들이 계속 곱해지다보니 앞쪽으로 갈수록 그 값이 작아지고 결국에는 소멸한다. 따라서 기존의 RNN 방식은 파라미터(Parameter)들이 업데이트 되지 않는 문제를 가진다. LSTM은 이를 해결하기 위해 제안된 방식이다[비특허문헌 1].
기존의 RNN은 은닉층(Hidden Layer)에서 은닉 상태(Hidden State, St)를 계산할 때 단순히 St=tanh(Uxt+WSt)로 계산하였지만, LSTM에서는 총 4가지의 계산과정이 있다.
도 3에서 보는 바와 같이, LSTM의 은닉층(Hidden Layer)에서 신경망 레이어(Neural Network Layer)가 4개가 존재한다. 즉, 도 3의 중앙 사각형 모양 내에 신경망 레이어가 4개 존재함을 확인할 수 있다. 또한 LSTM의 핵심은 뉴럴(A)의 상단부분에 있는 수평선에 아주 마이너한 선형 연산을 거치고 전체 체인을 관통하여 정보는 큰 변함 없이 다음 단계로 전달하게 된다는 것이다.
또한, LSTM 신경망은 주식 가격의 고가와 저가를 기본값으로 하여 학습된다. 특히, 고가와 저가에 대해 특정 기간(예를 들어 30일, 이하 반영 기간) 동안 과거 데이터를 가지고 훈련시키고 하루를 예측하여 실제 데이터와 비교한다. 이와 같이 비교하면서 반영 기간(일례로서 30일) 단위로 훈련 세트가 미래로 이동하면서 학습된다. 또한, 실시간 뉴스 정보를 분석하여 과거의 유사한 뉴스와 비교하여 당시에 주가에 미친 비율을 계산한다. 그리고 가중치를 조정을 반복하여 최종 목표가를 정하여 주식에 대한 매매나 매수를 결정하도록 한다.
또한, LSTM 신경망은 하나의 종목에 대하여 학습된다. 따라서 새로운 종목(또는 다른 종목)의 주가를 예측하기 위해서는, LSTM 신경망을 초기화 하고, 해당 종목의 과거 주가 데이터로 다시 학습시킨다.
또는, 다른 실시예로서, 신경망 모듈(31)은 예측하고자 하는 각 종목에 대응되는 LSTM 신경망을 종목별로 구비한다. 즉, 각 종목에 해당하는 LSTM 신경망을 다수 구비하고, 종목별로 해당 종목의 과거 주가 데이터로 학습한다.
다음으로, 신경망 학습부(32)는 LSTM 신경망을 학습시킨다. 즉, 주가의 과거 데이터를 수집하여, 수집된 과거 데이터를 이용하여 LSTM 신경망을 학습시킨다. 특히, 바람직하게는, 예측하려는 당일까지의 주가 정보의 시계열 데이터를 LSTM 신경망에 넣어, LSTM 신경망을 학습시킨다.
신경망 학습부(32)가 LSTM 신경망을 학습하는 구체적인 방법이 도 4에 도시되고 있다.
먼저, 주가의 과거 데이터를 수집한다(S21). 예측하고자 하는 날짜의 전일까지의 주가 데이터를 수집한다. 일례로서, 익일의 주가를 예측하려면, 당일까지의 과거 데이터를 수집한다.
다음으로, 도 5에서 보는 바와 같이, 주가 예측은 과거의 주가의 중간값을 기본으로 한다. 중간값은 다음 식과 같이 고가와 저가의 평균으로 구한다(S22).
[수학식 1]
Figure 112020037046668-pat00004
여기서, t는 날짜이고, M(t)은 t일의 중간값이고, H(t)와 L(t)는 각각 t일의 고가와 저가를 나타낸다.
도 5의 표는 2019년 2월부터 2020년 2월까지의 삼성전자의 주가 데이터 세트이다.
다음으로, 기준 날은 주식 가격(또는 증분)을 0으로 해서 다음 날 증분을 계산한다(S23).
도 5의 예에서, No.1이 기준일 경우, 기준 날의 증분 값은 0이 된다. 또한, 주가는 1 보다 작거나 -1 보다 크게 이전되어 정규화 된 프로세스를 나타낸다.
즉, 먼저, t일의 증분 △M(t)을 다음 식에 의해 구한다.
[수학식 2]
Figure 112020037046668-pat00005
즉, 높은 가격(고가)과 낮은 가격(저가)의 평균 가격(중간값)을 계산한 다음 증분을 계산한다.
다음으로, 증분 △M(t)을 시그모이드 함수로 정규화 한다(S24). 정규화는 다음 식과 같다.
[수학식 3]
Figure 112020037046668-pat00006
여기서, S(t)는 t일의 정규화된 증분이다.
다음으로, 정규화된 증분의 시계열 데이터를 순차 모델을 생성한다(S25).
전체 시계열 데이터의 크기를 N이라 하고, 배치 크기를 n으로 설정한다. 이때, N > n이고, 바람직하게는, N > 2n을 만족하도록 N과 n을 설정한다. 즉, 배치 크기 보다 많은 배치 개수를 만들기 위한 것이다.
전체 정규화된 증분의 시계열 데이터는 일련의 날짜에 의한 데이터로서, S(-N+1), S(-N+2), ...., S(0) 이다. S(-k)는 k일 이전의 정규화된 증분 데이터이고, S(0)는 당일의 정규화된 증분 데이터이다.
이때, 배치 크기 n으로 배치(batch)를 생성한다. 전체 데이터 크기 N인 경우, 다음과 같은 배치들이 N-n개가 생성된다.
[ S(-N+1), S(-N+2), S(-N+3), ..., S(-N+n) ], S(-N+n+1)
[ S(-N+2), S(-N+3), S(-N+4), ..., S(-N+n+1) ], S(-N+n+2)
...
[ S(-n-1), S(-n), S(-n+1), ..., S(-2) ], S(-1)
[ S(-n), S(-n+1), S(-n+2), ..., S(-1) ], S(0)
위와 같이, 순차 모델은 N개의 연속된 시계열 데이터(정규화된 증분 데이터)를 배치 크기 n+1로 하나의 세트를 구성하되, 순차적으로 세트를 구성하여 일련의 N-n개의 배치 세트를 구성한다. 이때, 각 배치 세트의 마지막 데이터를 해당 세트의 결과 값(진짜 값)으로 설정한다. 즉, 각 배치는 n개의 과거 주가 데이터 세트와, 해당 세트일 때의 익일 주가(예측할 주가의 진짜 주가)(정답인 주가)로 구성된다.
다음으로, 각 배치 세트를 하나의 학습 데이터로 하여, LSTM 신경망을 학습시킨다(S26).
도 6는 파이썬(Python) 언어로 작성된 주가 학습 코드의 일부이다. Seq_len은 훈련(학습) 세트를 의미하므로 도 6의 No.1 ~ No. 30으로 시작한다. 30일간의 주식 거래 데이터 세트 인 30 개의 훈련 세트를 사용한다. 즉, 배치 크기가 30(또는 30일)이고, 배치 개수는 30개이다.
학습 후, 다음날 하루 가격을 예측하여 주식 투자자가 주식을 판매할 것인지 구매할 것인지 결정할 수 있다.
바람직하게는, 도 7에서 보는 바와 같이, 주식 가격을 잘 예측하기 위해 데이터 세트(또는 배치 세트)를 정규화한다. 훈련 데이터와 훈련 데이터를 검증하는 테스트 데이터 세트를 9 : 1 비율로 나눈다. 즉, "row = int (round (result.shape [0] * 0.9))"의 코드와 같다.
도 7의 0.9는 이 훈련 세트는 데이터 세트의 90%이고 0.1은 테스트 세트가 데이터 세트의 10%임을 의미한다. 미래에 예측할 주식에 따라 해당 비율은 달라질 수 있다.
순차 모델을 구축한 후 도 8과 같이 훈련을 시작하여 모델이 맞는지 검증한다. 도 8의 배치 크기(Batch_size)는 연속으로 훈련할 수 있는 데이터 수이며, 에포크(Epochs)는 반복 횟수 및 데이터 단위이다. 검증을 위해 확인된 훈련 세트의 90%와 테스트 세트의 10%를 사용한다. 훈련 세트와 검증을 하는 테스트 세트로 나누어져 있고, 각 세트는 절대 겹치지 않도록 한다.
다음으로, 텍스트 마이너는 해당 종목의 뉴스 데이터를 수집하여 텍스트 마이닝을 수행하고, 해당 종목의 무드 데이터를 산출한다.
바람직하게는, 텍스트 마이너는 YTextMiner 등 상용화된 도구를 사용한다. 텍스트 마이너(YTextMiner 등)는 텍스트를 분석하는 도구로서, 실시간 증시 뉴스를 분석하여 키워드별 주식 종목에 해당하는 뉴스가 호재인지 악재인지를 판단한다.
무드 데이터는 해당 종목에 대해 호재인지 악재인지를 수치로 나타낸 지표이다. 호재일 경우 무드 데이터의 값은 커지고, 악재일 경우 무드 값은 작아진다.
바람직하게는, 무드 데이터(또는 무드 값)는 (1-α)와 (1+α) 사이의 값을 가진다. 이때, α는 1% ~ 30%의 값을 가진다.
다음으로, 주가 예측부(34)는 현재 주가 정보를 신경망 모듈(31) 또는 LSTM 신경망에 입력하여 그 출력값을 획득하고, 출력값에 텍스트 마이너(33)에서 구한 무드 데이터를 가중치로 가중하여, 최종 예측 주가 정보를 산출한다.
먼저, 신경망 모듈(31)을 통해, LSTM 신경망에 주가 정보(고가와 저가)의 시계열 데이터를 입력시켜, 주가(또는 익일의 주가)를 예측한다.
이때, 주가 정보는 정규화된 증분 값으로 변환하여 입력하고, 반대로, 출력값을 역변환하여 예측 주가로서 변환한다.
또한, 사전에 정해진 오차 범위에 의해, 예측 주가의 최고 목표가와 최저 목표가로 구성된 제1 예측 주가 정보를 획득한다.
그리고 텍스트 마이너(33)를 통해, 뉴스 데이터로부터 무드 데이터를 산출하고, 산출된 무드 데이터로부터 가중치를 획득한다.
그리고 예측 주가 정보에 가중치로 가중하여, 최종 예측 주가 정보를 획득한다.
즉, 본 발명의 주가 실시간 예측 시스템(30)은 시계열 데이터를 LSTM을 통하여 학습시키고 예측할 때 가중치를 조정하는데 사용한다. 딥러닝을 통한 주식 예측 시스템은 실시간 변화는 시장을 인지하지 못하기 때문에 실시간 뉴스 마이닝을 통해서 수집한 것을 분석하여 최종 주가 예측 때 참고하여 정확도를 높이는데 사용한다.
앞서 설명한 바와 같이, 본 발명의 실시간 예측 시스템은 과거 데이터(예를 들어, 30일간 데이터)를 LSTM 모델을 이용하여 반복 훈련시키고 미래의 1일 주가를 예측하며, 실시간 증시 뉴스는 YTextMiner를 사용하여 최종 주가 예측을 할 때 가중치를 적용한다.
즉, 본 발명의 실시간 예측 시스템은 순환신경망(RNN: Recurrent Neural Network)을 이용하여 과거의 주가 분석을 시계열을 통해 추론을 수행하고, 텍스트 마이너(YTextMiner 등)를 이용하여 실시간 증시 뉴스를 검색하고 이를 통해 주가에 미치는 영향을 분석하여 가중치에 변화를 주어 단기 주가를 예측한다.
인공지능을 이용한 예측 시스템 개발은 적용 분야가 다양하여 날씨, 기후변화, 지진발생, 태풍 이동 경로, 바이러스 이동 경로, 자동차 이동 등 다양하게 적용가능하기 때문에 과거의 데이터를 가지고 미래를 예측하는 연구는 활발히 진행되고 있다. 그 중 주가 예측은 시장 규모가 크기 때문에 가장 활발히 기술개발이 되고 있는 분야로 알려져 있다. 주가 예측을 하기 위해서는 지속적인 모니터링을 통하여 매매 시점을 결정해야 하기 때문에 많은 노력이 들어가지만, 인공지능의 딥러닝 기법을 적용하여 과거의 데이터를 분석하고 주가에 영향을 미치는 뉴스를 텍스트 마이닝하여 자동화된 트레이딩 봇을 통하여 매수와 매도가 이루어질 수 있다. 이를 통해, 불필요한 모니터링 없이 최적의 시기에 매도와 매수가 진행될 수 있다. 또한, 기술적 분석을 통하여 감정적 투자를 통해 손실을 발생하는 경우를 최소화 시키면 보다 효율적으로 주식의 매매 가능하다. 따라서 인공지능 기반의 자동화된 트레이딩 봇 개발이 필요하다.
미국의 경우 대부분이 주식 자동매매프로그램을 통한 시스템 트레이딩하고 있다. 주식 자동매매프로그램이란 단순하게 이유 없는 종목을 자동으로 사고파는 기계가 아니라 기술적인 분석을 통하여 명확한 기준이 존재하는 알고리즘을 통해 매매한다. 이를 통해, 전문투자자들의 수준까지 끌어올려 매매를 진행할 수 있고, 접근방식에 따른 시장가, 매수호가, 매도호가의 선택 매매 기간에 따른 분할매도 일괄매도, 또한 감정적인 손절 또는 익절이 아닌 인공지능의 기계적인 매매를 수행할 수 있다. 또한, 이러한 방식은 주식시장에서 가장 독이 되는 감정을 버리고, 시간적 투자가 불가능한 시점에 급등과 급락을 통해 손해 보는 기회비용을 잡아 준다. 결국, 전문성과 시간 측면에서 모두 효과를 가진다.
이상, 본 발명자에 의해서 이루어진 발명을 실시 예에 따라 구체적으로 설명하였지만, 본 발명은 실시 예에 한정되는 것은 아니고, 그 요지를 이탈하지 않는 범위에서 여러 가지로 변경 가능한 것은 물론이다.
10 : 사용자 단말 30 : 주가예측 서버
31 : 신경망 모듈 32 : 신경망 학습부
33 : 텍스트 마이너 34 : 주가 예측부
40 : 데이터베이스 50 : 주가정보 서버
60 : 뉴스 서버

Claims (5)

  1. LSTM 신경망과 텍스트 마이너를 이용한 주가 실시간 예측 시스템에 있어서,
    LSTM 신경망을 구비하는 신경망 모듈;
    과거의 주가 데이터를 이용하여 상기 LSTM 신경망을 학습시키는 신경망 학습부;
    뉴스 데이터를 텍스트 마이닝하여 호재 또는 악재 여부를 수치로 나타내는 무드 데이터를 추출하는 텍스트 마이너; 및,
    당일까지의 주가 데이터를 상기 LSTM 신경망에 입력시켜, 출력되는 예측 주가 데이터를 획득하고, 획득된 예측 주가 데이터에 상기 무드 데이터로 가중치를 주어 최종 예측 주가 데이터를 산출하는 주가 예측부를 포함하고,
    상기 신경망 학습부는,
    (a) 과거 주가의 시계열 데이터를 수집하는 단계;
    (b) 각 주가의 중간값을 산출하는 단계;
    (c) 각 주가의 중간값의 증분을 산출하는 단계;
    (d) 산출된 증분을 정규화 하는 단계;
    (e) 정규화된 증분의 시계열 데이터로부터 순차 모델을 생성하는 단계; 및,
    (f) 상기 순차 모델로 상기 LSTM 신경망을 학습시키는 단계를 포함하는 방법을 수행하고,
    상기 (c)단계에서, 상기 중간값의 증분에 시그모이드 함수를 적용하여 상기 증분을 정규화 하고,
    상기 정규화된 증분을 다음 수식 1에 의하여 산출하는 것을 특징으로 하는 LSTM 신경망과 텍스트 마이너를 이용한 주가 실시간 예측 시스템.
    [수식 1]
    Figure 112021109293821-pat00007

    단,
    Figure 112021109293821-pat00008
    ,
    Figure 112021109293821-pat00009
    이고,
    t는 날짜이고, H(t)와 L(t)는 주가 데이터의 각각 t일의 고가와 저가를 나타냄.
  2. 삭제
  3. 삭제
  4. 삭제
  5. 제1항에 있어서,
    상기 (e)단계에서, 전체 정규화된 증분의 시계열 데이터 S(-N+1),S(-N+2), ....,S(0)로부터 순차적으로 다수의 배치 세트를 생성하되, 배치 크기 n+1로 하나의 세트를 형성하여 일련의 N-n개의 배치 세트를 구성하고, 각 배치 세트는 n개의 과거 주가 데이터 세트와, 해당 세트일 때의 예측 주가의 정답으로 구성함으로써 순차 모델을 구성하는 것을 특징으로 하는 LSTM 신경망과 텍스트 마이너를 이용한 주가 실시간 예측 시스템.
KR1020200043398A 2020-04-09 2020-04-09 Lstm 신경망과 텍스트 마이너를 이용한 주가 실시간 예측 시스템 KR102355255B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020200043398A KR102355255B1 (ko) 2020-04-09 2020-04-09 Lstm 신경망과 텍스트 마이너를 이용한 주가 실시간 예측 시스템

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020200043398A KR102355255B1 (ko) 2020-04-09 2020-04-09 Lstm 신경망과 텍스트 마이너를 이용한 주가 실시간 예측 시스템

Publications (2)

Publication Number Publication Date
KR20210125773A KR20210125773A (ko) 2021-10-19
KR102355255B1 true KR102355255B1 (ko) 2022-01-24

Family

ID=78228336

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020200043398A KR102355255B1 (ko) 2020-04-09 2020-04-09 Lstm 신경망과 텍스트 마이너를 이용한 주가 실시간 예측 시스템

Country Status (1)

Country Link
KR (1) KR102355255B1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102547584B1 (ko) 2023-01-02 2023-06-26 딥트레이드테크놀로지스 주식회사 연금 투자를 위한 변동성 최소화 기반 포트폴리오 관리 방법 및 장치

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101458004B1 (ko) * 2013-12-26 2014-11-04 주식회사 코스콤 인공 신경망 모형을 이용한 주가 등락 예측 시스템 및 주가 등락 예측 방법
KR101785547B1 (ko) * 2016-07-08 2017-10-17 한양대학교 산학협력단 주기성 시계열 데이터의 변동 추정 장치 및 방법

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101508361B1 (ko) 2013-04-02 2015-04-08 한국과학기술원 시가총액 분석을 통한 미래주가 예측시스템

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101458004B1 (ko) * 2013-12-26 2014-11-04 주식회사 코스콤 인공 신경망 모형을 이용한 주가 등락 예측 시스템 및 주가 등락 예측 방법
KR101785547B1 (ko) * 2016-07-08 2017-10-17 한양대학교 산학협력단 주기성 시계열 데이터의 변동 추정 장치 및 방법

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102547584B1 (ko) 2023-01-02 2023-06-26 딥트레이드테크놀로지스 주식회사 연금 투자를 위한 변동성 최소화 기반 포트폴리오 관리 방법 및 장치

Also Published As

Publication number Publication date
KR20210125773A (ko) 2021-10-19

Similar Documents

Publication Publication Date Title
CN110400022B (zh) 自助柜员机现金用量预测方法及装置
Hussain et al. Artificial Neural Network to model managerial timing decision: Non-linear evidence of deviation from target leverage
WO2005050396A2 (en) Method and system for artificial neural networks to predict price movements in the financial markets
KR102330423B1 (ko) 이미지 인식 딥러닝 알고리즘을 이용한 온라인 부도 예측 시스템
Bakhach et al. TSFDC: A trading strategy based on forecasting directional change
Alkhodhairi et al. Bitcoin candlestick prediction with deep neural networks based on real time data
US20190180376A1 (en) Financial Correlation Prediction System and the Method Thereof
KR102355255B1 (ko) Lstm 신경망과 텍스트 마이너를 이용한 주가 실시간 예측 시스템
Roostaee et al. Forecasting financial signal for automated trading: An interpretable approach
Albahli et al. An improved DenseNet model for prediction of stock market using stock technical indicators
CN116843483A (zh) 一种车险理赔方法、装置、计算机设备及存储介质
Moubariki et al. Enhancing cash management using machine learning
Saputra et al. Stock Market Prediction System Using LSTM with Technical Indicators as Voters
KR102614595B1 (ko) 실시간 거시지표 예측 기반 주가 예측 시스템
Mańdziuk et al. Neuro-evolutionary system for FOREX trading
AU2020103525A4 (en) IUML- Stock Prices Predictor: Intelligent Stock Prices Predictor Using Machine Learning
KR20220167039A (ko) 딥러닝과 경제 지표 기반 주가 예측 시스템
Singh et al. Predicting earnings per share using feature-engineered extreme gradient boosting models and constructing alpha trading strategies
Larsson et al. Time series forecasting of the SP global clean energy index using a multivariate LSTM
Jumoorty et al. High frequency volatility forecasting: A new approach using a hybrid ANN‐MC‐GARCH model
CN111815458A (zh) 基于细粒度量化标注和集成方法的动态投资组合配置方法
Zhou Forex trend forecasting based on long short term memory and its variations with hybrid activation functions
Jackson et al. Machine learning for classification of economic recessions
Halliday Equity trend prediction with neural networks
Bordvik Forecasting regulation market balancing volumes from market data and weather data using deep learning and transfer learning

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant