이 전략은 매일 오전 2시 5분 오프닝 가격의 비율 변화에 따라 거래 결정을 내리고, 두 단계의 브레이크오프를 사용하여 다른 트리거 조건을 설정하여 다양한 시장에서 중요한 가격 움직임을 포착하는 것을 목표로합니다.
이 전략은 매일 새벽 2시 5분 촛불의 개막 가격과 비교하여 현재 5분 촛불의 개막 가격의 비율 변화를 계산합니다. 비율 변화가 첫 번째 단계 브레이크아웃 임계치를 초과하면 해당 구매 또는 판매 결정이 이루어집니다. 스톱 로스와 수익 레벨도 포지션을 닫을 수 있습니다.
만약 스톱 로스가 트리거되면, 그 비율의 변화가 계속 확대되고 두 번째 단계의 트리거 조건을 초과하면, 이전 오더가 취소되고 두 번째 단계의 임계값을 이용한 새로운 구매 또는 판매 오더가 배치되며, 스톱 로스와 영업이 계속 추적됩니다.
두 단계의 브레이크 아웃 설정은 시장의 범위에서 약간의 소음을 필터링하여 더 중요한 가격 움직임에만 거래를합니다. 두 번째 단계를 활성화하면 스톱 로스가 너무 자주 발생되는 상황을 줄일 수 있습니다.
완화:
이 전략은 두 단계의 브레이크아웃을 사용하여 시장에서 가격 스파이크를 캡처하고 노이즈를 효과적으로 필터링합니다. 개념은 간단하고 명확하며 매개 변수 최적화를 통해 좋은 결과를 얻을 수 있습니다. 다음 단계는 트렌드 시장에서 성능을 극대화하기 위해 트렌드 지표와 결합하는 것입니다. 전반적으로 이것은 브레이크아웃 원리를 잘 활용하고 조정 후 탄탄한 결과를 얻을 수있는 새로운 전략입니다.
/*backtest start: 2023-10-01 00:00:00 end: 2023-10-31 23:59:59 period: 1h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy("Auto Entry Bot", overlay=true) // Define input for the stop loss and take profit levels stopLossPips = input.int(200, title="Stop Loss Pips", minval=1) takeProfitPips = input.int(400, title="Take Profit Pips", minval=1) // Calculate the percentage change from the 5-minute opening candle at 2:00 AM var float openPrice = na if (hour == 2 and minute == 0) openPrice := open percentageChange = (close - openPrice) / openPrice * 100 // Track the cumulative percentage change var float cumulativeChange = 0 // Define input for the percentage change trigger triggerPercentage1 = input.float(0.25, title="Percentage Change Trigger (%)", minval=0.01, step=0.01) triggerPercentage2 = input.float(0.35, title="Additional Trigger Percentage (%)", minval=0.01, step=0.01) // Check for price change trigger if (percentageChange >= triggerPercentage1) // Sell signal strategy.entry("Sell", strategy.short) strategy.exit("ExitSell", loss=stopLossPips, profit=takeProfitPips) cumulativeChange := 0 // Reset cumulative change after a trade if (percentageChange <= -triggerPercentage1) // Buy signal strategy.entry("Buy", strategy.long) strategy.exit("ExitBuy", loss=stopLossPips, profit=takeProfitPips) cumulativeChange := 0 // Reset cumulative change after a trade // If the price keeps hitting stop loss, activate the second trigger if (strategy.position_size < 0 and percentageChange <= -triggerPercentage2) strategy.cancel("Sell") // Cancel previous sell order strategy.entry("Sell2", strategy.short) strategy.exit("ExitSell2", loss=stopLossPips, profit=takeProfitPips) cumulativeChange := 0 // Reset cumulative change after a trade if (strategy.position_size > 0 and percentageChange >= triggerPercentage2) strategy.cancel("Buy") // Cancel previous buy order strategy.entry("Buy2", strategy.long) strategy.exit("ExitBuy2", loss=stopLossPips, profit=takeProfitPips) cumulativeChange := 0 // Reset cumulative change after a trade