Cette stratégie est un système de trading de tendance basé sur les niveaux de rétractation de Fibonacci et les modèles de bougies. Elle fonctionne sur plusieurs délais, combinant l'analyse technique et les principes de gestion des risques.
La logique de base de la stratégie repose sur plusieurs éléments clés: 1. Sélection du délai: La stratégie peut fonctionner sur plusieurs délais, y compris 4 heures, quotidien, hebdomadaire et mensuel pour s'adapter à différents styles de négociation. 2. Calcul du niveau de Fibonacci: utilise des prix hauts et bas de 50 périodes pour calculer deux niveaux clés de retracement à 0,618 et 0,786. 3. Génération de signal d'entrée: le système génère des signaux longs ou courts lorsque le prix de clôture franchit les niveaux de Fibonacci dans des conditions spécifiques. 4. Gestion des risques: la stratégie utilise des pourcentages fixes de stop-loss et détermine les objectifs de profit grâce à des ratios risque-rendement prédéfinis.
Il s'agit d'une stratégie de suivi des tendances bien structurée qui fournit aux traders une approche de trading systématique en combinant la rétraction de Fibonacci, les modèles de bougies et les principes de gestion des risques.
/*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)