이 전략은 주식의 가장 높고 가장 낮은 가격에 따라 긴 및 짧은 포지션에 대한 스톱 로스 라인을 설정하는 동적 트레일링 스톱 로스 메커니즘을 기반으로합니다. 가격이 스톱 로스 라인을 달성하면 현재 포지션을 닫고 반대 방향으로 새로운 포지션을 여는 것입니다. 전략은 단일 거래 위험을 제어하는 데 간단하고 효과적입니다.
이 전략의 주요 단계는 다음과 같습니다.
위는 전략의 기본 논리입니다. 가격이 움직일 때, 스톱 로스 라인은 동적 추적을 위해 업데이트됩니다. 스톱 로스를 추적함으로써 거래 당 손실을 효과적으로 제어 할 수 있습니다.
이 전략의 주요 장점:
요약하자면, 간단한 트레일링 스톱 로스 메커니즘을 통해 이 전략은 포지션을 효과적으로 관리할 수 있으며 전형적인 리스크 관리 전략입니다.
또한 몇 가지 위험 요소가 있습니다.
이러한 위험은 기간을 조정하여 합리적으로 미끄러짐을 줄여 더 합리적인 스톱 로스 라인을 만들어서 최적화 할 수 있습니다.
이 전략은 다음과 같은 측면에서 업그레이드 될 수 있습니다.
이 거래 전략은 간단한 트레일링 스톱 로스 방법을 통해 동적인 포지션 관리를 실현합니다. 이해 및 구현이 쉽고 단일 거래 손실을 효과적으로 제어 할 수 있습니다. 우리는 장점, 잠재적 위험 및 미래 최적화 방향을 분석했습니다. 결론적으로 이것은 매우 전형적이고 실용적인 위험 관리 전략입니다.
/*backtest start: 2023-12-01 00:00:00 end: 2023-12-31 23:59:59 period: 2h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //Noro //2019 //@version=4 strategy(title = "Noro's Trailing-Stop Strategy", shorttitle = "Trailing", overlay = true, default_qty_type = strategy.percent_of_equity, default_qty_value = 100, pyramiding = 0) //Settings needlong = input(true, defval = true, title = "Long") needshort = input(false, defval = false, title = "Short") length = input(20, minval = 1) shift = input(0.0, minval = 0, title = "Trailing Stop") background = input(false) //Levels max = highest(high, length) min = lowest(low, length) //Trailing size = strategy.position_size longtrailing = 0.0 shorttrailing = 0.0 longtrailing := size <= 0 ? min - ((min / 100) * shift) : max(min - ((min / 100) * shift), longtrailing[1]) shorttrailing := size >= 0 ? max + ((max / 100) * shift) : min(max + ((max / 100) * shift), shorttrailing[1]) trailing = size <= 0 ? shorttrailing : longtrailing col = size == size[1] ? size > 0 ? color.red : color.lime : na plot(trailing, color = col, linewidth = 2, transp = 0) //Background bgcol = background ? size > 0 ? color.lime : color.red : na bgcolor(bgcol, transp = 80) if trailing > 0 and size <= 0 strategy.entry("Long", strategy.long, needlong ? na : 0, stop = trailing) if trailing > 0 and size >= 0 strategy.entry("Short", strategy.short, needshort ? na : 0, stop = trailing)