안녕하세요 시아노입니다. 오늘은 파인스크립트를 통해 전략을 만드는 방법을 공부해 보겠습니다. 일단 해당 코드는 RSI 기본전략을 작성한 것으로 간단한 코드를 통해 어떤 결과가 나올지 확인해 보겠습니다.
Pine Script 코드 자세히 분석하기
이 글에서는 제시된 파인스크립트(Pine Script) 코드를 한 줄씩 분석하여 초보자도 이해할 수 있도록 설명합니다. 이 코드는 RSI(Relative Strength Index) 지표를 기반으로 한 간단한 트레이딩 전략을 구현한 것입니다.
코드 전체
//@version=6
strategy("RSI 전략", overlay = false, initial_capital = 100000, default_qty_type = strategy.percent_of_equity, default_qty_value = 100)
rsi = ta.rsi(close, 14)
plot(rsi)
// rsi가 30보다 작아지면 과매도 (매수)
if rsi < 30
strategy.entry("매수", strategy.long)
// rsi가 70보다 커지면 과매수 (매도)
if rsi > 70
strategy.close("매수")
코드 한 줄씩 상세 설명
//@version=6
이 코드는 Pine Script 버전 6을 사용한다는 것을 명시합니다. Pine Script는 버전별로 문법과 기능이 다를 수 있으므로, 항상 사용하는 버전을 명확히 표기해야 합니다.
strategy("RSI 전략", overlay = false, initial_capital = 100000, default_qty_type = strategy.percent_of_equity, default_qty_value = 100)
- strategy 함수: 새로운 전략을 정의합니다.
- "RSI 전략": 전략의 이름입니다. 이 이름은 트레이딩뷰(TradingView) 플랫폼에서 표시됩니다.
- overlay = false: 차트 위에 표시하지 않음을 의미합니다.
true
로 설정하면 캔들 차트 위에 전략이 시각화됩니다. - initial_capital = 100000: 초기 자본을 100,000으로 설정합니다. 이는 백테스트 시 자본으로 사용됩니다.
- default_qty_type = strategy.percent_of_equity: 거래 단위를 계좌 잔고의 일정 비율로 설정합니다.
- default_qty_value = 100: 거래량을 계좌 자산의 100%로 설정합니다. 즉, 모든 자본을 사용해 거래합니다.
rsi = ta.rsi(close, 14)
- ta.rsi: Pine Script 내장 함수로 RSI를 계산합니다.
- close: RSI 계산에 사용할 데이터입니다. 여기서는 캔들의 종가(close)를 사용합니다.
- 14: RSI 계산 시 사용하는 기간입니다. 기본적으로 14 기간이 많이 사용됩니다.
- 결과:
rsi
변수에 RSI 값이 저장됩니다.
plot(rsi)
plot 함수: RSI 값을 차트에 표시합니다. 이로 인해 RSI 지표가 시각적으로 확인 가능합니다.
if rsi < 30
- if 조건문: 조건을 확인합니다.
- rsi < 30: RSI 값이 30 미만일 때 조건이 참이 됩니다. RSI가 30 미만이면 과매도 상태를 나타냅니다.
strategy.entry("매수", strategy.long)
- strategy.entry: 새로운 포지션을 여는 함수입니다.
- "매수": 포지션 이름입니다.
- strategy.long: 매수(롱) 포지션을 엽니다.
if rsi > 70
- if 조건문: RSI 값이 70을 초과할 때 조건이 참이 됩니다. RSI가 70 이상이면 과매수 상태를 나타냅니다.
strategy.close("매수")
- strategy.close: 지정된 이름의 포지션을 닫는 함수입니다.
- "매수": 이름이 "매수"인 포지션을 닫습니다. 즉, 매도(포지션 종료)를 실행합니다.
요약 및 핵심 정리
- 전략 개요: 이 코드는 RSI를 기반으로 한 단순 매매 전략을 구현합니다.
- RSI가 30보다 작으면 과매도로 판단하여 매수.
- RSI가 70보다 크면 과매수로 판단하여 매도.
- 백테스트 준비: 초기 자본과 거래량 설정을 통해 백테스트에 적합한 환경을 만듭니다.
- 사용 사례: 이 코드는 초보자들에게 RSI 기반 트레이딩의 기본을 이해시키는 데 적합하며, 실제 전략 개발의 출발점으로 활용 가능합니다.
- 주의점: 시장 상황에 따라 RSI 전략의 성과가 달라질 수 있으므로, 추가적인 조건과 필터를 사용하는 것이 중요합니다.
이 코드를 통해 2024년 1월1일부터 2024년 1월20일 현재까지 백테스트를 거친결과는 아래와 같습니다. 비트코인 30분봉 기준 무려 58%수익과, 승률 70%에 가까운 실적을 보여주고 있네요 ^^
참고로 위 백테스트의 경우 거래소의 수수료가 반영된 자료가 아니기 때문에 그대로 적용하면 절대 안된다는 것을 알려드립니다. ^^;
'코인 전망 > 자동매매' 카테고리의 다른 글
파인스크립트 가우시안 필터를 활용한 전략 (0) | 2025.01.21 |
---|---|
파인스크립트를 통한 RSI 매매 개선 (0) | 2025.01.20 |
코인 자동매매 공부 _ 파인스크립트 소개 (1) | 2025.01.20 |