Chiến lược mua lại tỷ lệ vàng Fibonacci là một chiến lược giao dịch dựa trên các mức thu hồi Fibonacci và stop-loss theo xu hướng. Chiến lược sử dụng các mức thu hồi Fibonacci làm mức hỗ trợ và kháng cự tiềm năng và kết hợp chúng với stop-loss sau để xác định cơ hội mua và bán. Khi giá quay trở lại một mức Fibonacci nhất định trong một xu hướng tăng và trên mức stop-loss sau, chiến lược tạo ra tín hiệu mua. Khi giá giảm xuống dưới mức stop-loss sau hoặc một mức Fibonacci nhất định, chiến lược tạo ra tín hiệu bán.
Chiến lược mua lại tỷ lệ vàng Fibonacci là một chiến lược giao dịch kết hợp các mức khôi phục Fibonacci với mức dừng lỗ. Chiến lược sử dụng các mức khôi phục Fibonacci như là mức hỗ trợ và kháng cự tiềm năng và kết hợp một mức dừng lỗ để xác định cơ hội mua và bán.
/*backtest start: 2023-04-23 00:00:00 end: 2024-04-28 00:00:00 period: 1d basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy(title='Fibonacci BFSP', overlay=true) // Define Fibonacci retracement levels fib0 = input(0, title="Fibonacci 0% Level") fib1 = input(1, title="Fibonacci 1% Level") fib23 = input(0.236, title="Fibonacci 23.6% Level") fib38 = input(0.382, title="Fibonacci 38.2% Level") fib50 = input(0.5, title="Fibonacci 50% Level") fib61 = input(0.618, title="Fibonacci 61.8% Level") fib78 = input(0.786, title="Fibonacci 78.6% Level") Price = input(50, title="Price") // Calculate Fibonacci levels priceHigh = ta.highest(high, Price) priceLow = ta.lowest(low, Price) priceRange = priceHigh - priceLow fibRetracement0 = priceHigh - fib0 * priceRange fibRetracement1 = priceHigh - fib1 * priceRange fibRetracement23 = priceHigh - fib23 * priceRange fibRetracement38 = priceHigh - fib38 * priceRange fibRetracement50 = priceHigh - fib50 * priceRange fibRetracement61 = priceHigh - fib61 * priceRange fibRetracement78 = priceHigh - fib78 * priceRange // Plot Fibonacci retracement levels plot(fibRetracement0, color=color.gray, linewidth=2) plot(fibRetracement1, color=color.gray, linewidth=2) plot(fibRetracement23, color=color.green, linewidth=2) plot(fibRetracement38, color=color.olive, linewidth=2) plot(fibRetracement50, color=color.white, linewidth=2) plot(fibRetracement61, color=color.orange, linewidth=2) plot(fibRetracement78, color=color.red, linewidth=2) // Inputs no = input(1, title="Swing") // Calculate swing highs and lows res = ta.highest(high, no) sup = ta.lowest(low, no) // Calculate trailing stop loss avd = close > res[1] ? 1 : close < sup[1] ? -1 : 0 avn = ta.valuewhen(avd != 0, avd, 0) tsl = avn == 1 ? sup : res // Define buy and sell conditions buyCondition = (close > tsl) and (close > fibRetracement23 or close > fibRetracement38 or close > fibRetracement50 or close > fibRetracement61 or close > fibRetracement78) sellCondition = (close < tsl) and (close < fibRetracement23 or close < fibRetracement38 or close < fibRetracement50 or close < fibRetracement61 or close < fibRetracement78) // Entry strategy if (buyCondition) strategy.entry("Buy", strategy.long) // Exit strategy if (sellCondition) strategy.close("Buy") // Color bars based on buy and sell conditions barColor = buyCondition ? color.green : sellCondition ? color.red : na barcolor(barColor)