이 전략은 피보나치 0.7 리트레이스먼트 레벨을 기반으로 한 트렌드 돌파 트레이딩 시스템이다. 가격이 피보나치 0.7 레벨을 넘을 때 거래 신호를 생성하며, 이는 지정된 룩백 기간 내에서 가장 높고 가장 낮은 가격을 사용하여 계산된다. 이 전략은 리스크 관리에 대한 고정 비율의 수익 및 스톱 로스 레벨을 사용하여 계정 자본의 5%를 기본 위치 크기로 사용합니다.
전략의 핵심 논리는 다음의 핵심 요소에 기초합니다.
이 전략은 트렌드 돌파 및 리스크 관리의 핵심 요소와 고전적인 피보나치 이론을 결합한다. 적절한 매개 변수 최적화와 신호 필터링을 통해 특정 한계를 가지고 있지만 다양한 시장 조건에서 안정적인 성능을 유지할 잠재력을 가지고 있다. 성공적인 전략 구현은 거래자가 시장 특성을 깊이 이해하고 실제 조건에 따라 적절한 조정 및 최적화를 수행하는 것을 요구한다.
/*backtest start: 2024-11-26 00:00:00 end: 2024-12-25 08:00:00 period: 1h basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy("Fibonacci 0.7 Strategy - 60% Win Rate", overlay=true) // Input parameters fibonacci_lookback = input.int(20, minval=1, title="Fibonacci Lookback Period") take_profit_percent = input.float(1.8, title="Take Profit (%)") stop_loss_percent = input.float(1.2, title="Stop Loss (%)") // Calculating Fibonacci levels var float high_level = na var float low_level = na if (ta.change(ta.highest(high, fibonacci_lookback))) high_level := ta.highest(high, fibonacci_lookback) if (ta.change(ta.lowest(low, fibonacci_lookback))) low_level := ta.lowest(low, fibonacci_lookback) fib_level_0_7 = high_level - ((high_level - low_level) * 0.7) // Entry Conditions buy_signal = close > fib_level_0_7 and close[1] <= fib_level_0_7 sell_signal = close < fib_level_0_7 and close[1] >= fib_level_0_7 // Risk management long_take_profit = strategy.position_avg_price * (1 + take_profit_percent / 100) long_stop_loss = strategy.position_avg_price * (1 - stop_loss_percent / 100) short_take_profit = strategy.position_avg_price * (1 - take_profit_percent / 100) short_stop_loss = strategy.position_avg_price * (1 + stop_loss_percent / 100) // Execute trades if (buy_signal) strategy.entry("Buy", strategy.long) if (sell_signal) strategy.entry("Sell", strategy.short) // Take Profit and Stop Loss if (strategy.position_size > 0) strategy.exit("Take Profit/Stop Loss", "Buy", stop=long_stop_loss, limit=long_take_profit) if (strategy.position_size < 0) strategy.exit("Take Profit/Stop Loss", "Sell", stop=short_stop_loss, limit=short_take_profit) // Plot Fibonacci Level plot(fib_level_0_7, color=color.blue, title="Fibonacci 0.7 Level")