거북이 탈출 전략

저자:차오장, 날짜: 2023-12-04 16:25:53
태그:

img

전반적인 설명

이것은 브레이크아웃 이론에 기반한 단기 거래 전략입니다. 브레이크아웃 신호를 식별하고 단기 트렌드에서 이익을 얻기 위해 이동 평균 지표와 최고/최저 가격 지표를 사용합니다.

전략 논리

이 전략은 상승 추세를 식별하기 위해 20일 최고 가격을 사용합니다. 폐쇄 가격이 20일 최고보다 높을 때, 그것은 길게 간다. 하락 추세를 식별하기 위해 10일 최저 가격을 사용합니다. 폐쇄 가격이 10일 최저보다 낮을 때, 그것은 짧게 간다. 또한 짧은 거래에 대한 스톱 손실 출구 신호로 10일 최고 가격을 사용합니다.

특히 전략에는 다음의 규칙이 포함됩니다.

  1. 닫기 가격이 20일 최고치 이상일 때 장면을 입력합니다.
  2. 클로징 가격이 10일 최저치 아래로 떨어지면 코트를 입력합니다.
  3. 클로징 가격이 10일 최고치 이상인 경우 단기 포지션을 닫습니다.
  4. 닫기 가격이 10일 최저치 이하인 경우 긴 포지션을 닫습니다.

마감 가격을 다른 기간의 최고/최저 가격과 비교함으로써 단기 주기에 대한 트렌드 브레이크를 파악하고 단기 거래를 합니다.

이점 분석

이 전략은 다음과 같은 장점을 가지고 있습니다.

  1. 단순하고 명확한 논리, 이해하기 쉽고 실행하기 쉽습니다.
  2. 브레이크아웃 이론에 근거하여 단기 동향을 적시에 파악하는 것
  3. 양방향 무역을 위한 장기적, 단기적 기회들을 파악한다.
  4. 다양한 매개 변수 범위를 설정하여 유지 기간을 유연하게 조정합니다.

위험 분석

또한 몇 가지 위험이 있습니다.

  1. 브레이크아웃 거래는 함락되는 경향이 있고, 위험을 통제하기 위해 스톱 로스가 필요합니다.
  2. 장기 및 단기간에 자주 전환하면 거래 비용과 미끄러짐이 증가합니다.
  3. 부적절한 매개 변수 설정은 과잉 거래 또는 지연으로 이어질 수 있습니다.

우리는 거래 손실에 대한 제한을 설정하거나 거래 빈도를 제어하기 위해 매개 변수 범위를 조정할 수 있습니다.

최적화

전략은 다음 측면에서 최적화 될 수 있습니다:

  1. 가짜 브레이크를 방지하기 위해 다른 필터를 추가합니다.
  2. 동적 출구 방법을 설정하여 수익과 함께 스톱 손실을 추적합니다.
  3. 트렌드 결정 규칙을 추가하여 트렌드 반대 거래를 피합니다.
  4. 다양한 주기와 시장 조건에 적응하기 위해 매개 변수 범위를 최적화합니다.

결론

결론적으로, 이것은 간단하고 실용적인 단기 브레이크아웃 전략이다. 단기 주기의 트렌드 기회를 잡는 데 도움이 된다. 그러나 함락되고 높은 거래 빈도라는 위험이 있다. 필터, 스톱 로스, 매개 변수 최적화를 추가함으로써 위험을 제어하고 효율성을 향상시킬 수 있다. 이 전략은 단기 기회에 초점을 맞추고 높은 매출율을 추구하는 거래자에게 적합하다.


/*backtest
start: 2022-11-27 00:00:00
end: 2023-12-03 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=3
strategy("TurtleBC Strategy v2 V.Troussel", shorttitle="TurtleBC-V.Troussel", overlay=true, pyramiding=0)

// === BACKTEST RANGE ===
FromMonth = input(defval = 1, title = "From Month", minval = 1)
FromDay   = input(defval = 1, title = "From Day", minval = 1)
FromYear  = input(defval = 2016, title = "From Year", minval = 2016)
ToMonth   = input(defval = 1, title = "To Month", minval = 1)
ToDay     = input(defval = 1, title = "To Day", minval = 1)
ToYear    = input(defval = 9999, title = "To Year", minval = 9999)

enter_fast = input(20, minval=1)
exit_fast = input(10, minval=1)
exit_fast_short=input(10,minval=1)


fastL = highest(close, enter_fast)
fastS = highest(close ,exit_fast_short)
fastLC = lowest(close, exit_fast)
//Sortie pour le short
exitS=close>fastS[1]


enterL1 = close > fastL[1]
exitL1 = close <= fastLC[1]




strategy.entry("Long", strategy.long, when = enterL1 and (time > timestamp(FromYear, FromMonth, FromDay, 00, 00)) and (time < timestamp(ToYear, ToMonth, ToDay, 23, 59)))
strategy.close("Long", when = exitL1 and (time < timestamp(ToYear, ToMonth, ToDay, 23, 59)))

//le trigger de sortie est 
strategy.entry("Short", strategy.short, when = exitL1 and (time > timestamp(FromYear, FromMonth, FromDay, 00, 00)) and (time < timestamp(ToYear, ToMonth, ToDay, 23, 59)))
strategy.close("Short", when = exitS and (time < timestamp(ToYear, ToMonth, ToDay, 23, 59)))




더 많은