[R] 비트코인 볼린져밴드 및 존버 벡테스트 결과 해석
lareale
10/27/2019
0.1 Back Test 결과
1 Back Test 결과 해석
결과 해석도 좋지만 이 개발 과정에서 다시 저를 돌아보게 됐습니다.
많은 실수를 거쳤는데 몇 가지를 간략히 소개하려합니다. 저도 나중에 돌아볼겸요.
1.1 실수
1.1.1 불명확한 정의
손절함수를 정의하는데 명확하게 하지 않으니 손절함수를 사용할 때와 손절함수를 검증할 때 차이가 발생하더군요.
당연히 그 문제를 바로 확인할 수는 없었습니다. 그러므로 순서대로 정의하고 순서대로 테스트하는 연습을 반드시 습관화 해야겠습니다.
1.1.2 로직 개발 실수
개발 하다 보면 알겠지만 분기 조건을 명확하게 정의하지 않고 막 코딩하면 결국엔 검증하느라 시간을 빼게 됩니다.
그러니 분기 조건을 누락한 것 없이 명확히 해야한다는…
1.1.3 검증 생략 실수
당연히 맞겠지 하고 중간 산출 결과를 생략하고 최종 결과를 뽑는 경우엔 어김없이 이해할 수 없는 상황이 발생합니다.
그 상황이란게 눈에 띄게 보이면 다행이지만 절대 그럴리 없죠.
예를 들어 손절함수를 개발하면서 손절을 검증하지 않았더니, 당연히 이상한 구간에서 손절이 발생하고 예상외로 높은 결과값이 나오더라구요.
결과도 좋게 나오니 너무 기분이 좋죠. 그러나 그건 잘못된 결과라는 거… 중간 산출물을 안뽑으면 나중에 공수 더듭니다.
1.2 해석
서두가 길었습니다.
존버를 한 기준으로 나머지 분석 결과를 보시면 해석하기 편할 것같네요.
초기 자본은 250,000원 으로 설정하여 매매를 시작했습니다. 물론 모의 투자입니다.
매매시 발생하는 수수료는 계산하지 않았습니다.
1.2.1 분석 기간 2018-01-01 ~ 2019-10-27
분석기간을 상당히 길게 잡았습니다. 짧게 잡으면 그만큼 잘못된 해석을 할 수 있습니다. 반드시 긴 기간을 분석해야합니다.
그래프를 봐도 2018년에는 계속 하락했고 2019년에는 상승한 편이었습니다.
1.2.2 BbandsAsset (볼린져 밴드 n=25 sd=3)
하락 구간(2018-01 ~ 2018-07)에서는 너무 안좋군요.
횡보 구간(2018-07 ~ 2018-12)에서는 상대적으로 다른 매매법보다 성능이 좋습니다.
상승 구간(2019-04 ~ 2019-현재까지)에서는 여타 다른 매매법과 비슷한 양상을 보입니다.
1.2.3 Zone Beo (존버한 결과)
하락 구간에서는 너무 안좋습니다.
횡보 구간에서는 당연하게도 변동폭이 적어 기준이 될 수 있겠네요.
상승 구간에서는 존버가 젤 좋아보이기도 합니다.
1.2.4 Combination (잡탕 매매)
볼린저 밴드와 나름의 손절 방법 그리고 기타 다른 방식을 섞어 만든 결과 입니다.
자세한 방법은 소개해드리기 어렵고
하락 구간에서는 상대적으로 방어를 잘하는 것을 볼 수 있습니다.
횡보 구간에서는 상대적으로 볼린져 밴드보다 뒤쳐지는 부분과 오히려 더 나은 수익을 보이는 부분도 있네요.
상승 구간에서는 확실히 좋은 결과를 내는 편입니다.
1.2.5 종합
다음엔 하락구간을 잡는 방법을 찾아야겠군요.
'정리 > 데이터 분석' 카테고리의 다른 글
[R, Python] Selenium 크롤링 (사이트 정보 긁어오기) (0) | 2023.11.07 |
---|---|
[R, Python] 클립보드 사용법 (1) | 2023.11.02 |
[R] 비트코인의 변동성을 분석해보자 (0) | 2018.11.11 |
[R] 비트코인 트랜드 제거하기 (0) | 2018.11.07 |
[R] R과 C연동 (Rcpp 패키지 사용. R 속도 개선.) (0) | 2018.11.03 |