다중 이동 평균 풀백 추세 추적 DMI 확인 전략

SMA DMI 趋势跟踪 回调 斜率分析 摆动点 止损策略
생성 날짜: 2025-07-08 13:10:40 마지막으로 수정됨: 2025-07-08 13:10:40
복사: 5 클릭수: 244
avatar of ianzeng123 ianzeng123
2
집중하다
319
수행원

다중 이동 평균 풀백 추세 추적 DMI 확인 전략 다중 이동 평균 풀백 추세 추적 DMI 확인 전략

개요

다중평균선 회귀 트렌드 추적 DMI 확인 전략은 다중주기 간단한 이동 평균 ((SMA), 방향 운동 지표 ((DMI) 와 가격 회귀 패턴 식별을 결합하여 트렌드 시장의 낮은 위험 입구점을 포착하는 포괄적 인 거래 시스템입니다. 이 전략의 핵심 아이디어는 이미 확립 된 추세에서 가격 회귀가 중요한 평평선으로 돌아가는 동안 반발할 때 입구하는 것과 동시에 DMI 지표를 사용하여 트렌드 방향을 확인하고, 휘어지는 지점을 설정하여 중지 위치를 설정하여 완전한 위험 제어 장치를 형성합니다.

전략 원칙

이 전략은 다음과 같은 몇 가지 핵심 요소의 연동에 기반을 두고 있습니다.

  1. 다중평선 시스템전략: 5개의 다른 주기 ((9/20/50/100/200) 의 간단한 이동 평균을 사용하여 시장 구조를 판단한다. 이 중 20일 및 200일 평균선은 주요 경향 판단 도구로 사용한다.

  2. 평균선 기울기 분석: 20일 및 200일 평균 선의 지난 5주기의 기울기를 계산하여 ((slope20과 slope200), 트렌드의 강도와 방향을 확인한다. 긍정적인 기울기는 상승세를 나타내고, 부정적인 기울기는 하락세를 나타낸다.

  3. 가격과 평균관계: 전략은 가격과 핵심 평균선 ((20일과 200일) 의 위치 관계가 트렌드 방향에 부합하는 것을 요구한다 ((다중일 때는 가격이 평균선 위에 있고, 공백일 때는 가격이 평균선 아래에 있다).

  4. 평행렬: 다중 머리 조건에서, 20 일 평균선이 200 일 평균선 위에 있는 것을 요구한다; 공허 머리 조건에서는 반대로 .

  5. 리콜 메커니즘

    • 다면 조건: 이전 K 라인 종료 가격이 20 일 평균보다 낮고 현재 K 라인 종료 가격이 20 일 평균보다 높으며, 가격이 20 일 평균에 대한 회정을 완료하고 부진하는 것을 나타냅니다.
    • 공백 조건: 이전 K 라인 종료 가격이 20 일 평균보다 높고 현재 K 라인 종료 가격은 20 일 평균보다 낮아 20 일 평균에 대한 회정을 완료하고 하락한 것을 나타냅니다.
  6. DMI 방향 확인: DMI 지표 ((주기는 14) 를 사용하여 트렌드 방향을 확인:

    • 다중 확인: +DI > -DI
    • 빈 머리 확인:-DI > +DI
  7. 변동 지점 상쇄

    • 다중 거래는 지난 10주기의 최저점을 스톱로스로 사용합니다.
    • 공백 거래는 지난 10주기의 최고점을 스톱 로즈로 사용합니다.

전략적 이점

  1. 다중 필터링 장치: 평선 시스템, 평선 기울기, 가격 위치, DMI 확인 등과 같은 여러 조건을 결합하여 가짜 신호를 효과적으로 줄이고 거래의 정확도를 향상시킵니다.

  2. 다시 불렀다.이 전략은 가격의 회귀를 기다리는 전략으로 결정적인 평균선 이후의 진입으로, 직접적으로 추격하는 것보다 더 좋은 위험과 수익률을 제공합니다.

  3. 트렌드 확인3번 확인: 평균선 위치, 평균선 배열, 평균선 기울기, 강한 추세에서만 거래하고, 흔들리는 시장에서 자주 거래하는 것을 피합니다.

  4. 명확한 중단 전략: 스윙 포인트를 스톱 로즈로 사용하는 방식은 시장 구조에 기반한 방식이며, 시장의 운용 논리에 더 부합합니다.

  5. DMI 지표 확인: DMI 지표가 추가적인 트렌드 확인 도구로 추가되어 불확실성이 높은 신호를 추가적으로 필터링합니다.

  6. 시각화 거래 신호전략: 명확한 시각적 표시를 통해 구매 및 판매 신호를 표시하여 거래자가 거래 기회를 신속하게 식별할 수 있도록합니다.

전략적 위험

  1. 트렌드 회귀, 지연 인식: 전략이 일률적 시스템에 의존하기 때문에, 트렌드 전환점에는 지연 반응이 있을 수 있으며, 이는 적시적으로 또는 트렌드 말기에 진입하는 것을 초래한다.

  2. 가짜 침입 위험: 가격이 잠시 평균선을 뚫고 다시 내려가며 가짜 브레이크를 형성하고 잘못된 신호를 유발할 수 있다.

  3. 매개 변수 최적화 도전: 전략에는 여러 가지 변수가 포함됩니다 (예: 평균선 주기, 기울기 회귀기, DMI 주기 등) 다른 시장과 시간 프레임에 따라 다른 변수 설정이 필요할 수 있습니다.

  4. 시장 환경의 한계이 전략은 명확한 트렌드 시장에서 더 잘 작동하지만 수평 변동 시장에서는 더 많은 손실 거래가 발생할 수 있습니다.

  5. 너무 큰 위험요소변동점 기반의 스톱 전략은 급격한 변동이 있는 시장에서 과도한 스톱 리스를 초래할 수 있으며, 이는 재무 관리에 불리하다.

  6. 위험 통제 부족이 전략은 동적 제지 장치가 부족하여 수익을 회수할 수 있습니다.

전략 최적화 방향

  1. 적응 변수를 추가합니다자기 적응 메커니즘을 도입할 수 있습니다. 시장의 변동성 동력에 따라 평균주기 및 기울기 회귀 기간을 조정하여 다양한 시장 환경에 더 잘 적응할 수 있습니다.

  2. 변동율 필터에 추가: ATR 지표 또는 변동률 지표를 도입하여, 과도하게 큰 또는 너무 작은 변동이있는 시장 환경에서 전략을 조정하거나 거래를 중지하십시오.

  3. 제기계를 개선한다시장 구조나 목표 리스크 수익률에 기반한 스톱 메커니즘을 추가하는 방법, 예를 들어 이동 스톱, 부분 스톱 등으로, 이미 벌어들인 수익을 더 잘 보호할 수 있다.

  4. 시장 환경 식별: 트렌드 강도 지표 또는 시장 상태 분류 알고리즘을 추가하여 수평 변동 시장에서 자동으로 포지션을 줄이거나 거래를 중지한다.

  5. 입시 확인: 출입 신호의 신뢰성을 높이기 위해 거래량 확인이나 그램 형식 확인을 추가하는 것이 고려될 수 있다.

  6. 자금 관리 최적화: ATR 또는 다른 변동성 지표에 따라 포지션 크기를 동적으로 조정하고, 다양한 변동성 환경에서 리스크 을 제어한다.

  7. 다중 시간 프레임 분석트렌드 확인: 더 높은 시간 프레임의 트렌드 확인을 도입하여 거래 방향이 더 큰 수준의 트렌드와 일치하도록합니다.

요약하다

다중평균선 회귀 트렌드 추적 DMI 확인 전략은 구조가 완전하고 논리가 명확한 트렌드 추적 시스템이다. 그것은 통합 다중평균선, 기울기 분석, 가격 회귀 및 DMI 확인과 같은 다차원 정보를 통해, 이미 확립 된 트렌드에서 낮은 위험 높은 확률의 진입 지점을 찾는다. 이 전략은 중·장기 트렌드가 뚜렷한 시장에 특히 적합하며, 회귀 회귀 진입을 기다리는 방식으로 주 트렌드를 따라가는 동시에 상대적으로 좋은 진입 가격을 얻을 수 있다.

그러나, 이 전략은 또한 트렌드 지연, 가짜 돌파 위험, 그리고 흔들림 시장의 부적절한 성능과 같은 한계도 있습니다. 적응 파라미터, 변동률 필터링, 정지 메커니즘 및 시장 환경 인식과 같은 최적화 조치를 도입함으로써 전략의 강도와 적응력을 더욱 향상시킬 수 있습니다. 가장 중요한 것은, 거래자가 실제 적용에서 시장 환경, 자신의 위험 선호 및 자금 관리 원칙과 결합하여 전략 파라미터를 타겟으로 조정하여 최대한의 효과를 발휘해야합니다.

전략 소스 코드
/*backtest
start: 2025-06-30 00:00:00
end: 2025-07-04 08:00:00
period: 10m
basePeriod: 10m
exchanges: [{"eid":"Futures_Binance","currency":"ETH_USDT"}]
*/

//@version=5
strategy("Full SMA Pullback Strategy with DMI", overlay=true, default_qty_type=strategy.percent_of_equity, default_qty_value=10)

// === SMA Definitions ===
sma9   = ta.sma(close, 9)
sma20  = ta.sma(close, 20)
sma50  = ta.sma(close, 50)
sma100 = ta.sma(close, 100)
sma200 = ta.sma(close, 200)

// === Inputs ===
slopeLookback   = input.int(5, title="Slope Lookback Period")
swingLookback   = input.int(10, title="Swing High/Low Period")
dmiLength       = input.int(14, title="DMI Period")

// === Slope Calculation ===
slope20  = sma20 - sma20[slopeLookback]
slope200 = sma200 - sma200[slopeLookback]

// === DMI Calculation ===
[plusDI, minusDI, _] = ta.dmi(dmiLength, dmiLength)
dmiLongConfirm  = plusDI > minusDI
dmiShortConfirm = minusDI > plusDI

// === Long Conditions ===
trendUp     = close > sma20 and close > sma200
smaOrderUp  = sma20 > sma200
slopeUp     = slope20 > 0 and slope200 > 0
pullbackUp  = close[1] < sma20[1] and close > sma20
longCond    = trendUp and smaOrderUp and slopeUp and pullbackUp and dmiLongConfirm
swingLow    = ta.lowest(low, swingLookback)

// === Short Conditions ===
trendDown     = close < sma20 and close < sma200
smaOrderDown  = sma20 < sma200
slopeDown     = slope20 < 0 and slope200 < 0
pullbackDown  = close[1] > sma20[1] and close < sma20
shortCond     = trendDown and smaOrderDown and slopeDown and pullbackDown and dmiShortConfirm
swingHigh     = ta.highest(high, swingLookback)

// === Strategy Entry & Exit ===
if (longCond)
    strategy.entry("Long", strategy.long)
    strategy.exit("Exit Long", from_entry="Long", stop=swingLow)

if (shortCond)
    strategy.entry("Short", strategy.short)
    strategy.exit("Exit Short", from_entry="Short", stop=swingHigh)

// === Plotting SMAs ===
plot(sma9,   title="SMA 9",   color=color.gray)
plot(sma20,  title="SMA 20",  color=color.orange)
plot(sma50,  title="SMA 50",  color=color.purple)
plot(sma100, title="SMA 100", color=color.green)
plot(sma200, title="SMA 200", color=color.blue)

// === Signal Markers ===
plotshape(longCond,  title="Buy Signal",  location=location.belowbar, color=color.green, style=shape.triangleup,   size=size.small)
plotshape(shortCond, title="Sell Signal", location=location.abovebar, color=color.red,   style=shape.triangledown, size=size.small)