
이 전략은 극지점 식별, 기술 지표 및 이동 평균을 결합한 정량 거래 시스템이며, 주로 시장의 과매매 과매매 상태의 역전 신호를 포착하여 거래한다. 전략의 핵심은 시장의 전환점을 식별하기 위해 CCI 또는 동력 지표를 사용하며, RSI 지표와 결합하여 과매매 과매매 지역을 확인하고, 100 일 지수 이동 평균을 통해 보조 필터링 조건으로, 완전한 거래 의사 결정 프레임 워크를 형성한다. 전략은 특히 5 분 시간 프레임의 거래 환경에 적합하다.
이 전략의 거래 논리는 다음과 같은 핵심 요소에 기반합니다.
입력 신호 소스 선택전략: 거래자는 CCI (상품 통로 지수) 와 Momentum (동기) 지표 중 하나를 주요 입문 신호로 선택하여 0선과 교차하는 지표를 식별하여 잠재적 인 전환점을 결정할 수 있습니다.
RSI 오버 바이 오버 셀 확인: 상대적으로 강한 지수 ((RSI) 지표를 사용하여 시장의 과매매 ((RSI≥65) 와 과매매 ((RSI≤35) 상태를 입시의 필수 조건으로 식별한다. 전략은 현재와 이전 3 회의 RSI 값을 검사하며, 조건이 충족되는 한 가지 조건만 있으면 가능합니다.
정체성에서 벗어나기 (선택)이 기능이 활성화되면, 시스템은 RSI 지표의 오차 형태를 오버 바이 / 오버 셀 영역에서 찾고, 가능한 반전 신호를 추가로 확인합니다.
EMA 필터링 조건13:00 주기 EMA 트렌드 필터로서, 전략은 가격이 EMA 아래에있는 경우에만 구매 신호를 고려하고, EMA 위에있는 경우에 판매 신호를 고려하여 거래 방향이 주요 추세와 반대되는지 확인합니다.
전체 입학 조건:
다중 인증 메커니즘여러 기술 지표 (CCI/동력, RSI, EMA) 를 결합하여 더 신뢰할 수 있는 거래 신호를 제공하여 가짜 돌파의 위험을 줄입니다.
유연한 변수 설정전략: 전략은 CCI 또는 동력 지표, RSI 과잉 구매 과잉 판매 절도, 지표 주기의 길이를 사용하는 것을 포함하여 다양한 매개 변수를 조정할 수 있습니다. 이는 거래자가 다양한 시장 환경과 개인 위험 선호도에 따라 최적화 할 수 있습니다.
역전향 거래 장점이 전략은 오버 바이 오버 셀 영역의 역전 기회를 포착하는 데 초점을 맞추고 있으며, 시장의 큰 변동이 있을 때 잘 작동하며, 특히 불안정한 시장 환경에 적합합니다.
확인 메커니즘에서 벗어나는 것: 선택적 역방향 확인 기능은 신호 품질을 향상시키고, 더 높은 확률의 역방향 지점을 선별하는데 도움을 준다.
직관적인 시각적 신호이 전략은 거래자가 거래 기회를 빠르게 식별하고 평가할 수 있도록 차트에 명확하게 표시된 구매 및 판매 신호를 제공합니다.
완전한 경보 시스템: 구매/판매 신호 알림 기능이 내장되어 있으며, 실시간으로 시장을 감시하고 거래를 수행할 수 있습니다.
역전향 위험: 역전 전략으로서, 강한 트렌드 시장에서 조기 진입할 수 있으며, 이로 인해 자주 손실 거래가 발생할 수 있다. 해결책은 강한 트렌드 시장에서 사용을 일시 중지하거나, 트렌드 강도 필터링 조건을 추가하는 것이다.
매개변수 민감도: 전략 성능은 파라미터 설정에 크게 의존합니다. 특히 RSI 오버 구매 오버 판매 수준과 지표 주기. 다른 시장 환경에는 다른 파라미터 설정이 필요할 수 있으며 충분한 재검토와 최적화가 권장됩니다.
신호 지연: 전략이 지표의 교차와 외형에 의존하기 때문에 신호 지연 문제가 발생할 수 있으며, 이는 입시점이 충분히 이상적이지 않습니다. 잠재적인 반전을 미리 식별하기 위해 더 민감한 단기 지표를 추가하는 것을 고려할 수 있습니다.
손해 방지 장치의 부재: 현재 전략은 명확한 중지 손실 규칙이 정의되지 않아 실제 거래에서 더 큰 하향 위험을 감수 할 수 있습니다. ATR 기반의 중지 또는 중요한 지지 / 저항 지점 중지와 같은 적절한 중지 전략을 시행하는 것이 좋습니다.
단일 시간 프레임에 지나치게 의존하는 것전략은 단일 시간 프레임의 신호에만 기반하며, 다중 시간 프레임의 확인이 부족하여 더 큰 트렌드의 배경에서 잘못된 판단을 초래할 수 있습니다.
더 많은 스톱 로즈와 스톱 규칙전략에 ATR 기반의 중지, 이동 중지 또는 위험 비율 기반의 고정 중지 및 수익 목표 설정과 같은 명확한 중지 및 중지 규칙을 추가하십시오.
다중 시간 프레임 분석더 높은 시간 프레임의 트렌드 정보를 통합하여 거래 방향이 더 큰 트렌드와 일치하는지 확인하거나 적어도 더 높은 시간 프레임의 지지/저항 지점 근처에서 역전 기회를 찾습니다.
로그인 최적화: 트래픽 확인을 추가하는 것을 고려하고, 트래픽이 증가했을 때만 역전 신호를 확인하고, 신호 품질을 더욱 향상시킨다. CCI를 트래픽 지표로 바꾸는 것은 이미 언급된 바와 같이 성능을 향상시킬 수 있다.
변동율 필터에 추가: ATR 또는 다른 변동성 지표를 도입하고, 낮은 변동성 환경에서 거래를 피하거나, 변동성에 따라 포지션 크기를 조정한다.
동적 변수 조정: RSI가 오버 바이 오버 소드 시점의 동적 조정을 구현하고, 시장 환경 ((트렌드 또는 흔들림) 에 따라 자동으로 최적화 파라미터.
자금 관리 규칙을 추가합니다.: 신호 강도 및 시장 조건의 동성에 따라 포지션 크기를 조정하여 자금 사용 효율을 최적화하십시오.
전략의 복잡성을 간소화: 전체 성능에 대한 각 구성 요소의 기여를 평가하고, 전략의 안정성과 사용 편의성을 높이기 위해 특정 조건을 제거하거나 단순화 할 수 있습니다.
EMA 보조 극점 역전 거래 전략은 기술 지표에 기반한 역전 거래 시스템으로 시장의 과매매 과매매 상태의 잠재적인 역전점을 포착하여 수익을 창출한다. 핵심 논리는 CCI/동력 지표의 제로선 교차, RSI의 과매매 과매매 영역 확인, 선택적 역전 검증 및 100EMA를 트렌드 필터로 결합한다.
이 전략은 격변하는 시장 환경 속에서 탁월한 성능을 보여 주며, 특히 Ethereum/Tether의 5분 시간 프레임에 적합하다. 전략의 장점은 여러 확인 메커니즘과 유연한 파라미터 설정이지만, 역동적인 거래의 고유한 위험과 완전한 중지 메커니즘의 부족으로 인한 도전을 안고 있다.
전략의 성능을 더욱 향상시키기 위해 적절한 스톱 로즈 규칙을 추가하고, 다중 시간 프레임 분석을 통합하고, 입점 논리를 최적화하고, 변동률 필터를 도입하고, 효과적인 자금 관리 규칙을 구현하는 것이 좋습니다. 이러한 최적화를 통해, 이 전략은 거래자의 도구 상자에 가치있는 보완이 될 수 있으며, 특히 단기 시장 역전 기회를 포착하는 데 적합합니다.
/*backtest
start: 2024-12-01 00:00:00
end: 2025-04-02 00:00:00
period: 3d
basePeriod: 3d
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=5
strategy("Extreme Points + 100 EMA Strategy", overlay=true)
// Input settings
ccimomCross = input.string('CCI', 'Entry Signal Source', options=['CCI', 'Momentum'], tooltip='CCI or Momentum will be the final source of the Entry signal if selected.')
ccimomLength = input.int(10, minval=1, title='CCI/Momentum Length')
useDivergence = input.bool(true, title='Find Regular Bullish/Bearish Divergence', tooltip='If checked, it will only consider an overbought or oversold condition that has a regular bullish or bearish divergence formed inside that level.')
rsiOverbought = input.int(65, minval=1, title='RSI Overbought Level', tooltip='Adjusting the level to extremely high may filter out some signals especially when the option to find divergence is checked.')
rsiOversold = input.int(35, minval=1, title='RSI Oversold Level', tooltip='Adjusting this level extremely low may filter out some signals especially when the option to find divergence is checked.')
rsiLength = input.int(14, minval=1, title='RSI Length')
// EMA filter (100 EMA)
emaLength = 100
emaValue = ta.ema(close, emaLength)
// CCI and Momentum calculation
momLength = ccimomCross == 'Momentum' ? ccimomLength : 10
mom = close - close[momLength]
cci = ta.cci(close, ccimomLength)
ccimomCrossUp = ccimomCross == 'Momentum' ? ta.cross(mom, 0) : ta.cross(cci, 0)
ccimomCrossDown = ccimomCross == 'Momentum' ? ta.cross(0, mom) : ta.cross(0, cci)
// RSI calculation
src = close
up = ta.rma(math.max(ta.change(src), 0), rsiLength)
down = ta.rma(-math.min(ta.change(src), 0), rsiLength)
rsi = down == 0 ? 100 : up == 0 ? 0 : 100 - 100 / (1 + up / down)
oversoldAgo = rsi[0] <= rsiOversold or rsi[1] <= rsiOversold or rsi[2] <= rsiOversold or rsi[3] <= rsiOversold
overboughtAgo = rsi[0] >= rsiOverbought or rsi[1] >= rsiOverbought or rsi[2] >= rsiOverbought or rsi[3] >= rsiOverbought
// Regular Divergence Conditions
bullishDivergenceCondition = rsi[0] > rsi[1] and rsi[1] < rsi[2]
bearishDivergenceCondition = rsi[0] < rsi[1] and rsi[1] > rsi[2]
// Entry Conditions
longEntryCondition = ccimomCrossUp and oversoldAgo and (not useDivergence or bullishDivergenceCondition) and close < emaValue
shortEntryCondition = ccimomCrossDown and overboughtAgo and (not useDivergence or bearishDivergenceCondition) and close > emaValue
// Plotting 100 EMA
plot(emaValue, title="100 EMA", color=color.blue, linewidth=1)
// Entry and Exit strategy logic
if (longEntryCondition)
strategy.entry("Buy", strategy.long)
if (shortEntryCondition)
strategy.entry("Sell", strategy.short)
// Plotting buy and sell signals on the chart
plotshape(longEntryCondition, title='BUY', style=shape.triangleup, text='B', location=location.belowbar, color=color.new(color.lime, 0), textcolor=color.new(color.white, 0), size=size.tiny)
plotshape(shortEntryCondition, title='SELL', style=shape.triangledown, text='S', location=location.abovebar, color=color.new(color.red, 0), textcolor=color.new(color.white, 0), size=size.tiny)
// Alerts for buy/sell signals
alertcondition(longEntryCondition, title='BUY Signal', message='Buy Entry Signal')
alertcondition(shortEntryCondition, title='SELL Signal', message='Sell Entry Signal')