kNN 기반 추세 추종 전략
1
Follow
1802
Followers
개요
본 전략은 k-최근접 이웃(kNN) 머신러닝 알고리즘을 활용하여 시장 추세를 예측하고, 예측 결과에 따라 롱(long) 및 숏(short) 포지션 신호를 생성합니다. 이 전략은 과거 데이터, 기술적 지표 등 다양한 요소를 종합적으로 고려하여 kNN 모델을 훈련하고 시장 특성을 동적으로 파악함으로써 자동화된 추세 추종 거래를 구현합니다.
전략 원리
- 훈련 데이터 수집: 과거 종가, 거래량 등의 시계열 데이터와 RSI, CCI 등의 기술적 지표를 수집합니다.
- 데이터 전처리: 지표 값을 0~100 범위로 정규화합니다.
- kNN 모델 훈련: 현재 kNN 모델의 두 가지 특징(feature)을 입력으로 사용하여, 이 특징 벡터와 과거 특징 벡터 간의 유클리드 거리를 계산합니다. 가장 가까운 k개의 과거 샘플을 선택하고, 이 k개 샘플의 레이블(롱 또는 숏) 분포를 집계합니다.
- 예측 획득: k개의 최근접 이웃 샘플의 레이블을 기반으로 현재 시장 움직임을 예측합니다. 예측이 롱이면 롱 포지션 신호를, 숏이면 숏 포지션 신호를 생성합니다.
- 거래 실행: 손절매(stop-loss), 포지션 크기 조절, 이동평균선 등의 필터를 결합하여 거래를 실행합니다.
전략 장점
- 머신러닝 알고리즘을 활용하여 기술적 패턴을 자동으로 식별하므로 수동 개입이 필요하지 않습니다.
- 다양한 기술적 지표를 모델의 특징(feature)으로 유연하게 선택할 수 있으며, 전략을 실시간으로 최적화할 수 있습니다.
- 손절매, 포지션 관리 등 엄격한 리스크 관리 메커니즘을 통합합니다.
- 손절매 라인을 시각화하여 명확하고 직관적으로 표시합니다.
리스크 및 해결 방법
- 머신러닝 예측에 오경보(허위 신호)가 발생할 수 있습니다. 적절한 k값, 특징 벡터, 샘플 시간 범위 등을 선택하여 모델을 최적화할 수 있습니다.
- 단방향 거래에는 잠재적 위험이 존재합니다. 코드에 양방향 거래를 허용하여 버그를 제거할 수 있습니다.
- 매개변수 설정이 부적절하면 과도한 거래(over-trading)로 이어질 수 있습니다. 포지션 크기, 거래 빈도 등의 매개변수를 적절히 조정해야 합니다.
최적화 방향
- kNN 입력 특징으로 다양한 유형의 기술적 지표를 테스트합니다.
- 맨해튼 거리(Manhattan distance) 등 다른 거리 측정 방법을 시도합니다.
- 샘플 거리 또는 분류 품질을 사용하여 포지션 크기를 조정합니다.
- 모델 훈련 세트와 테스트 세트를 분할하여 롤링 최적화를 구현합니다.
요약
본 전략은 고전적인 kNN 알고리즘을 사용하여 시장 추세를 예측하고, 예측 신호에 따라 추세 추종 거래를 수행합니다. 이 전략은 매개변수 조정이 가능하고 리스크를 통제할 수 있어 사용자에게 효과적인 자동화된 거래 솔루션을 제공합니다. 사용자는 기술적 지표 조합을 변경하거나 모델 하이퍼파라미터를 최적화하는 등 다양한 방법으로 전략 성능을 지속적으로 향상시킬 수 있습니다.
Source
Pine
Strategy parameters
Related strategies
Comment
All comments (0)
No data
- 1

