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

2019년 8월 4째주 informationHunter의 작동

by 인터넷떠돌이 2019. 8. 26.
반응형

안녕하세요?

 

지난번 시간에 어떻게 해서 ADF test와 허스트 지수 계산, 그리고 나서 Half-Life를 계산하는 것 까지는 성공을 했는데, 문제는 이  상태로는 쓸만한 데이터인지 아닌지 제대로 판단을 할 수 없습니다. 그래서 이번 포스팅에서는 현재가, 거래량, 그리고 20일 평균 거래량을 가지고 올 수 있는 information hunter를 작동 시키도록 합니다.

 

먼저 코스피의 모든 종목 코드를 가지고 오도록 합니다. 이 종목 코드들은 하나같이 위 스크린샷처럼 txt파일에 집어넣어 주어서 한번 일괄 적용이 되도록 합니다.

 

일단 계속해서 제대로 5의 배수로 나누어 지는 갯수의 코드가 아니면 에러가 났기 때문에, 이번에는 에러가 났으면 위 스크린샷처럼 parent process상에서 삼성전자의 정보를 가지고 오도록 변형해 봅니다.

 

그런데 이렇게 했음에도 불구하고 위 스크린샷에서 보이는 것처럼 에러가 또 발생하는 것을 볼 수 있었습니다. 일단 결과를 보존하도록하고, 에러의 원인을 잡으러 가 봅니다.

 

 

어디가 문제인지 몰라서 한번 디버그 모드를 작동 시켰더니, 위 스클니샷에서 나와 있는 것처럼, IndexError라는 것을 알 수 있었습니다.

 

그래서 결국 고심이라고 할 것도 없이, try: 와 except IndexError:를 주는 식으로 예외처리를 하는 식으로 계획을 짰습니다.

 

이렇게 하자, 거짓말 같이 5의 배수가 되지 않아서 기존에는 에러를 일으킨 부분에서 에러없이 넘어가는 것을 볼 수 있었습니다. 이제 이 프로그램에서 삼성전자는 미끼 종목이기에 빼 주면 됩니다.

 

다만 어떻게 된 것인지 삼성전자의 정보는 들어가지 않은 것을 확인할 수 있었습니다. 일단 어떻게 된 것인지 모르겠지만, 이왕 이렇게 된 김에 너무 자세히는 파고들지 말고 여기까지만 움직이도록 합니다.

 

다음으로 해야 할일은 information hunter에 들어가서 코스닥의 평균회귀 테스트 결과를 가지고서 정보를 얻어오는 작업을 해야 하기 때문에, 위 스크린샷과 같이 목록의 코드들을 바꾸도록 합니다.

 

이번에도 try를 이용한 예외처리를 해서 인지 몰라도, 어떻게 해서 제대로 작업을 처리할 수 있는 것을 볼 수 있었습니다. 이제 에러 없이 처리된 결과를 보도록 합니다.

 

이번에는 32개의 종목이 나왔는 것을 볼 수 있었습니다. 일단 여기서 펀드라고 할만한 종목은 다 제외를 시키도록 하고, 1주당 가격이 1000원 미만인 종목도 제외를 시키도록 하고, 다음으로 20일 평균 거래량과 전날 거래량을 봐서 미달하는 종목은 모두 제외를 시켰습니다.

반응형