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

효율적 투자선을 구축하기 위한 여정 -1-

by 인터넷떠돌이 2020. 8. 24.
반응형

안녕하세요?

 

지난번 포스팅으로 어떻게 해서 position size를 최적화 하는 과정을 거쳤습니다. 물론 이것도 100% 확정이라고 말하기는 어렵지만, 어떻게 되었든 간에 이래저래 작업을 하기는 했습니다. 이제부터는 종목을 선정하는데 도움이 될 것이라고 생각이 되는 효율적 투자선을 만드는 것에 대한 일련의 시리즈로 포스팅을 해 보고자 합니다.

 

일단 효율적 투자선이 무엇이냐고 하면, 간단하게 말해서 엄청나게 많은 종류의 포트폴리오를 구성해서 리스크와 기대가 되는 수익을 그래프를 그려서, 이렇게 리스크는 적으면서 이후에 수익으 큰 포트폴리오를 만드는 이론이라고 합니다. 일단 제가 책에서 보기로는 저 이론으로 노벨 경제학상도 나왔다고 하는데, 일단 이 이론을 한번 사용해 보고자 합니다.

 

이걸 왜 꺼냈느냐 하면 바로 평균회귀 알고리즘 트레이더를 만드는 10단계 중에서 7단계가 바로 저렇게 종목을 선정하는 내용에 들어가 있습니다. 정확히는 지금 들어갈 지 아닌지를 결정하는데, 이 방법으로 장기적인 이동평균선등을 보는 것을 예시로 들고 있습니다. 일단 제 개인적으로는 이런 것 보다는 포트폴리오 이론을 사용하는 것이 더 나은 선택이 아닐까 하고 보고 있습니다.

 

그래서 이걸 그냥 손으로 계산하는 것은 말이 안되는 일이기는 하기에, 일단 위 스크린샷에서 볼 수 있는 것처럼 파이참에서 새로운 프로젝트를 생성해 보도록 합니다.

 

 

그리고 position size를 최적화 하기 위해서 사용한 파이썬 가상환경과 같은 가상환경을 한번 이용해 보도록 합니다. 이렇게 하는 것으로 일단 하나 할 수 있기는 있습니다.

 

그리고 나서 프로젝트만 만들어서는 안되고, 이제는 py파일도 하나 만들어야 합니다. 일단 이 작업을 하기 위해서, 하나 만들어 주도록 합니다.

 

일단 프로그램을 만들면서 GUI까지 염두해 두었기 때문에 이렇게 하나하나 만들어 주도록 합니다. 그리고 나서 다음 작업으로 들어가야 하는 것은...............

 

당연하다면 당연하게도 위 스크린샷에서 볼 수 있는 것처럼, 일단 Qt Designer를 만들어서 한번 GUI를 만들어 보도록 합니다. 이렇게 하는 것으로 이제 파일도 준비가 되었습니다.

 

그리고 나서 혹시나 나중에 pyinstaller를 이용해서 다른 컴퓨터에서 사용해야 할 경우까지 생각해 봐야 하기 때문에, 일단 이렇게 미리미리 준비를 해 주도록 합니다.

 

그리고 리눅스 환경과는 다르게 윈도우 환경에서는 실행을 시켜 주기 위해서 if__name__이라는 구문을 넣어 주도록 합니다. 이렇게 하는 것으로 일단 하나 준비는 되었습니다.

 

이렇게 해서 일단 처음에 준비를 시켰던 작업의 결과물이 나오는 것을 확인할 수 있기는 있었습니다. 그러나 이건 겨우 첫발을 뗀 것이지, 이부터 상당히 많은 양의 포스팅의 시리즈가 나올 것으로 예상이 되는데, 이렇게 어떤 종목에 어느정도 비율로 투자를 할 것인지에 대해서는 일단 한번 작업에 들어가 보고자 합니다.

반응형