
Chiến lược này là hệ thống giao dịch đột phá xu hướng dựa trên mức thoái lui Fibonacci 0,7. Nó xác định mức Fibonacci 0,7 bằng cách tính giá cao nhất và thấp nhất trong một khoảng thời gian nhìn lại cụ thể và tạo ra tín hiệu giao dịch khi giá vượt qua mức đó. Chiến lược này sử dụng tỷ lệ cố định của mức chốt lời và dừng lỗ để quản lý rủi ro và theo mặc định, sử dụng 5% tổng giá trị tài khoản làm số tiền giao dịch duy nhất.
Logic cốt lõi của chiến lược này dựa trên các yếu tố chính sau:
Chiến lược này dựa trên lý thuyết Fibonacci cổ điển và kết hợp các yếu tố cốt lõi của đột phá xu hướng và quản lý rủi ro. Mặc dù có một số hạn chế nhất định, thông qua việc tối ưu hóa thông số hợp lý và lọc tín hiệu, sản phẩm này được kỳ vọng sẽ duy trì hiệu suất ổn định trong nhiều môi trường thị trường khác nhau. Việc vận hành chiến lược thành công đòi hỏi nhà giao dịch phải hiểu sâu sắc đặc điểm thị trường và thực hiện những điều chỉnh, tối ưu hóa phù hợp dựa trên các điều kiện thực tế.
/*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")