거북이 추세를 따르는 전략

저자:차오장, 날짜: 2023-12-22 11:41:30
태그:

img

전반적인 설명

거북이 트렌드를 따르는 전략은 이동 평균과 트렌드 반전 지점에서의 거래를 기반으로 트렌드 방향을 결정하는 양적 전략이다. 이 전략은 또한 신호를 결정하고 잠재적 인 반전 지점에서의 엔트리 및 스톱 손실을 결정하기 위해 촛불 패턴을 결합합니다.

전략 원칙

이 전략은 트렌드 방향을 결정하기 위해 다른 주기의 세 개의 EMA 라인을 사용합니다. 구체적으로 15 일, 120 일, 220 일 EMA 라인을 계산합니다. 15 일 라인이 220 일 라인보다 높을 때 상승 추세가 결정됩니다. 15 일 라인이 220 일 라인보다 낮을 때 하락 추세가 결정됩니다.

상승 추세에 있을 때, 닫기 가격이 220일 라인 아래에 있다면, 단위로 가세요. 하락 추세에 있을 때, 닫기 가격이 220일 라인 위에 있다면, 길게 가세요.

동시에 전략은 신호를 확인하기 위해 촛불 패턴을 결합합니다. 상승하는 큰 간격 촛불 또는 하락하는 큰 간격 촛불이있을 때 지점은 손실을 막기 위해 닫습니다.

이점 분석

이 전략의 가장 큰 장점은 트렌드를 따라 작동 할 수 있으며 명확한 신호가없는 역동 작전을 피할 수 있다는 것입니다. 여러 이동 평균으로 트렌드를 판단함으로써 시장 소음은 주요 트렌드 방향을 차단하는 데 효과적으로 필터링 될 수 있습니다.

동시에, 전략은 또한 잠재적인 트렌드 반전 지점에도 들어갈 것입니다. 이 시점에서 매우 좋은 리스크 보상 특성을 가지고 있습니다. 그리고 손해를 막기 위해 촛불을 결합하면 너무 분쇄된 손해를 막는 지점을 피할 수 있습니다.

위험 분석

이 전략의 주요 위험은 이동 평균에 의해 결정 된 추세가 실제 가격 움직임에 뒤떨어질 수 있다는 것입니다. 이 시점에서 추세에 반대되는 작전이 발생할 수 있습니다.

또한, 전략에서 사용되는 촛불 패턴도 실패할 수 있으며 손실을 효과적으로 멈출 수 없습니다. 비정상적인 시장 변동이있을 때, 중지 손실 포인트가 직접 침투하여 더 큰 손실을 초래할 수 있습니다.

위의 위험을 줄이기 위해, 이동 평균의 주기 매개 변수를 조정하거나 촛불 패턴을 결정하는 비율 인수를 조정하여 규칙을 엄격하게 조정하는 것을 고려하십시오. 물론, 기술 분석은 시장 위험을 완전히 피할 수 없으며 포지션 크기를 제어해야한다는 점도 알아야합니다.

최적화 방향

이 전략은 다음과 같은 측면에서 최적화 될 수 있습니다.

  1. 트렌드를 판단하기 위해 더 적합한 매개 변수 조합을 찾기 위해 이동 평균의 사이클 매개 변수를 최적화

  2. SMA, LWMA 등과 같은 다양한 유형의 이동 평균 지표를 테스트하여 자신의 스타일에 맞는 지표를 찾으십시오.

  3. 반전 신호를 더 명확하고 더 신뢰할 수 있도록 촛불 판단 규칙을 조정하거나 추가

  4. 추가 중지 손실 전략, 예를 들어 후속 중지 손실, 시간 중지 손실, 등, 더 단일 손실을 제어

  5. 변동성 지표, 거래량 등과 같은 다른 지표를 결합하여 시스템의 거래 신호를 풍부하게 만듭니다.

요약

거북이 트렌드를 따르는 전략은 전체적으로 트렌드를 따르는 매우 전형적인 전략이다. 트렌드를 판단하는 방법은 간단하고 구현하기 쉽고, 또한 특정 위험 통제 조치가 있습니다. 이 전략은 트렌드 트레이딩에 대한 어느 정도 이해와 안정적인 수익을 얻기를 희망하는 투자자에게 적합합니다. 지속적으로 최적화되면 장기적인 경쟁 이점을 가진 양적 전략으로도 변할 수 있습니다.


/*backtest
start: 2023-12-14 00:00:00
end: 2023-12-21 00:00:00
period: 1m
basePeriod: 1m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

// © Aayonga 
//@version=5
strategy('帆船探险寻找传说', overlay=true)

useDateFilter=input.bool(true,title = "启用回测时间范围限定", group = "回测范围")
backtesStarDate=input(timestamp("1 Jan 2015"),title = "开始时间", group = "回测范围")
backtestEndDate=input(timestamp("1 Jan 2040"),title = "结束时间",group = "回测范围")
inTradeWindow= true


A = input(50, '计算的周期')


shallowsea = ta.highest(A)
deepsea= ta.lowest(A)

//趋势形成条件
Length1 = input.int(15, title='短期市场平均成本', minval=1, group='市场平均成本')
Length2 = input.int(120, title='中期市场平均成本', minval=1, group='市场平均成本')
Length3 = input.int(220, title='长期市场平均成本', minval=1, group='市场平均成本')
SMA1 = ta.ema(close, Length1)
SMA2 = ta.sma(close, Length2)
SMA3 = ta.sma(close, Length3)


//趋势看多
longTrend=SMA1>SMA3 and open >SMA3 

shortTrend=SMA1<SMA3 

bullPinBar = ((close > open) and ((open - low) > 0.66* (high - low))) or ((close < open) and ((close - low) > 0.9 * (high - low)))
bearPinBar = ((close > open) and ((high - close) > 0.75 * (high - low))) or ((close < open) and ((high - open) >0.9 * (high - low)))



if close > shallowsea[5] and shortTrend and inTradeWindow
    strategy.entry('⛵🎏', strategy.short)

if close < deepsea[5] and longTrend and inTradeWindow
    strategy.entry('🧜', strategy.long)

if  bullPinBar and inTradeWindow
    strategy.close('⛵🎏',comment = '🐚')

if bearPinBar and inTradeWindow
    strategy.close('🧜',comment = '🐳')

plot(shallowsea,style=plot.style_area, color=color.new(#71bfef, 0))
plot(deepsea, style=plot.style_area,color=color.new(#298bd1, 0))




더 많은