본문 바로가기

프로그래밍377

백테스트의 에러찾기 여정 -1- 안녕하세요? 지난번 포스팅에서 어떻게 백테스트에서 무언가 한계에 부딪친 것 같다고 하면서도 어딘가 문제가 있다는 것을 언급하였는데, 실제로 문제가 있었습니다. 일단 이번 포스팅 부터 일련의 시리즈는 이런 에러를 잡기 위한 과정을 보여 드리고자 합니다. 우선 위 스크린샷에서 볼 수 있는 것처럼 자식 프로세스를 에러잡기 위해서 따로 실행을 하는데, 이전에 실패한 적이 있는 condition의 기록처럼 300만원 자본금에 30%씩 리스크와 손절매를 하라고 명령을 내렸습니다. 그리고 나서 다음으로 진행을 해 보았지만, 일단은 어떻게 1개의 종목만 가지고서 에러를 탐지하지는 못하는 것을 확인할 수 있었습니다. 결국 여러개의 종목을 투입하고 나서야 겨우겨우 에러가 나왔는데, 왜 인지 모르겠습니다만, 어째서 인지 i.. 2021. 6. 21.
무언가 한계에 부딪친 백테스트 -5- 안녕하세요? 거의 이번주 내내 무언가에 한계에 부딪친, 혹은 에러가 있는지도 모르는 상황에서 계속해서 무엇이 문제인지 잡아가는 중 입니다. 일단 이 작업을 하기 위해서는 먼저 해야 할 것으로는 여러번의 백테스트를 다양한 조건에서 거쳐보는 것 외에는 없다는 생각이 듭니다. 먼저 지난번 포스팅에서 제대로 마무리를 짓지 않은 condition005에 대해서 결과를 올려 보고자 합니다. 일단 여기서는 위 스크린샷에서 볼 수 있는 것처럼 우선 RSI지수를 기반으로 하는 매수/매도 룰에서도 무언가 결과가 보이기 시작했습니다. 일단 이런 조건에서 위 스크린샷에서 보이는 것처럼 어떻게 해서 조건을 잡아보는데 성공을 했는데, 그럼 그 동안 무엇이 잘못 되어서 볼린져 밴드를 제외한 다른 곳에서는 전혀 반응이 없었던 것 일.. 2021. 6. 18.
다음 실험을 위한 R 프로그램 손보기 -2- 안녕하세요? 지난번 포스팅에서 R을 이용해서 작성된 프로그램에 문제가 있어서 이래저래 수정을 하려고 했지만, 이게 뜻대로 제대로 되지는 않는 것을 보여주었습니다. 아무튼 1차 시도는 실패이고, 이제 2차 시도를 해서, 어떻게 해서든 성공을 해 보기는 보아야 할 차례입니다. 이게 알고보니 final항목에 있는 것을 error로 지정해서 생기는 문제였습니다. 즉, 에러가 일어난 경우에만 이걸 지정하면 되는데, 무조건 지정하라고 해서 생긴 문제인데, 이걸 수정하자 마자, 그래도 어떻게 해결이 되었습니다. 결국 이렇게 해서 베타값이 1 이상인 고유 종목만 315개가 나왔는데, 이건 절대 적은 것이 아니기는 합니다. 좀 더 기준을 올려 보도록 하겠습니다. 일단 베타값이 2 이상인 경우만 어떻게 골라 보도록 했습니.. 2021. 6. 1.
다음 실험을 위한 R 프로그램 손보기 -1- 안녕하세요? 이래저래 다른 작업을 한다고 많이 정신이 없었는데, 아무튼 간에 일단 이번 포스팅에서는 기존의 R 프로그램으로 베타값을 계산해서 먼저 종목을 추려낸 것은 좋았지만, 이게 문제가 하나 있었습니다. 일봉차트를 이용한 것은 좋은데ㅐ, 문제는 너무 옛날의 데이터까지 가지고 와서 계산을 하기에, 문제가 한둘이 아니어 보였습니다. 가장 먼저 할 일로는 위 스크린샷처럼 실험에 사용할 일봉차트를 미리미리 받아오는 것이라고 할 수 있습니다. 이렇게 받아온 다음에, 이제는 R 스튜디오를 열어 보도록 합니다. 우선 last함수를 써서 가장 아랫쪽부터 최신의 데이터가 있기 때문에, 이것만 1년치 가지고 오도록 해 보도록 합니다. 이렇게 해서 가지고 오면......... 일단은 제 의도대로 어떻게 되는 것을 확인할.. 2021. 6. 1.