모멘텀 브레이크아웃 적응형 이동 평균 교차 시스템


생성 날짜: 2024-02-20 15:43:46 마지막으로 수정됨: 2024-02-20 15:43:46
복사: 1 클릭수: 598
avatar of ChaoZhang ChaoZhang
1
집중하다
1617
수행원

모멘텀 브레이크아웃 적응형 이동 평균 교차 시스템

1 개요

이 전략의 핵심은 자기 적응 평평선과 동력 지표를 사용하여 돌파 거래를 수행하는 것입니다. 우선, 전략은 히로린 선 선 중화 평균 가격과 3 쌍의 점진 이동 평균을 사용하여 자기 적응 평평선을 구축합니다. 다음으로, 운동량 지표와 결합하여 돌파의 신호를 판단하여 거래 결정을 형성합니다.

2. 전략 원칙

이 전략은 크게 세 부분으로 구성됩니다.

  1. 적응형 평평선 구축. 전략은 林陽線 가격과 3쌍의 점진적인 이동 평균을 사용하여 3개의 적응형 평평선을 구축한다. 이 평평선은 가격 변화에 빠르게 반응할 수 있다.

  2. 동력 지표의 계산. 전략은 가격의 3 쌍의 점진 이동 평균의 차이를 동력 지표로 사용한다. 이 지표는 가격 경향의 변화를 강조한다.

  3. 평균선의 교차는 거래 신호로. 빠른 평균선 상에서 느린 평균선을 통과할 때 구매 신호를 생성한다. 빠른 평균선 아래에서 느린 평균선을 통과할 때 판매 신호를 생성한다.

세, 전략적 장점

이 전략은 자율 적응 평균선과 동력 지표와 결합하여 가격 변화의 추세를 빠르게 파악하고 거래 신호를 생성할 수 있으며, 다음과 같은 장점이 있습니다.

  1. 열림 태양광 가격으로 적응평등선을 구성하여 가격 변화에 더 빠르게 대응할 수 있다.
  2. 3 쌍의 순환 이동 평균은 가격 데이터를 효율적으로 평형화하고, 비정상적인 데이터를 처리한다.
  3. 동력 지표는 가격 트렌드 변화 지점을 명확하게 식별할 수 있다.
  4. 평행선 교차는 명확한 거래 신호를 생성한다.
  5. 정책 변수 설정은 유연하고 적응성을 조정할 수 있다.

위험과 대책

  1. 가격이 급격히 변동할 때, 평행선 교차 신호가 오도할 수 있다. 적절한 변수를 조정할 수 있으며, 필터 신호가 있다.
  2. 다수 시장에서는 전략이 더 잘 작동합니다. 공백 시장에서는 손실 보호 자금을 중지합니다.

다섯째, 생각을 최적화하세요.

  1. 더 많은 종류의 이동 평균을 테스트하여 더 나은 변수를 찾을 수 있습니다.
  2. 추가적인 필터링 조건을 추가하여 잘못된 신호를 방지할 수 있습니다. 예를 들어 거래량 필터링을 증가시킵니다.
  3. 다른 시장에 맞게 적응성을 조정할 수 있는 최적화된 파라미터 설정

VI. 결론

이 전략은 자기 적응 평균선과 동력 지표를 통합하여 가격 변화에 신속하게 반응하여 간결하고 효율적인 거래 신호를 생성한다. 매개 변수를 조정하여 다양한 시장 환경에 유연하게 적응할 수 있다. 이것은 매우 실용적인 돌파구 거래 전략이다.

전략 소스 코드
/*backtest
start: 2024-01-20 00:00:00
end: 2024-02-19 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("YASIN Crossover Strategy", overlay=true)

EMAlength = input(55, 'EMA LENGTH?')

src = ohlc4
var float haOpen = na
haOpen := na(haOpen[1]) ? src : (src + haOpen[1]) / 2
haC = (ohlc4 + haOpen + ta.highest(high, 1) + ta.lowest(low, 1)) / 4
EMA1 = ta.ema(haC, EMAlength)
EMA2 = ta.ema(EMA1, EMAlength)
EMA3 = ta.ema(EMA2, EMAlength)
TMA1 = 3 * EMA1 - 3 * EMA2 + EMA3
EMA4 = ta.ema(TMA1, EMAlength)
EMA5 = ta.ema(EMA4, EMAlength)
EMA6 = ta.ema(EMA5, EMAlength)
TMA2 = 3 * EMA4 - 3 * EMA5 + EMA6
IPEK = TMA1 - TMA2
YASIN = TMA1 + IPEK
EMA7 = ta.ema(hlc3, EMAlength)
EMA8 = ta.ema(EMA7, EMAlength)
EMA9 = ta.ema(EMA8, EMAlength)
TMA3 = 3 * EMA7 - 3 * EMA8 + EMA9
EMA10 = ta.ema(TMA3, EMAlength)
EMA11 = ta.ema(EMA10, EMAlength)
EMA12 = ta.ema(EMA11, EMAlength)
TMA4 = 3 * EMA10 - 3 * EMA11 + EMA12
IPEK1 = TMA3 - TMA4
YASIN1 = TMA3 + IPEK1
t1 = time(timeframe.period, "0020-0030")


// بررسی شرایط سیگنال خرید و فروش
buyCondition = YASIN1 > YASIN and YASIN1[1] <= YASIN[1]
sellCondition = YASIN1 < YASIN and YASIN1[1] >= YASIN[1]

// اعمال سیگنال خرید و فروش
strategy.entry("Buy", strategy.long, when = buyCondition)
strategy.entry("Sell", strategy.short, when = sellCondition)