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

평균회귀 알고리즘 트레이더를 만들기 위한 10가지 단계

by 인터넷떠돌이 2019. 12. 28.
반응형

안녕하세요?

 

이제서야 자료조사라고 해야 할까요? 자료 이해가 어느정도는 끝이 나서 포스팅을 올리고자 합니다. 일단 제가 전공이 전공이다 보니, 이 자료를 100% 이해할 수 없지만, 그렇다고 해서 이 자료가 진리라고 해서 무슨 경전처럼 100% 이해를 하고 넘어가야 할 것은 아니라는 생각이 듭니다. 일단 이 자료를 정리해 보는 것으로 어디어디에서 제가 문제가 있었는지에 대해서 한번 알 수 있었습니다.

지난번 포스팅에서 언급을 했다 시피 평균회귀를 mean reversion이라고 보통 표현을 하는데, 이 전략을 사용해서 자동으로 주식 매매를 하는 프로그램을 만들려 하니, 일단 만드는 법에 대한 자료가 영어로 있는 것을 발견했습니다.

일단 첫번째 스탭에 대해서 짚고 넘어가자면, 우선 소프트웨어인데, 이것도 제가 파이썬을 쓰기로 우선 결정을 했습니다. 그런데 단순한 프로그램에 대한 이해보다, 프로그래밍 언어에 대해서 100% 이해를 한다는 것도........ 어떤 의미로는 무언가 불가능한게 아닌가 하는 생각이 듭니다.

그리고 나서 믿을 수 있는 출처에서 데이터를 얻는 것인데, 제 경우에는 이미 키움증권 서버를 이용해서 어떻게 얻는 것으로 했습니다. 실제로 데이터를 긁어온 경험도 있습니다.

 

 

그리고 여기서 중요한 것이 바로 5번째 스탭, initial testing이라고 해서 자금을 관리하지도 않고, 거래규모도 신경쓰지 않고 이 아이디어 - 주로 언제 주식을 사고 팔고를 결정할 작업이 제대로 돌아갈 것인지에 대해서 한번 테스트를 하는 단계가 있는데, 제가 이 단계가 있다는 것을 아예 몰라서 이제까지 많은 에러가 발생하였습니다.

그렇게 initial testing이라고 해서 초기 테스팅이 끝난 다음에 그제서야 거래규모를 정하는데, 제 경우에는 그냥 1/10을 하는 식으로 정했습니다만, 실제로는 이것 외에도 다양한 방법이 있다는 것을 이번 자료를 통해서 알 수 있었습니다.

그리고 나서 다음으로 중요한 것이 바로 추가로 규칙을 정하는 것인데, 여기서 종목 필터링이라고 해서 어느 타이밍에 트레이딩을 들어갈 것인지 아닌 것인지 알아보는 작업에 들어가게 됩니다. 거기다가 초기 시작 자금에 대해서도 여기서 결정을 하게 됩니다.

 

그리고 나서 다음 단계가 최적화를 하는 단계인데, 이 단계에서 제안하는 것도 제게는 처음 듣는 내용이 되었습니다. 가령 예를 들어서 30일 평균을 이용한 전략이 있다고 하면, 이 전략에서 28, 29, 31, 32일 등의 평균을 적용해도 제대로 된 성과가 나와야만 합니다. 그리고 Walk Forward Analysis에 대해서는 여기서 당장 다루기에는 너무 한개의 포스팅을 소모해야 할 정도로 규모가 크다는 것만 지금은 언급하고 넘어가고자 합니다.

다음으로 하는 것이 스트레스 테스팅과 가치검증인데, 이 단계에 대해서도 우선 저 Stress Testing만 해도 상당히 깊이 들어갈 수 있는 내용이라서 너무 깊이 들어가지는 않도록 하겠습니다. 다만, 여기서 언급할 것은 대충 여기서 원숭이 투자자와 비교가 들어간다고 볼 수 있습니다.

그리고 나서 마지막으로 가서야 모의투자라고 해야 할까요? 실시간 투자에 적용해서 피드백을 받는 단계에 들어가야 합니다. 일단 여기서 제가 이해한 것은 여기까지 이고, 지금부터 무엇을 해야 하는가 하는 의문이 남습니다. 일단 지금 당장 제게 할 수 있는 일이라고는 우선 데이터 베이스를 확보하는 일이라고 할 수 있습니다. 다만 이것도 조심해야 하는 것이 기본적으로 예전에 프로그래밍 한 것에서 거래량인 Volume을 저장했는지 아닌지에 대해서 한번 알아보아야 합니다.

반응형