이 전략은 John Ehlers가 개발한 개선된 상대적으로 약한 지수 ((RSI) 지표를 사용하며, 이 지표는 특수 평준화 방법을 통해 지연을 줄여 더 신뢰할 수 있는 거래 신호를 생성한다. 이 전략은 파라미터 설정에서 더 많이하고 더 멀리하는 방향을 쉽게 바꿀 수 있다.
이 전략은 먼저 평준화 가격을 계산합니다. 즉, 현재 종료 가격과 이전 3 일 종료 가격의 평균값입니다. 다음으로 평준화 가격의 상승과 하락의 모멘텀을 계산하고, 정상화 방식으로 0 ~ 1 사이의 RSI 값을 계산합니다. 마지막으로 RSI가 0.5보다 높으면 더보기 신호, RSI가 0.5보다 낮으면 더보기 신호로 거래 지시를 생성합니다.
이 전략의 핵심은 개선된 RSI 지표 계산 방식에 있다. 전통적인 RSI는 한 주기의 가격 변화를 보는 것 뿐인데, 이는 주기의 변수가 커질수록 지연이 더 심해진다. Ehlers의 아이디어는 여러 주기의 가격 변화의 추세를 고려하고, 가중된 평균을 수행함으로써, 지연을 줄임으로써 가격 변화로 인한 단기간의 잡음을 평형화 할 수 있다.
구체적으로, 이 전략은 단순한 점유율이 아니라 가격 상승과 하락의 Momentum 값을 계산한다. 그리고 RSI를 0 ~ 1의 범위에서 정상화한다. 이것은 가격 변화의 추세를 충분히 반영하고 더 신뢰할 수있는 거래 신호를 생성 할 수 있습니다.
전통적인 RSI 지표에 비해, 이 전략은 개선된 평평한 RSI를 통해 다음과 같은 장점을 가지고 있다:
전체적으로, 이 전략은 RSI 지표의 장점을 통합하고, RSI 지표의 약점을 개선합니다. 이것은 우리가 개선된 더 강력하고 신뢰할 수 있는 RSI 신호를 활용할 수 있게 해줍니다. 시장의 소음을 줄이면서 트렌드 변화의 기회를 잡을 수 있습니다.
이 전략이 RSI에 대한 유익한 개선에도 불구하고, 주의해야 할 몇 가지 위험이 있습니다.
전략적 위험을 줄이는 방법은 다음과 같습니다.
이 전략은 다음과 같은 부분에서 더 개선될 수 있습니다.
변수 설정, 신호 필터링 및 조합과 같은 방법을 지속적으로 최적화함으로써,이 전략을 더 강력하고 신뢰할 수 있으며 추세에 대한 인식이있는 RSI 거래 시스템으로 만들 수 있습니다. 이것은 전략의 승률과 수익성을 크게 향상시킬 것입니다.
이 전략은 RSI의 계산 방법을 개선하여 더 나은 평형 효과를 달성하고, 지연을 효과적으로 줄이고, 신호 품질을 향상시킵니다. 전략의 장점은 주로 평형 가격 변화, 트렌드 전환을 적시에 포착하는 측면에 나타납니다. 그러나 여전히 특정 위험을 주의해야하며, 지속적인 최적화를 통해 전략 효과를 지속적으로 향상시킵니다.
/*backtest
start: 2022-09-19 00:00:00
end: 2023-09-25 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=2
////////////////////////////////////////////////////////////
// Copyright by HPotter v1.0 16/11/2017
// This is new version of RSI oscillator indicator, developed by John Ehlers.
// The main advantage of his way of enhancing the RSI indicator is smoothing
// with minimum of lag penalty.
//
// You can change long to short in the Input Settings
// WARNING:
// - For purpose educate only
// - This script to change bars colors.
////////////////////////////////////////////////////////////
strategy(title="Smoothed RSI")
Length = input(10, minval=1)
reverse = input(false, title="Trade reverse")
xValue = (close + 2 * close[1] + 2 * close[2] + close[3] ) / 6
CU23 = sum(iff(xValue > xValue[1], xValue - xValue[1], 0), Length)
CD23 = sum(iff(xValue < xValue[1], xValue[1] - xValue, 0), Length)
nRes = iff(CU23 + CD23 != 0, CU23/(CU23 + CD23), 0)
pos = iff(nRes == 0, -1,
iff(nRes == 1, 1, nz(pos[1], 0)))
possig = iff(reverse and pos == 1, -1,
iff(reverse and pos == -1, 1, pos))
if (possig == 1)
strategy.entry("Long", strategy.long)
if (possig == -1)
strategy.entry("Short", strategy.short)
barcolor(possig == -1 ? red: possig == 1 ? green : blue )
plot(nRes, color=blue, title="Smoothed RSI")