본문 바로가기
무모한 도전-주식 인공지능 만들기

이제서야 시작하는 제대로 된 모델 만들기

by 인터넷떠돌이 2018. 11. 6.
반응형

안녕하세요?


지난번 까지는 어떻게 코드상에 있는 오류로 인해서... 이건 제 오타라면 덜 뭐하기도 하지, 뭐랄까요? 책에 있던 오타 때문에 이렇게 되었으니, 뭐라고 억욱한 기분이 들기도 합니다만, 아무튼 간에 이제서야 제대로 된 주식 인공지능 만들기에 들어간다는 기분이 듭니다.



그래서 먼저 해야 할 일이 하나 있는데, 가장 먼저 강화학습 시작하는 곳에다가 다시 1000번의 강화학습을 하도록 하고, 다음으로는 discount factor를 일단 0으로 두고, 시작시 무작위 행동의 비율을 50%로 맞추어 주는 것 입니다.



혹시나 해서 policy_learner.py에서 역시 바꾸어 줄건 바꾸어 주도록 하고, 역시 가장 중요한 것은 learning을 true로 바꾸어 주는 것 입니다.



이제 1000번의 학습에 들어가 보도록 합니다.



얼마간의 시간이 걸린 다음에 기계학습이 끝이 난 것을 볼 수 있었습니다.



일단 과거와는 다르게 양상이 많이 변했다는 것을 확인할 수 있었습니다.




그리고 에포크가 증가하면 증가할 수록 왠지 저 PV가치의 수익이 나오는 면적이 올라가는 것 같다는 생각이 들기도 합니다.



그리고 초반 에포크 부터 특이하게도 보통의 개미 투자자라면 거의 잡아 먹힐 위치인 저 급락하는 부분에서 인공지능 투자자는 어떻게 포트폴리오 가치를 지켜내는 것을 볼 수 있습니다.



그리고 1000에포크에서도 저 부분에서 큰 손실을 입지 않는 것을 볼 수 있었습니다. 뭐라고 해야 할까요? 저 상황에서 제대로 버텨내준 인공지능 투자자가 대단하다고 해야 할까요?



이제 에포크를 거치면서 나온 결과의 요약입니다. 일단 PV가치에 있어서는 학습을 진행하면 할수록 올라가는 경향이 있다는 것을 확인은 할 수 있었습니다.



이제 모델이 준비되기는 했으니, 진짜 테스트를 해볼 차례입니다. 방금 생성한 모델을 만들어 준 다음에, 위 스크린샷처럼 테스트에 들어갈 준비를 하도록 합니다.




기간도 올해 3월 말부터 11월 초로 지정을 하도록 합니다.



그리고 비학습 투자 시뮬레이션 항목을 주석처리에서 해제하도록 합니다.



그리고 나서 trade()메소드로 가서 초기 투자금을 10만원으로 설정해 주도록 합니다. 그리고 여기서 learning이 False로 되어 있는 것을 볼 수 있는데, 이걸 true로 만들어 주면 투자를 하면서도 이 상황에 대해서 학습을 한다고 볼 수 있어 보입니다. 다만 그게 좋은 것인지 아닌지는 확답을 할 수 없어 보입니다.



이제 투자 시뮬레이션을 진행하기는 했는데.......



문제는 최근의 데이터인 테스트 데이터에서는 수익을 전혀 내지 못하는 것을 볼 수 있었습니다. 생각지도 못한 일이기는 하지만, 아무튼 간에 일단 이건 이것이고, 첫 숟갈에 배가 부를 수는 없으니 계속해서 이 무모한 도전을 계속해 봐야 하는데, 일단 1차 시도는 수익을 내지 못했다고 기록을 해야 할 듯 합니다.

반응형