
La stratégie est un système de trading de tendance basé sur les niveaux de rétraction de Fibonacci et la forme de la ligne K. Elle fonctionne sur plusieurs périodes de temps et combine les principes de l’analyse technique et de la gestion des risques. La stratégie cherche principalement des opportunités de trading potentielles en identifiant les niveaux de rétraction de Fibonacci clés (de 0,618 à 0,786) tout en utilisant des objectifs de stop-loss et de profit pour gérer le risque.
La logique fondamentale de la stratégie repose sur les éléments clés suivants :
Il s’agit d’une stratégie de suivi de tendance bien structurée, qui offre aux traders une méthode de trading systématique en combinant les retraits de Fibonacci, la forme de la ligne K et les principes de gestion des risques. Bien qu’il y ait un certain risque, la stabilité et la fiabilité de la stratégie peuvent être encore améliorées par l’orientation d’optimisation recommandée. La nature polycyclique de la stratégie et ses paramètres personnalisables la rendent adaptée à différents types de traders.
/*backtest
start: 2024-12-03 00:00:00
end: 2024-12-10 00:00:00
period: 2m
basePeriod: 2m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
// This Pine Script™ code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © jontucklogic7467
//@version=5
strategy("Fibonacci Swing Trading Bot", overlay=true)
// Input parameters
fiboLevel1 = input.float(0.618, title="Fibonacci Retracement Level 1")
fiboLevel2 = input.float(0.786, title="Fibonacci Retracement Level 2")
riskRewardRatio = input.float(2.0, title="Risk/Reward Ratio")
stopLossPerc = input.float(1.0, title="Stop Loss Percentage") / 100
// Timeframe selection
useTimeframe = input.timeframe("240", title="Timeframe for Analysis", options=["240", "D", "W", "M"])
// Request data from selected timeframe
highTF = request.security(syminfo.tickerid, useTimeframe, high)
lowTF = request.security(syminfo.tickerid, useTimeframe, low)
// Swing high and low calculation over the last 50 bars in the selected timeframe
highestHigh = ta.highest(highTF, 50)
lowestLow = ta.lowest(lowTF, 50)
// Fibonacci retracement levels
fib618 = highestHigh - (highestHigh - lowestLow) * fiboLevel1
fib786 = highestHigh - (highestHigh - lowestLow) * fiboLevel2
// Plot Fibonacci levels
// line.new(bar_index[1], fib618, bar_index, fib618, color=color.red, width=2, style=line.style_dashed)
// line.new(bar_index[1], fib786, bar_index, fib786, color=color.orange, width=2, style=line.style_dashed)
// Entry signals based on candlestick patterns and Fibonacci levels
bullishCandle = close > open and close > fib618 and close < highestHigh
bearishCandle = close < open and close < fib786 and close > lowestLow
// Stop loss and take profit calculation
stopLoss = bullishCandle ? close * (1 - stopLossPerc) : close * (1 + stopLossPerc)
takeProfit = bullishCandle ? close + (close - stopLoss) * riskRewardRatio : close - (stopLoss - close) * riskRewardRatio
// Plot buy and sell signals
if bullishCandle
strategy.entry("Buy", strategy.long)
strategy.exit("Take Profit", "Buy", limit=takeProfit, stop=stopLoss)
if bearishCandle
strategy.entry("Sell", strategy.short)
strategy.exit("Take Profit", "Sell", limit=takeProfit, stop=stopLoss)