본문 바로가기

프로그래밍377

본격적인 RLTrader의 작동-모델만들기 시작 part1 안녕하세요? 더 이상은 미루고 미룰 수가 없어서, 이번에야 말로 RLTrader를 가동해서 기계학습을 이용, 수익을 내기 위한 모델을 만들고자 하는 것 입니다. 그런데 이게 너무 시행착오가 많아서 하다하다 보니 내용이 엄청나게 길어 져서 한개의 포스팅에 다 올리기는 무리였습니다. 그래서 이번 포스팅에서 첫 단계의 시행착오를 올리고자 합니다. 먼저 AJ렌터카의 주식의 캔들차트와 거래량을 가지고 오도록 합니다. 참고로 왜 이런 AJ렌터카(종목코드 068400)을 선택 했냐고 하면, 주가범위가 9000~20000원 사이에서 만만해 보인다고 해야 할까요? 아무튼 만만해 보이는 회사의 주식을 대충 골랐습니다. 물론 저 개인은 저 AJ렌터카가 어떤 회사인지는 모릅니다. 다만, 저와는 전혀 관계가 없음을 미리 밝혀 .. 2018. 10. 31.
유니티5 독학하기 그 95.2번째 걸음-메모리 풀링의 발사체 적용 part3 안녕하세요? 그리 긴 작업이 아니기는 했지만, 그래도 어느정도 하느라 애를 먹었던 작업인 메모리 풀링을 적용해서 발사체-레이져를 발사하는 작업을 이제 마무리 할 때가 왔습니다. 먼저 유니티5의 계층뷰에서 Player 오브젝트를 선택해 보도록 합니다. 그리고 나서 메모리 풀에 얼마나 많은 발사체-여기서는 레이져의 프리펩을 만들어 줄 것이냐를 정합니다. 일단 10으로 저는 정해서 입력을 해 주었습니다. 그런데 문제가 발생했습니다. 어떻게 된 것인지 레이저가 아랬쪽 방향으로 발사가 되는 것을 확인할 수 있었습니다. 그래서 어디가 문제인가 봤더니, 제가 조작을 하면서 쓸데없이 BulletSystem의 회전을 -90 한번 더 시킨 것이였습니다. 그래서 여기는 0으로 만들어 놓았습니다. 이제서야 제가 원하는 방향으.. 2018. 10. 28.
RLtrader의 제작 part6-final! 안녕하세요? 이번 포스팅에서 드디어 RLTrader의 마지막 모듈까지 모두 코딩을 하고서, 그 내용을 포스팅 하고자 합니다. 하지만 이러고도 주식 데이터를 가지고 오는 과정이 남아 있고, 또 이걸 HTS와 연계시키는 것 까지도 상당히 중요한 내용이라면 중요한 내용이 아직 남아 있습니다. 아무튼 그 첫 과정인 RLtrader를 구성하는 4가지 모듈을 다 코딩하는 내용을 보여드리겠습니다. 먼저 위 스크린샷은 지연보상이 발생한 경우에 학습을 수행하는 flt()함수의 부분입니다. 여기서는 148번째 줄에서 학습없이 메모리의 최대 크기만큼이나 batch_size가 찼을 경우에 지연보상을 한다고 하는데, 이 부분은 제가 기계학습에 대해서 아직도 잘 모르는 부분이 많아서 잘은 모르겠습니다. 그리고 158번과 160번.. 2018. 10. 22.
RLtrader의 제작 part2 안녕하세요? 지난번 포스팅에서 RLtrader에서 환경모듈을 만드는 것을 보여주었습니다. 이번 포스팅에서는 에이전트(Agent)모듈이라고 해서 주식을 매수하거나 매도하는 투자자 역할을 하는 모듈을 만들 것인데, 이전에 만들었던 환경 모듈과는 다르게 상당히 길어서 다소 정신이 없을 수도 있습니다. 먼저 import라는 명령어는 다른 모듈을 가져와서, 그 모듈에 있는 함수를 쓸 수 있도록 만들어 줄 수 있습니다. 그리고 이 에이전트 모듈에서는 다음과 같은 속성들이 사용이 됩니다.initial_balance: 초기 투자금, balance: 현금 잔고, num_stocks: 보유 주식수portfolio_value: 포트 폴리오 가치라고 해서, 투자금 잔고+(주식현재가 * 보유 주식수)=포트 폴리오 가치를 나타냅.. 2018. 10. 18.