
이 거래 전략은 이동 평균과 상대적으로 약한 지표 (RSI) 를 결합한 정량 거래 시스템이다. 이 전략은 빠른 이동 평균과 느린 이동 평균의 교차를 사용하여 잠재적인 트렌드 변화를 식별하고 RSI를 사용하여 시장의 과매매와 과매매 상태를 확인한다. 이 방법은 시장의 동력을 포착하는 동시에 RSI 필터링을 통해 가짜 신호를 줄이기 위해 고안되었다. 전략의 설계는 기계 학습의 특징 조합과 신호 필터링 개념에서 영감을 얻었지만, 그 자체는 복잡한 기계 학습 알고리즘을 사용하지 않는다.
이 전략의 핵심은 다음과 같은 몇 가지 핵심 요소에 기반합니다.
쌍평선 시스템: 빠른 (~10주기) 와 느린 (~50주기) 간단한 이동 평균 (~SMA) 을 사용하여 트렌드를 식별한다. 빠른 선에서 느린 선을 통과하면 잠재적인 다중 신호로 간주되며, 빠른 선에서 느린 선을 통과하면 잠재적인 공백 신호로 간주된다.
RSI 필터: 14주기 RSI는 시장 상태를 확인하는 데 사용됩니다. RSI가 70보다 낮으면 더 많은 것을 허용하고 30보다 높으면 더 많은 것을 허용합니다. 이것은 과도하게 확장 된 시장에 들어가는 것을 피하는 데 도움이됩니다.
입시 논리: 평균선 교차와 RSI 조건이 동시에 충족될 때만 전략은 거래 신호를 발송한다. 이 쌍확인 메커니즘은 신호의 신뢰성을 높이기 위해 고안되었다.
출구 논리: RSI가 극한에 도달했을 때 (70 이상 또는 30 미만) 전략은 상반되는 상반 또는 빈 상반 포지션을 평행합니다. 이는 시장이 반전 할 때 적시에 수익을 창출하는 데 도움이됩니다.
트렌드 추적과 동력 결합: 이동 평균과 RSI를 결합하여 전략은 장기적인 트렌드를 포착하고 단기적인 오버 바이 오버 셀 기회를 식별합니다.
신호 필터링: RSI를 2차 확인으로 사용하여 가짜 돌파구로 인한 잘못된 판단을 줄이고 거래 품질을 향상시킵니다.
유연성: 전략 파라미터 (예: 평균선 주기, RSI 마이너스) 는 다른 시장과 시간 프레임에 따라 최적화 될 수 있습니다.
위험 관리: RSI가 극한에 도달했을 때 자동으로 포지션을 청산하여 전략에는 특정 위험 제어 장치가 내장되어 있습니다.
시각화: 전략은 거래자가 직관적으로 이해하고 분석하기 위해 차트에 매겨진 거래 신호를 표시합니다.
지연성: 이동 평균은 본질적으로 지연된 지표이며, 트렌드 전환점 근처의 입출구가 적당하게 이루어지지 않을 수 있다.
흔들리는 시장의 성능: 가로판 또는 흔들리는 시장에서, 자주 평행선 교차는 과도한 가짜 신호와 거래 비용을 초래할 수 있다.
변수 감수성: 전략 성능은 선택된 평균선 주기 및 RSI 마이너스에 민감할 수 있으며, 다른 변수는 다른 시장 환경에서 큰 차이를 보일 수 있다.
현 전략에는 명확한 중지 규칙이 없으며, 극단적인 시장 상황에서는 큰 손실을 입을 수 있습니다.
과도한 기술 지표 의존: 전략은 기술 지표에 전적으로 의존하여 기본 사항 및 시장 감정과 같은 다른 중요한 요소를 무시합니다.
자기 적응 파라미터: 자기 적응 메커니즘을 도입하여 시장의 변동성 동력에 따라 평균 주기와 RSI 마이너스를 조정하여 다른 시장 환경에 적응합니다.
트렌드 강도 필터를 추가: 트렌드 강도를 측정하기 위해 ADX를 추가하는 것을 고려할 수 있습니다. 트렌드 강 시장에서만 거래하여 흔들리는 시장의 잘못된 신호를 줄일 수 있습니다.
스톱 메커니즘을 도입: ATR (Average True Rate) 에 기반한 동적 스톱을 설정하거나, 고정된 퍼센티지 스톱을 사용하여 위험을 더 잘 제어한다.
최적화된 출장 전략: RSI 극한 출장 이외에, 이동식 정지 또는 트렌드 반전 기반의 출장 신호를 추가하여 수익을 더 잘 고정시킬 수 있습니다.
거래량 필터링을 늘리십시오: 입시 신호에 기반하여 거래량 확인을 추가하고 신호 신뢰성을 높이기 위해 거래량이 방출될 때만 거래를 수행하십시오.
다중 시간 프레임 분석: 더 긴 시간 동안의 트렌드 분석과 결합하여 주요 트렌드 방향으로만 거래하여 승률을 높인다.
기계 학습 최적화: 유전 알고리즘이나 베이스 최적화와 같은 기계 학습 알고리즘을 사용하여 최적의 변수 조합을 찾고 전략의 안정성과 적응성을 향상시킵니다.
이 기계 학습에 영감을 받은 이중 평행 RSI 거래 전략은 트렌드 추적과 동력 거래를 결합하는 프레임 워크를 제공합니다. 이동 평균을 통해 트렌드를 식별하고 RSI를 사용하여 신호를 필터링하고 최적화하여 시장의 주요 움직임을 포착하는 것을 목표로합니다. 전략 설계는 비교적 간단하지만 추가 최적화 및 확장을위한 좋은 토대를 제공합니다. 거래자는 자신의 위험 선호와 시장 관점에 따라 전략 성능을 향상시킬 수 있습니다.
/*backtest
start: 2024-05-01 00:00:00
end: 2024-05-31 23:59:59
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=5
strategy("ML Inspired Strategy for Nifty50", overlay=true)
// Define the input parameters for the strategy
length_fast = input.int(10, minval=1, title="Fast MA Length")
length_slow = input.int(50, minval=1, title="Slow MA Length")
rsi_length = input.int(14, minval=1, title="RSI Length")
rsi_overbought = input.int(70, minval=1, title="RSI Overbought Level")
rsi_oversold = input.int(30, minval=1, title="RSI Oversold Level")
// Calculate the moving averages
ma_fast = ta.sma(close, length_fast)
ma_slow = ta.sma(close, length_slow)
// Calculate the RSI
rsi = ta.rsi(close, rsi_length)
// Define the conditions for long and short entries
long_condition = ta.crossover(ma_fast, ma_slow) and rsi < rsi_overbought
short_condition = ta.crossunder(ma_fast, ma_slow) and rsi > rsi_oversold
// Plot the moving averages
plot(ma_fast, title="Fast MA", color=color.blue)
plot(ma_slow, title="Slow MA", color=color.red)
// Add strategy logic for entering and exiting trades
if (long_condition)
strategy.entry("Long", strategy.long)
if (short_condition)
strategy.entry("Short", strategy.short)
// Plot buy/sell signals on the chart
plotshape(series=long_condition, title="Buy Signal", location=location.belowbar, color=color.green, style=shape.labelup, text="BUY")
plotshape(series=short_condition, title="Sell Signal", location=location.abovebar, color=color.red, style=shape.labeldown, text="SELL")
// Add exit conditions
if (rsi > rsi_overbought)
strategy.close("Long")
if (rsi < rsi_oversold)
strategy.close("Short")