동적 충격 돌파 전략


생성 날짜: 2023-11-16 15:40:25 마지막으로 수정됨: 2023-11-16 15:40:25
복사: 1 클릭수: 578
avatar of ChaoZhang ChaoZhang
1
집중하다
1617
수행원

동적 충격 돌파 전략

개요

이 전략은 동적 흔들림 통로를 뚫는 방식을 채택하고, 가격의 동적 변화에 따라 진입 및 중단 지점을 결정한다. 전략은 간단하고 이해하기 쉽고, 트렌드 주식에 대한 작업에 적합하다.

전략 원칙

이 전략은 먼저 20일간의 최고 가격과 최저 가격을 계산하여 동적인 흔들림 통로를 얻는다. 그리고 8일 지수 이동 평균과 32일 지수 이동 평균을 계산하고, 가격 종식 가격이 통로 상도를 뚫고 8일 평균이 32일 평균선보다 높을 때 더 많이 한다. 가격이 통로 하도를 뚫거나 8일 평균이 32일 평균선 아래로 넘어가면 평소한다.

이 전략은 다음과 같은 조건에 의해 진행됩니다.

  1. 20일 최고치를 넘어 종결 가격 동적으로 궤도에 올랐다.

  2. 8일 평균은 32일 평균보다 높습니다.

이 전략의 탈퇴 조건은 다음과 같습니다.

  1. 통로 중간 경로보다 낮은 가격의 정지

  2. 8일 평균선 아래 32일 평균선 통과 시 평지

이 전략은 동적 통로를 사용하여 트렌드 방향을 판단하고, 현재 상승 추세에 있다고 판단하는 평평선으로 보조하여 위험을 효과적으로 제어 할 수 있습니다.

전략적 이점

  • 동적 통로를 통해 트렌드 방향을 파악하고, 흔들리는 시장에 갇히지 않는다.
  • 8일과 32일 평균선 조합은 트렌드를 효과적으로 판단하여 잘못된 거래를 방지할 수 있다.
  • 전략 규칙은 간단하고 명확하며, 이해하기 쉬운 구현입니다.
  • 손해 막는 방식은 비교적 안정적이고 신뢰할 수 있습니다.

전략적 위험

  • 실패로 인해 손실이 발생할 수 있습니다.
  • 동적 통로 파라미터를 잘못 설정하면 통로가 너무 넓거나 너무 좁아질 수 있습니다.
  • 평균선 변수 설정이 잘못되면 판단에 영향을 미칠 수 있습니다.
  • 스톱포인트가 지나치게 가까워지면 과도한 스톱포인이 발생할 수 있습니다.

통로 주기 변수, 평균선 주기 변수, 그리고 합리적인 스톱로스 설정을 통해 전략을 최적화하고 위험을 제어할 수 있다.

전략 최적화 방향

  • 다양한 주식 특성에 따라 채널 사이클 파라미터를 최적화할 수 있다
  • 다른 평행선 조합을 테스트하여 더 나은 변수를 찾을 수 있습니다.
  • 거래량과 결합하여 브레이크 효과를 확인할 수 있습니다.
  • 파격 이후의 정지점을 추적할 수 있습니다

요약하다

동적 흔들림 돌파 전략 전체적인 아이디어는 명확하고 이해하기 쉽다. 동적 통로로 트렌드 방향을 판단한 다음 일률적인 필터링 효과를 활용하여 상장한다. 스톱 로스를 설정하면 위험을 효과적으로 제어할 수 있다. 매개 변수를 최적화하면 전략의 수익 인자를 높일 수 있다. 이 전략은 돌파 지속 효과가 있는 주식에 적합하며, 특히 혁신의 상향 돌파가 있는 시나리오에 적합하다.

전략 소스 코드
/*backtest
start: 2022-11-09 00:00:00
end: 2023-11-15 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 at https://mozilla.org/MPL/2.0/
// © Robrecht99

//@version=5
strategy("My Strategy", overlay=true, margin_long=100, margin_short=100)

fast = ta.sma(close, 8)
slow = ta.sma(close, 32)

plot(fast, color=color.red)
plot(slow, color=color.navy)

entrycondition1 = ta.crossover(fast, slow)
entrycondition2 = fast > slow
sellcondition1 = ta.crossunder(fast, slow)
sellcondition2 = slow > fast

atr = ta.atr(14)

//Donchian Channels
days = 20
h1 = ta.highest(high[1], days)
l1 = ta.lowest(low[1], days)
mid = math.avg(h1, l1)
plot(mid, "channel", color=#FF6D00)
u = plot(h1, "Upper", color=#2962FF)
l = plot(l1, "Lower", color=#2962FF)
fill(u, l, color.new(color.blue, 90))

if (close > h1 and entrycondition2)
    strategy.entry("long", strategy.long)
    stoploss = close - atr * 3
    trail = close - atr * 3
    strategy.exit("exit", "long", stop=stoploss, trail_offset=trail)
if (sellcondition1 and sellcondition2)
    strategy.close(id="long")