
RSI 평행선 쌍금포크 흔들림 전략은 RSI 지표와 평행선의 금포크 시그널을 동시에 사용하여 구매와 판매를 결정하는 양적 거래 전략이다. 이 전략은 RSI 지표를 사용하여 시장이 과대평가되거나 과소평가되었는지 판단하고, 평행선의 추세 판단과 결합하여 RSI 지표가 과매매 현상을 보여주는 동시에 거래를 발송한다. 이것은 가짜 신호를 효과적으로 필터링하여 전략의 안정성을 높일 수 있다.
이 전략은 주로 RSI 지표와 평균 선의 조합을 기반으로 한다. 첫째, 일정 주기 동안의 RSI 값을 계산하고 오버 바이 오버 세일 라인을 설정한다. 둘째, 빠른 평균 선과 느린 평균 선을 계산한다.
이 전략의 가장 큰 장점은 RSI 지표를 사용하여 오버 바이 오버 셀 현상을 판단하고, 평균선을 사용하여 트렌드 방향을 판단하여 가짜 브레이크를 효과적으로 방지할 수 있다는 것입니다. 또한, RSI와 BOLL 채널의 조합 사용은 더 많은 소음을 필터링하여 거래 신호를 더 정확하게 할 수 있습니다.
이 전략의 위험은 주로 다음과 같습니다: 작동 주파수가 너무 높고, 포장하기 쉽다; 매개 변수 설정이 적절하지 않으면 신호 정확도가 떨어질 수 있습니다. 또한, 흔들림 상황에서 손실이 발생할 수 있습니다.
RSI 변수 또는 평균 주기 변수를 다른 주기에 맞게 조정하는 것을 고려할 수 있습니다. 다른 지표와 결합하여 신호를 필터링하십시오. 위험을 제어하기 위해 스톱 손실 스톱 포인트를 설정하십시오. 매 거래의 위치 관리를 최적화하십시오.
RSI 평균선 쌍금叉 흔들림 전략은 전체적으로 안정적이고 신뢰할 수 있는 단선 거래 전략이다. 변수 조정과 위험 제어의 조합을 통해 더 나은 수익 수익률을 얻을 수 있다. 이 전략은 이해하기 쉽고 구현하기 쉽고, 양자 거래 초보자 학습 및 적용에 적합하다.
/*backtest
start: 2024-01-23 00:00:00
end: 2024-02-22 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=5
strategy("RSI slowma Ismael", overlay=false, default_qty_type=strategy.percent_of_equity, default_qty_value=100)
// Definir la longitud del RSI
rsi_length = input(title='RSI Length', defval=14)
//media
Fast = input(title='Fast', defval=7)
slow = input(title='Slow', defval=2)
// Definir los niveles de sobrecompra y sobreventa del RSI
rsi_overbought = input(title='RSI Overbought Level', defval=72)
rsi_oversold = input(title='RSI Oversold Level', defval=29)
// Definir la longitud y la desviación estándar de las Bandas de Bollinger
bb_length = input(title="Bollinger Bands Length", defval=14)
bb_stddev = input(title="Bollinger Bands StdDev", defval=2)
// Calcular RSI
rsi_value = ta.rsi(close, rsi_length)
// Calcular Bandas de Bollinger
bb_upper = ta.sma(rsi_value, bb_length) + bb_stddev* ta.stdev(rsi_value, bb_length)
bb_lower = ta.sma(rsi_value, bb_length) - bb_stddev * ta.stdev(rsi_value, bb_length)
//media movil adelantada
fastMA = ta.sma(rsi_value, Fast)
slowMA = ta.sma(rsi_value, slow)
// Definir la señal de compra y venta
buy_signal = (ta.crossover(rsi_value, slowMA) and rsi_value < bb_lower and rsi_value < rsi_oversold) or (rsi_value < bb_lower and rsi_value < rsi_oversold)
sell_signal = (ta.crossunder(rsi_value, slowMA) and rsi_value > bb_upper and rsi_value > rsi_overbought) or (rsi_value > bb_upper and rsi_value > rsi_overbought)
// Configurar las condiciones de entrada y salida del mercado
if buy_signal
strategy.entry("Buy", strategy.long)
if sell_signal
strategy.close("Buy")
// Configurar el stop loss y el take profit
stop_loss = input.float(title='Stop Loss (%)', step=0.01, defval=3)
take_profit = input.float(title='Take Profit (%)', step=0.01, defval=8)
strategy.exit("Exit Long", "Buy", stop=close - close * stop_loss / 100, limit=close + close * take_profit / 100)
// Configurar la visualización del gráfico
plot(slowMA, title='RSISMA', color=color.rgb(75, 243, 33), linewidth=1)
plot(fastMA, title='RSIFMA', color=color.rgb(75, 243, 33), linewidth=1)
plot(rsi_value, title='RSI', color=color.purple, linewidth=1)
// Marcar las zonas de sobrecompra y sobreventa en el grafico del RSI
hl= hline(rsi_overbought, title='Overbought', color=color.purple, linestyle=hline.style_dotted, linewidth=1)
hll= hline(rsi_oversold, title='Oversold', color=color.purple, linestyle=hline.style_dotted, linewidth=1)
fill(hl,hll, color= color.new(color.purple, 91))
bbfill = plot(bb_upper, title='Bollinger Bands up', color=color.blue, linewidth=1)
bbfill1= plot(bb_lower, title='Bollinger Bands down', color=color.blue, linewidth=1)
fill(bbfill,bbfill1, color= color.new(#2bb5ec, 91))