이 전략은 날짜별 트리거와 트래일링 스톱 로스 메커니즘을 갖춘 긴 포지션 엔트리를 위해 설계되었습니다. 특히 특정 캘린더 날짜에 따라 엔트리를 자동화하고 트래일링 스톱 로스 같은 동적 리스크 제어 방법을 사용하여 포지션을 관리하려는 거래자에게 유용합니다.
이 전략은 먼저 달과 날을 포함한 특정 입시 날짜를 입력하고, 그 다음이 날짜를 기반으로 정확한 입시 시간표를 계산합니다. 또한 트레일링 스톱 손실의 비율 매개 변수를 입력합니다.
엔트리 날짜에 전략은 긴 포지션을 열고 동시에 가장 높은 가격 (highestPrice) 과 스톱 러스 가격 (stopLoss) 을 기록합니다. 가장 높은 가격은 시간이 지남에 따라 계속 업데이트되며, 스톱 러스는 특정 비율로 하락합니다.
만약 가격이 스톱 로스 이하로 떨어지면, 포지션은 닫을 것입니다. 그렇지 않으면, 포지션은 열려있으며, 스톱 로스는 수익을 확보하고 위험을 통제하기 위해 가장 높은 가격에 따라 계속됩니다.
이 전략의 주요 장점은 다음과 같습니다.
또한 몇 가지 위험이 있습니다.
개선 가능점:
가능한 최적화 방향:
이 전략은 트레일링 스톱 로스를 통해 자동화 된 날짜 기반 엔트리 및 동적 리스크 관리를 제공합니다. 간단하고 직관적으로 작동하며 장기 보유에 적합합니다. 추가 최적화는 매우 실용적인 양 거래 전략으로 만들 수 있습니다.
/*backtest start: 2024-01-24 00:00:00 end: 2024-01-31 00:00:00 period: 1m basePeriod: 1m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy(title="Trailing Stop Loss Percent", overlay=true, pyramiding=1) // Input for the specific entry date entryDay = input.int(defval = 1, title = "Entry Day", minval = 1, maxval = 31) entryMonth = input.int(defval = 1, title = "Entry Month", minval = 1, maxval = 12) entryYear = input.int(defval = 2023, title = "Entry Year", minval = 1970) // Calculate the entry date timestamp entryDate = timestamp(entryYear, entryMonth, entryDay, 00, 00) // Trailing Stop Loss Percentage trailStopPercent = input.float(defval = 5.0, title = "Trailing Stop Loss (%)", minval = 0.1) // Entry Condition enterTrade = true // Variables to track the highest price and stop loss level since entry var float highestPrice = na var float stopLoss = na // Update the highest price and stop loss level if strategy.position_size > 0 highestPrice := math.max(highestPrice, high) stopLoss := highestPrice * (1 - trailStopPercent / 100) // Enter the strategy if enterTrade strategy.entry("Long Entry", strategy.long) highestPrice := high stopLoss := highestPrice * (1 - trailStopPercent / 100) // Exit the strategy if the stop loss is hit if strategy.position_size > 0 and low <= stopLoss strategy.close("Long Entry") // Plotting the stop loss level for reference plot(strategy.position_size > 0 ? stopLoss : na, "Trailing Stop Loss", color=color.red)