본문 바로가기

전체 글3554

ADF 테스트를 이용한 종목선택에 도전하기 안녕하세요? 지난번 포스팅에서 어떻게 가장 큰 장애물을 넘기는 했는데, 정작 트러스 제7호가 거래정지가 되어 버리는 바람에 새로운 종목을 찾으러 가야할 타이밍이 되기는 되었습니다. 그래서 이번 포스팅에서는 ADF 테스트라고 해서, 시계열의 데이터-가령 주식의 현재가가 시간에 따라서 어떻게 바뀌는 것이 랜덤워크라고 해서 이전 결과가 다음 결과에 영향을 주지 않는 독립적인지, 아니면 이전 결과가 다음 결과에 영향을 주는 상관이 있는 관계인지를 알려주는 테스트가 있습니다. 이 테스트를 가지고 와서, 한번 코스피의 종목을 계산, 랜덤워크를 따르지 않는 종목만을 선택하고자 합니다. 먼저 작업에 필요한 모듈인 statsmodels라는 모듈을 인스톨 하기 위헤서 pip install statsmodels를 아나콘다 .. 2019. 4. 21.
가장 힘들어 보이는 장애물을 넘기 위한 시도-complete- 안녕하세요? 지난번 포스팅에서 새로운 에러가 발생하는 것을 확인할 수 있었습니다만, 이번 포스팅에서는 그 에러를 극복하고 실전 모의투자까지 들어간 결과를 포스팅 하고자 합니다. 여기까지 했기 때문에 일단 자동으로 인공지능 주식투자자는 어떻게 완료가 된 것을 확인할 수 있었습니다. 그래서 먼저 위 스크린샷에서 보이는 것처럼 클래스 안에서 메서드에서 메서드를 띄어넘을 수 있는 변수를 초기화 메서드에서 공백으로 선언해 주도록 합니다. 그리고 나서 기존에 action_list.txt를 다루는 코드는 그대로 놔두고, 아까 공백으로 선언한 변수에다가 txt파일에 들어갈 내용을 집어 넣도록 해 봅니다. 다음으로는 trade_stocks()메서드에서 위 스크린샷처럼 기존에 없던 새로운 변수를 선언해 주도록 합니다. 그.. 2019. 4. 21.
가장 힘들어 보이는 장애물을 넘기 위한 시도-14- 안녕하세요? 이번 포스팅에서는 지난번 포스팅에서 발생한 산넘어 산을 넘었더니 또 등장한 산까지 넘어간 것을 다루어 보고자 합니다. 이번 포스팅에서 어떻게 action_list.txt에서 나오는 문제를 해결하기는 했습니다만, 또 다른 문제가 발생한 것을 알리고자 합니다. 지난번 포스팅에서 발생한 에러가 무엇이냐 하니, action_list.txt에 1줄밖에 없을 경우에 줄의 마지막 줄을 읽으라는 명령인 [-1]을 사용하면 에러가 났습니다. 그래서 리스트의 길이를 측정해서 이게 1줄밖에 없다 = 1인 값이 되면 0번째 요소를 읽으라는 식으로 바꾸어 주도록 합니다. 그런데 계속해서 왜 에러가 나왔는데, 그 이유로는 1줄밖에 없는 경우에는 len()함수로 0이라는 값을 반환하기 때문에 1로 해서 생기는 문제였습.. 2019. 4. 20.
가장 힘들어 보이는 장애물을 넘기 위한 시도-13- 안녕하세요? 지난번 포스팅에서 거래해야 하는 주식의 수량까지 가지고 오는 데도 성공한 것을 보여주고 있었습니다. 그래서 이제는 제대로 데이터를 가지고 와서, RLTrader가 보내온 신호를 바탕으로 제대로 거래에 들어가기 위한 과정을 밟아야만 합니다. 일단 RLTrader에서 먼저 위 스크린샷에 보이는 것처럼 결과를 한줄에 표시할 수 있도록 만들어 줍니다. 그리고 나서 중간에 자르기를 위해서 &&&를 준비해 주도록 합니다. 그리고 실제로 부모 프로세스인 pytrader4를 실행시킨 결과, 위 스크린샷과 마찬가지로 제대로 나오는 것을 확인할 수 있기는 있었습니다. 그리고 나서 기존에는 RLTrader에서 action_list.txt에서 행동할 사항을 적어 주어야 하는데, 그걸 pytrader가 하도록 만들.. 2019. 4. 20.