
Стратегия является высокотехнологичной системой отслеживания тенденций, основанной на принципе Фибоначчи-отступления. Она идентифицирует потенциальные зоны поддержки и сопротивления путем динамического вычисления важных уровней Фибоначчи-отступления: 23,6%, 38,2%, 50%, 61,8%, 78,6% . Система использует 100-циклическое окно обратной связи для определения максимумов и минимумов и на основе этого рассчитывает различные уровни отступления.
Основная логика стратегии основана на теории, что цены в основных тенденциях могут переворачиваться вблизи критических уровней фибоначчи. В частности:
Это систематизированная торговая стратегия, основанная на классической теории технического анализа. Программная реализация придает ей объективность и повторяемость. Основная преимущество стратегии заключается в сочетании теории Фибоначчи с строгим контролем риска и подходит для использования в трендовых рынках.
/*backtest
start: 2024-11-11 00:00:00
end: 2024-12-10 08:00:00
period: 1h
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=5
strategy("Fibonacci Retracement Strategy", overlay=true)
// Inputs
lookback_period = input.int(100, title="Lookback Period")
level_1 = input.float(0.236, title="Fibonacci Level 1")
level_2 = input.float(0.382, title="Fibonacci Level 2")
level_3 = input.float(0.5, title="Fibonacci Level 3")
level_4 = input.float(0.618, title="Fibonacci Level 4")
level_5 = input.float(0.786, title="Fibonacci Level 5")
// Calculate highest high and lowest low over the lookback period
high_level = ta.highest(high, lookback_period)
low_level = ta.lowest(low, lookback_period)
// Calculate Fibonacci retracement levels
fib_236 = low_level + (high_level - low_level) * level_1
fib_382 = low_level + (high_level - low_level) * level_2
fib_50 = low_level + (high_level - low_level) * level_3
fib_618 = low_level + (high_level - low_level) * level_4
fib_786 = low_level + (high_level - low_level) * level_5
// Plot Fibonacci levels on the chart
plot(fib_236, color=color.green, title="Fib 23.6%")
plot(fib_382, color=color.blue, title="Fib 38.2%")
plot(fib_50, color=color.orange, title="Fib 50%")
plot(fib_618, color=color.red, title="Fib 61.8%")
plot(fib_786, color=color.purple, title="Fib 78.6%")
// Entry and Exit Conditions
buy_signal = ta.crossover(close, fib_618)
sell_signal = ta.crossunder(close, fib_382)
// Strategy Orders
if buy_signal
strategy.entry("Buy", strategy.long)
// Exit based on stop-loss and take-profit conditions
take_profit = high_level // Exit at the highest Fibonacci level (100%)
stop_loss = low_level // Exit at the lowest Fibonacci level (0%)
strategy.exit("Sell", from_entry="Buy", limit=take_profit, stop=stop_loss)
// Visualization of Signals
plotshape(series=buy_signal, title="Buy Signal", location=location.belowbar, color=color.green, style=shape.labelup, text="BUY")
plotshape(series=sell_signal, title="Sell Signal", location=location.abovebar, color=color.red, style=shape.labeldown, text="SELL")