가우시안 평활화 기반 추세 반전 전략 제거


생성 날짜: 2023-11-07 15:01:19 마지막으로 수정됨: 2023-11-07 15:01:19
복사: 0 클릭수: 686
avatar of ChaoZhang ChaoZhang
1
집중하다
1617
수행원

가우시안 평활화 기반 추세 반전 전략 제거

개요

이 전략은 가스스 평형에 기반한 가스스 평형 이동 평균과 가격 주기의 가스스 평형 이동 평균을 결합하여 구체적인 입구 및 출구 조건을 설정하여 가격 역전 기회를 잡습니다.

전략 원칙

이 전략은 우선 트렌드 가격 변동 지표 ((GDPO) 를 계산하고, 그 방법은 종점 가격과 특정 주기의 지수 이동 평균을 비교하여 단기간의 가격 주기를 식별한다. 그 다음 GDPO에 고스 평정을 하고, 아르누드 레고의 이동 평균 ((ALMA) 를 사용하여 고스 평정 기술을 적용하여, 노이즈를 필터링하여 가격 트렌드의 더 명확한 그림을 준다.

전략은 평준화 된 GDPR와 그 지연 된 버전의 교차 상황을 통해 더 많은 공백을 만드는 구체적인 입지와 출전 조건을 결정한다. 평준화 된 GDPR에 지연 된 버전이 지나고 부정적인 경우, 더 많은 입장을 취한다. 평준화 된 GDPR에 지연 된 버전이 지나거나 0 축이있을 때, 평준화 된 위치가 다수 상위 위치이다. 마찬가지로, 평준화 된 GDPR에 지연 된 버전이 지나고 적당한 경우, 공백을 한다. 평준화 된 GDPR에 지연 된 버전이 지나거나 0 축이 있을 때, 평준화 된 위치가 공백 상위 위치이다.

도표에서, 평형된 GDPR와 그 뒤떨어진 버전은 서로 다른 색으로 그려져서 그 교차 상황을 직관적으로 나타낸다. null축을 참고로 그리기도 한다. 전략 입시에 배경 색 변화를 설정하여 提示한다. 그리고 GDPR의 교차점에 叉型標識을 그려서 출구점을提示한다.

우위 분석

이 전략은 트렌드 제거 기술과 고스 평준화 필터링 소음을 결합하여 가격 반전의 기회를 더 명확하게 식별할 수 있습니다. GDPR는 트렌드 제거와 함께 주기 분석을 통해 다른 변동 지표에 비해 정확성을 향상시킬 수 있습니다. 고스 평준화는 많은 소음을 제거하여 지표 신호를 더 명확하게합니다. 특정 입출장 조건은 손실을 효과적으로 제어 할 수 있습니다.

위험 분석

이 전략은 주기 길이, 평형 파라미터 등과 같은 파라미터 조절에 민감하며, 충분한 재측정을 통해 적절한 파라미터 조합을 결정해야 합니다. 그렇지 않으면 너무 많은 오류 신호가 발생할 수 있습니다. 트렌드 상황에서 이 전략은 연속적인 손실을 초래할 수 있습니다.

동적으로 변수를 조정하여 트렌드 판단 지표와 결합하여 최적화하여 전략 안정성을 향상시킬 수 있다. 또한 동적으로 스톱로스를 설정하여 위험을 제어할 수 있다.

최적화 방향

이 전략은 다음과 같은 방향으로 최적화될 수 있습니다.

  1. 동적으로 평준화 매개 변수를 조정하여 트렌드 상황에서 평준화 강도를 높이고 오류 신호를 줄인다.

  2. 트렌드 판단 지표인 ADX와 결합하여, 트렌드 상황에서 지속적인 손실을 피하기 위해 역전 전략을 사용한다.

  3. 가격 변동에 따라 스톱포드를 조정하거나 수익 후 스톱포드를 이동하는 등의 추가 스톱포드 전략

  4. 입학 조건을 최적화하여, 다른 지표 또는 형식과 결합하여 입학 정확도를 높일 수 있습니다.

  5. 자본 관리를 최적화하고, 시장 상황에 따라 포지션과 스톱로드를 조정한다.

  6. 다양한 가격 데이터를 테스트합니다. 예를 들어, 일선, 주경선 등이 있습니다. 다양한 주기에서 전략의 효과를 평가합니다.

요약하다

고스 평평한 트렌드 반전 전략을 기반으로, GDPO 지표를 사용하여 가격의 단기 주기성을 식별하고, 고스 스波 기술을 사용하여 신호를 추출하여 명확한 입출장 조건에서 반전 기회를 잡습니다. 이 전략은 반전 거래의 위험을 효과적으로 제어하지만, 파라미터 최적화 및 트렌드 판단에주의를 기울여야 합니다. 지표와 손해 방지 전략의 조합을 동적으로 조정하고 확인함으로써 전략의 안정성을 더욱 향상시킬 수 있습니다.

전략 소스 코드
/*backtest
start: 2022-10-31 00:00:00
end: 2023-11-06 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

// This source code is subject to the terms of the Mozilla Public License 2.0
// © DraftVenture

//@version=5
strategy(title="Gaussian Detrended Reversion Strategy", overlay=false, default_qty_type=strategy.percent_of_equity, default_qty_value=15)

//Detrended Price Oscillator for price cycles
period_ = input.int(50, title="Price Length", minval=1)

barsback = period_/2 + 1
ma = ta.ema(close, period_)
dpo = close - ma[barsback]

// Rounded ALMA Calculations for gaussian smoothing
almaSource = dpo
almaWindowSize = input(title="Smoothing Length", defval=50)
lagLength = input(title="Lag Length", defval=25)
almaSmoothed = ta.alma(almaSource, almaWindowSize, 0.85, 6)
almaLag = almaSmoothed[lagLength]

// Reversion entry conditions
entryL = ta.crossover(almaSmoothed, almaLag) and almaSmoothed < 0
exitL = ta.crossunder(almaSmoothed, almaLag) or ta.crossunder(almaSmoothed, 0)
entryS = ta.crossunder(almaSmoothed, almaLag) and almaSmoothed > 0
exitS = ta.crossover(almaSmoothed, almaLag) or ta.crossover(almaSmoothed, 0)

// Long entry and exit
if entryL
    strategy.entry("Long", strategy.long)

if exitL
    strategy.close("Long")

// Short entry and exit
if entryS
    strategy.entry("Short", strategy.short)

if exitS
    strategy.close("Short")

// Plot the oscillator
plot(almaSmoothed, title="GDPO", color=color.green)
plot(almaLag, title="Lag", color=color.white)

hline(0, title="Zero Line", color=color.white)

bgcolor(entryL ? color.new(color.green, 40) : na)
bgcolor(entryS ? color.new(color.red, 40) : na)

plotshape(series=ta.crossunder(almaSmoothed, almaLag) or ta.crossunder(almaSmoothed, 0), style=shape.xcross, location=location.top, color=color.white, size=size.tiny)
plotshape(series=ta.crossover(almaSmoothed, almaLag) or ta.crossover(almaSmoothed, 0), style=shape.xcross, location=location.bottom, color=color.white, size=size.tiny)

//Strategy by KP