주식

주식 자동화 프로그램 연구 결과 및 생각

macle 2017. 9. 2. 18:29

주식 자동화 프로그램을 만들기위해 그간 시도해보면서 연구한 결과를 정리 합니다.


주식자동화 프로그램을 만들기 위해 가장먼저 접근한건 증권사 api를 통한 데이터 수집이었습니다. 

종목별 시세정보, 거래량, 이평선, PER, PBR 정보등을 수집했었는데 결론적으로는 이자료만으로 데이터 자동매매를 시도한 결과는 모두 실패 였습니다.

팀단위로 머신런닝을 공부하는분은 관력쪽에 데이터를 넣어 봤었고, 증권사 api 작업, 설계 및 시스템 구축, 매매이론을 이용한 알고리즘 작성등을 해봤는데 이자료만으로는 성공적이다라고 할수 있는 결과를 얻지는 못했었네요.(팀의 실력문제 일수도 있는부분입니다.)



그다음은 재무재표를 분석하는 프로그램(퀀트 도움)을 만들어서  관련 종목을 장기 분산투자방법으로 해봤었습니다.

기술적분석을 제외한 기본적분석 위주의 자동화부터 해보고 결과가 좋으면 기술적분석을 이용해서 기본적분석 + 기술적 분석을 같이 활용할 수 있게 만들자 였습니다.

간단하게 엑셀로 한건아니고, 부실주를 제외하는 알고리즘등을 만들고 업종별로 다르게 적용하기도하고 배당, 영업이익 증가율 매출액증가율 부채비율 감소율 등 많은 부분을 활용하게 했는데 이결과는 상당히 성공적이었습니다. 만들떄의 당시목표율은 연15%였는데 이것보다 훨씬 높은 수익율을 기록했으니까요. 장이 호황이었던 부분을 제외하더라도 목표치 이상은 달성했을 거라고 생각 됩니다.

기본적 분석 + 기술적 분석은 다시 시도해보는중입니다. 기본적분석만으로 매도 시점을 잡기가 어려워 대략 현제가치를 계산해서 10%에 보유주식의 일부를 정리하고 15%, 20%, ... 100% 등으로 나누어서 분할매도 하는 방법으로 했는데 앞으로는 기술적분석을 도입한 가치주의 매수 매도시점을 분석하는 방법을 연구해보려 합니다.


주식자동화에 머신런닝이 가능한가..

이부분에 대해서 공부하고 많은 고민을 해봤습니다.

제가 생각은 가능하지만 현시점에서 100%는 불가능 하다입니다.

머신런닝은 과거에 일어났던일이 미래에도 일어난다면이라는 전제가 있을때 효과가 좋습니다.

주식시장에서 과거에도 일어났던 일이 미래에도 일어나려는 일인것을 예측하려면 주식시장에 영향을 주는 모든사람의 성장과정, 생각, 성격, 경제수준등이 데이터화되어 저장되어있을때쯤에나 가능할 수 있겠구나 였습니다.

개인적으로 사람마다 성장한 환경이 다르므로 시대별로 다른것을 학습했기떄문에 관련데이터를 구할 수 없어서 100%가까운 확율은 나올 수 는 없다고 판단 됩니다.



그럼 매매자동화는 지금당장 불가능한 것 인가 라는 관점으로 본다면 그건 아니라고 생각합니다. 

머신런닝은 기계 학습인데, 사람이 학습하는 방법을 기계가 학습할 수 있게 분야별로  활용할 수 있는 CNN, RNN등의 알고리즘을 만들어낸 것입니다. 이것만을 이용하는게 아니라 이것또한 하나의 활용범위로 보는게 좋을것 같습니다. 

과거에 일어났던일이 지금 일어나는 부분 또한 있을것이고, 그부분이 다른 데이터와 결합된다면 확율이 좀더 올라가지 않까라는 생각도 해보고 있습니다.

기계학습 부분은 아직 많은부분을 공부 및 시도해보지 못해서 활용방안에 대해서는 공부가 더 되면 이후에 다시 정리하겠습니다. 


매매에 영향을 주는 통계학적 데이터들은 연구가 많이된 부분들이 있습니다. 

최적의 매수시기, 최적의 매도시기를 찾는건 확율이 높지않아도 매수한 가격보다 비싸게 팔게하는 부분을 자동화하는건 가능하다고 판단되고, 당장은 사람이 알고리즘을 짜논대로 매수 매도하겠지만,  알고리즘을 자동으로 만들어내고, 스스로 시뮬레이션해보고, 관련된 알고리즘을 자동으로 생성해내는 부분도 가능할것 같습니다.

모든것이 데이터화 되어있지는 않지만 데이터화 되어있는 많은 자료들도 활용할 수 있으니까요.

종가 시가 고가 거래량만을 활용한게아닌 관련주식에 영향을 줄수 있는 다른 가격정보도 활용할 수 있게하면 점점더 확율이 높아지고,

리스크를 줄이기위해 주식투자금액,.현금보유량을 잘 조절하게 하고, 주식부분에 대해서 분산투자를 하게 하고, 투자영역도 주식뿐만아니라 부동산, 가상화폐, 금 등의 한정자산으로도 확장하면 투자에 대한 자동화가 불가능하지는 않을것 같은게 지금까지의 생각압니다.


예를들면 태양광 관련주인 OCI를 자동매매하게하려면 폴리실리콘의 가격동향 정보가 있는 PV인사이트 데이터도 참조하게 하고

재무정보, 자산정보, 코스피동향, 다우동향, 대차잔고, 신용잔고, 국내 관련주, 해외관련주 가격동향등 데이터화 되어있는 많은 부분 또한 활용할 수 있으니까요.


단 투자를 정말 잘하는 사람보다 좋은결과를 내기는 어려울 것 같습니다. 자동화 매매를 하려면 데이터화 되어있는 부분을 이용해야하는데 데이터화 되어있지않은 투자를 잘하는분이 알고 있는 내부정보, 친분관계, 미래에 일어날일등에 대해서는 데이터화 되어있지 않은 부분이 많기 떄문입니다.


주식 자동화 매매는 기본적 분석에 중점을 두고 기술적 분석을 활용할 수 있게 계속 연구하면 충분히 가능성있다고 판단됩니다.~

여러 사람들과 고민하고 시도해보면서 느낀건 어려운것 부터 하다가 성과를 못보고 도중에 포기하게 되는 부분이 많다는것 입니다. 단기적으로 성과를 보기 힘든내용이라 앞으로도 많이 해봐야할것 같습니다


자동매매의 목표수익율은 은행이자보다 높게 잡고 시작하는게 좋을것같습니다.

성과가있으면 다양한 방법을 시도해서 지금 자동매매 수익율보다 좀더 높일 수 있는식으로요~