이 전략은 슈퍼트렌드 지표에 기반한 쌍평평선 교차 전략이다. 슈퍼트렌드 지표는 두 개의 평평선으로 구성되어 있으며, 교차는 구매 및 판매 신호로 작용한다. 전략은 트렌드 추적 전략에 속한다.
빠른 라인demaFast을 계산합니다. 공식은:2*ema5 - ema(ema5,5)
느린줄demaSlow을 계산합니다.*ema2 - ema(ema2,2)
빠른 선은 5일 EMA로 구성되어 가격 변화에 더 빠르게 반응한다. 느린 선은 2일 EMA로 구성되어 가격 변화에 더 느리게 반응한다.
빠른 선이 아래쪽에서 느린 선을 뚫을 때, 구매 신호를 생성한다. 빠른 선이 위쪽에서 아래쪽에서 느린 선을 뚫을 때, 판매 신호를 생성한다.
이렇게 반응 속도가 다른 두 개의 평행선의 교차를 사용하여 가격 경향의 변화를 판단하는 것은 전형적인 트렌드 추적 전략에 속한다.
구매 및 판매 신호에 따라 거래의 실제 실행.
이 전략의 핵심 아이디어는 간단하고 명확하며, 평균선 변수를 조정하여 다른 주기적인 시장에 적응할 수 있습니다.
쌍평선 교차를 사용하여 트렌드 방향의 변화를 판단하는 것은 간단한 실용적인 기술 지표입니다.
빠른 선과 느린 선의 매개 변수는 조정할 수 있으며, 다른 주기들에 대해 최적화할 수 있다.
전략적 신호는 명확하고 거래는 간단하다.
이 전략의 효과를 확인하기 위한 추적 기능이 완료되었습니다.
시각적 인터페이스는 교차 상황을 직관적으로 보여줍니다.
전략적 아이디어는 이해하기 쉽고, 초보자 학습에 적합하다.
쌍평선 교차는 지연 신호 또는 가짜 신호가 발생할 수 있다. 적절한 변수를 조정하거나 필터링 조건을 추가하여 개선할 수 있다.
조립이나 흔들리는 시장을 효과적으로 처리할 수 없고, 손해가 발생하기 쉽다. 트렌드 판단 메커니즘을 추가하여 최적화할 수 있다.
리포트 파라미터가 최적화될 수 있는 공간은 제한되어 있고, 실디 효과는 검증될 예정이다.
거래비용이 수익에 미치는 영향에 주의를 기울여야 합니다.
다른 평균선 길이의 파라미터 조합을 테스트하여 최적의 매칭을 찾습니다.
KDJ 지표와 같은 다른 지표를 추가하여 신호 필터링을 수행합니다.
단독 손실을 통제하기 위해 손해 방지 장치에 가입하십시오.
포지션 관리 기능이 추가되어 시장 상황에 따라 거래 비율이 달라집니다.
자본 관리 전략을 최적화하고 수익/손실 비율과 같은 위험 지표를 설정하십시오.
매개 변수 최적화 또는 신호 판단을 위해 기계 학습과 같은 알고리즘을 추가하는 것을 고려하십시오.
슈퍼트렌드 쌍평선 교차 전략은 간단한 트렌드 추적 전략으로, 변수를 조정하여 다른 주기에 적응할 수 있으며, 실제적으로 작동이 강하다. 다른 기술 지표와 결합하여 확장 및 위험 관리를 최적화하면 전략의 안정성을 더욱 강화할 수 있다. 이 전략은 배우기 쉽고, 동시에 확장 가능성이 높으며, 매우 실용적인 수량화 거래 전략이다.
/*backtest
start: 2023-01-01 00:00:00
end: 2023-09-18 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
strategy(title = "SuperTrend", shorttitle = "BTC")
ema5=ta.ema(close, 5)
ema2=ta.ema(close, 2)
demaFast = request.security(syminfo.tickerid, "30", 2 * ema5 - ta.ema(ema5, 5) )
plotchar((2 * ema5 - ta.ema(ema5, 5)), "d", "", location = location.top)
plotchar(demaFast, "fast", "", location = location.top)
demaSlow = request.security(syminfo.tickerid,"30", 2 * ema2 - ta.ema(ema2, 2) )
plotchar(demaSlow, "slow", "", location = location.top)
buy = ta.crossover(demaSlow, demaFast)
sell = ta.crossunder(demaSlow, demaFast)
strategy.entry("BUY", strategy.long, 1, when = buy)
strategy.entry("SELL", strategy.short, 1, when = sell )