거북이 리차드의 거래 전략


생성 날짜: 2024-02-06 11:56:47 마지막으로 수정됨: 2024-02-06 11:56:47
복사: 0 클릭수: 800
avatar of ChaoZhang ChaoZhang
1
집중하다
1617
수행원

거북이 리차드의 거래 전략

개요

리처드의 거북이 거래 전략 (Richard’s Turtle Trading Strategy) 은 리처드 데니스의 거북이 거래 기술을 기반으로 한 거래 전략이다. 이 전략은 가격 돌파구를 사용하여 트렌드 추적 거래를 수행한다. 가격이 20 일 새 고치를 돌파 할 때 더 많이하고, 가격이 20 일 새 낮은 것을 돌파 할 때 비어있다.

전략 원칙

리처드 해파리 거래 전략의 핵심 논리는 가격 돌파구를 달성하기 위한 트렌드 추적에 기초한다. 구체적으로, 전략은 동시에 20일 동안의 최고치를 지속적으로 모니터링한다._20_day_highest) 과 최소값 (_20_day_lowest) ᄂ. 현재 종결 가격이 20일 최고치를 넘어서면, 가격이 상향으로 돌파되는 것을 나타내며, 이 때 다중 신호를 발송한다. 현재 종결 가격이 20일 최저치를 넘어서면, 가격이 하향으로 돌파되는 것을 나타내며, 이 때 공백 신호를 발송한다.

포지션에 들어간 후, 전략은 평균 실제 파장 ((ATR) 을 사용하여 중지 지점을 계산합니다. 동시에, 10 일 최고 가격과 최저 가격을 추적하여 슬라이드 스톱을 수행합니다.

전략적 이점

리처드 해파리의 거래 전략은 다음과 같은 장점을 가지고 있습니다.

  1. 가격 돌파구를 활용하여 트렌드를 자동으로 추적할 수 있다. 트렌드 전환을 자동으로 식별하고, 적시에 포지션을 조정할 수 있다.
  2. ATR 중지 메커니즘, 단 단 중지 손실을 효과적으로 제어 할 수 있습니다.
  3. 슬라이드포인트 스톱로스 메커니즘, 수익의 일부를 잠금하고, 회수율을 낮출 수 있다.
  4. 전략 논리는 간단하고 명확하며, 이해하기 쉽고 구현하기 쉽고, 초보자 학습에 적합하다.
  5. 시장의 움직임을 예측하고 복잡한 계산을 하지 않고, 간단한 규칙으로 거래한다.

전략적 위험

리처드 해파리의 거래 전략에는 몇 가지 위험도 있습니다.

  1. 은 거래는 쉽게 조작될 수 있으며, 때로는 과도한 거래 빈도를 유발할 수 있습니다.
  2. ATR 및 슬라이드 포인트 상쇄가 너무 엄격하여 조기 상쇄가 발생할 수 있습니다.
  3. 가격 정보만 사용해서 다른 요소와 결합하지 않고 트렌드의 지속성을 예측한다.
  4. 데이터 재조합 위험, 실 디스크 효과는 좋지 않을 수 있다.

이러한 위험을 줄이기 위해, 입시 조건을 최적화하고, 더 많은 지표를 사용하여 추세를 예측하고, 스톱 손실 알고리즘을 조정하고, 스톱 손실 빈도를 줄이는 것을 고려할 수 있습니다.

전략 최적화 방향

리처드 해파리의 거래 전략은 다음과 같은 방향으로 최적화 될 수 있습니다.

  1. 최적화 변수, 최적의 변수 조합을 찾는다. 계산주기를 조정하거나, 다른 ATR 곱수를 테스트한다.
  2. 더 많은 지표 또는 기계 학습 알고리즘을 사용하여 트렌드를 판단하십시오. 평균선, 에너지 지표와 같은 트렌드 지속성을 판단 할 수 있습니다.
  3. 손해 중지 방법을 최적화한다. 플렉시트 슬라이드 스피드 테스트, 손해 중지 추적 등의 방법을 사용할 수 있다.
  4. 감정지표, 뉴스페이즈 등과 함께 시장의 움직임을 예측할 수 있는 더 많은 정보를 얻을 수 있습니다.

요약하다

리처드 해수욕장 거래 전략은 매우 전형적인 돌파 추적 전략이다. 그것은 간단하고 쉽게 작동하며 초보자 학습에 적합하며 양적 거래의 모범이다. 이 전략은 여러 가지 측면에서 최적화되어 거래 위험을 줄이고 수익을 높일 수 있습니다.

전략 소스 코드
/*backtest
start: 2023-02-05 00:00:00
end: 2024-02-05 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/
// © melodyera0822

//@version=4
strategy("Richard Strategy", overlay=true)

// User input
variable_for_stoploss = input(4,title="stop loss var")
lenght = input(20,title="lenght")

// high_low
_20_day_highest = highest(nz(close[1]), lenght)
_20_day_lowest = lowest(nz(close[1]), lenght)

_10_day_low = lowest(nz(close[1]), lenght/2)
_10_day_high = highest(nz(close[1]), lenght/2)

//indicators
atr20 = atr(20)
ema_atr20 = ema(atr20,20)

//vars
var traded = "false"
var buy_sell = "none"
var buyExit = false
var sellExit = false
var stoploss = 0

buyCon = close > _20_day_highest and traded == "false"
plotshape(buyCon,style = shape.triangleup,location = location.belowbar, color = color.green )
if (buyCon)
    strategy.entry("long", strategy.long, when = buyCon)
    traded := "true"
    buy_sell := "buy"
    stoploss := round(close - variable_for_stoploss * ema_atr20)
    
sellCon = close < _20_day_lowest and  traded == "false"
plotshape(sellCon,style = shape.triangledown, color = color.red )
if (sellCon)
    strategy.entry("short", strategy.short)
    traded := "true"
    buy_sell := "sell"
    stoploss := round(close - variable_for_stoploss * ema_atr20)

if traded == "true"
    if buy_sell == "buy" and ((close<stoploss)or(close<_10_day_low))
        strategy.close("long")
        buyExit := true
        traded := "false"
        
    if buy_sell == "sell" and ((close>stoploss)or(close>_10_day_high))
        strategy.close("short")
        sellExit := true
        traded := "false"
        
plotshape(buyExit,style = shape.triangleup,location = location.belowbar, color = color.yellow )
buyExit := false
plotshape(sellExit,style = shape.triangledown, color = color.yellow )
sellExit := false