TensorFlow를 스터디하면서 뭔가 응용을 해보고 싶은 마음에 주가 예측을 시도해봤다.

지금부터 기술할 내용은 단순히 응용을 해보고 싶었던 것일 뿐이므로, 실제 데이터 예측에는 도움이 되지 않음을 미리 알려둔다.


* TensorFlow 강의는 홍콩 과기대의 김성훈 교수님의 것을 들었으며, 아래 코드 또한 강의에서 참조한 것이다.

https://www.youtube.com/watch?v=BS6O0zOGX4E&list=PLlMkM4tgfjnLSOjrEJN31gZATbcj_MpUm )



1. 데이터 준비

주가 등락 예측을 위해서 필요한 데이터들은 아래에서 가져올 수 있다.



이번에 사용된 데이터는 2014년 12월 10일 ~ 2015년 9월 10일 까지의 KOSPI Index 이다.

Feed data는 총 8개의 항목이며, 이 중 1개는 bias를 없애기 위한 column이다. 


X0 : bias

X1: 전일 종가 대비 금일 종가 등락률

X2: 금일 시가 대비 금일 종가 등락률

X3: 금일 고가 대비 금일 종가 등락률

X4: 금일 저가 대비 금일 종가 등락률

X5: 전일 대비 5일 평균 종가 등락률

X6: 전일 대비 30일 평균 종가 등락률

X7: 전일 대비 60일 평균 종가 등락률


이렇게 Feed data를 정한 것은 큰 의미가 없고, krx에서 제공하는 데이터 기준이다.



목표가 등락 예측이었기 때문에 결과값은 + 또는 - 두가지 경우이다.

따라서 Label에 해당하는 Y 항목은 2개이다


Y1: 금일 종가 대비 내일 종가 상승 ( + )

Y2: 금일 종가 대비 내일 종가 하락 ( - )


(X 값에 1000을 곱해서 데이터를 만들었다.)

2015data.csv



2. Python Coding


앞에서 말한바와 같이, 김성훈 교수님의 강의에서 참조했기 때문에, 코드 수정이 거의 없었다.

코드는 다음과 같다.

 




3, 결과


  • Cost : 0.66944


총 20만번 반복하였으며, 반복 횟수가 8만번 이상이 되니 Cost의 변화가 없었다. 

정확성을 생각하기보다는 한번 테스트를 해본다는 의미가 컸기 때문에, 이정도로도 만족을 한다.


다만, 정확도는 대략 55% ~ 65% 정도로 큰 의미없는 결과를 확인할 수 있었다.




+ Recent posts