La stratégie du ratio d'or de Fibonacci et de l'indice de force relative (RSI) est une stratégie de trading intraday. Elle combine le principe du ratio d'or de Fibonacci et l'indicateur RSI pour émettre des signaux d'achat ou de vente lorsque le prix approche des points clés du ratio d'or et que le RSI montre un état de surachat ou de survente.
Calculer la ligne médiane du prix en fonction d'une certaine période de barres.
Calculer les points clés du ratio d'or, y compris le niveau 0,618 et le niveau 1 en fonction de la ligne médiane et de l'écart type.
Lorsque le prix s'approche des points clés du ratio d'or, vérifiez si le RSI entre dans la zone de surachat ou de survente.
Émettre des signaux d'achat ou de vente si la règle du ratio d'or et la condition RSI sont remplies.
Mettez un stop-loss et profitez pour contrôler les risques.
La combinaison de plusieurs indicateurs améliore la qualité du signal et réduit les faux signaux.
Utilisez la fonction de support/résistance de la règle du ratio d'or pour assurer une entrée de qualité.
L'indice RSI mesure la psychologie du marché pour éviter les revers extrêmes.
Convient pour le trading intradien à haute fréquence afin d'accumuler des bénéfices sur plusieurs petits trades.
Le ratio d'or ne peut pas garantir un renversement de prix de 100%.
Le RSI peut donner des signaux trompeurs, il doit combiner l'action des prix.
Un stop loss trop serré pourrait être arrêté par des fluctuations de prix.
Le trading à haute fréquence nécessite des coûts de négociation plus élevés et un contrôle des risques plus strict.
Les solutions:
Suivez strictement la règle du stop loss pour limiter les pertes d'une seule transaction.
Détacher correctement les paramètres du RSI pour éviter les signaux trompeurs.
Optimiser le point d'arrêt des pertes pour réduire la probabilité d'arrêt tout en assurant un arrêt des pertes efficace.
Résultats des essais sur différents paramètres de la période du cycle.
Essayez de combiner d'autres indicateurs comme le MACD, les bandes de Bollinger, etc. pour améliorer la qualité du signal.
Recherchez différentes stratégies de stop loss pour trouver des configurations optimales.
Évaluer la période de détention optimale pour équilibrer les bénéfices et les coûts.
Le ratio d'or de Fibonacci et la stratégie RSI filtrent les transactions bruyantes grâce à une double confirmation. Comparé aux stratégies à indicateur unique, il génère des signaux de trading de meilleure qualité. Avec l'optimisation des paramètres et une règle stricte, cette stratégie peut devenir un outil de trading intraday efficace.
/*backtest start: 2023-12-26 00:00:00 end: 2024-01-02 00:00:00 period: 1m basePeriod: 1m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ // This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/ // © MohamedYAbdelaziz // Intraday Trading // Best used for Short Timeframes [1-30 Minutes] // If you have any modifications please tell me to update it //@version=4 strategy(title="Fibonacci + RSI - Strategy", overlay=true, default_qty_type=strategy.percent_of_equity, default_qty_value=100, initial_capital=10000, currency=currency.USD) // Inputs timeFilter = year >= 2000 // Stop Loss % loss_percent = input(title="Stop Loss (%)", minval=0.0, step=0.1, defval=2) * 0.001 // RSI Inputs len = input(title="[RSI] Length", minval=0, step=1, defval=14) overSold = input(title="[RSI] Over Sold %", defval=30) overBought = input(title="[RSI] Over Bought %", defval=70) // Fibonacci Levels length = input(title="[Fibonacci] Length", defval=200, minval=1) src = input(hlc3, title="[Fibonacci] Source") mult = input(title="[Fibonacci] Multiplier", defval=3.0, minval=0.001, maxval=50) level = input(title="[Fibonacci] Level", defval=764) // Calculate Fibonacci basis = vwma(src, length) dev = mult * stdev(src, length) fu764= basis + (0.001*level*dev) fu1= basis + (1*dev) fd764= basis - (0.001*level*dev) fd1= basis - (1*dev) // Calculate RSI vrsi = rsi(close, len) // Calculate the Targets targetUp = fd764 targetDown = fu764 // Actual Targets bought = strategy.position_size[0] > strategy.position_size[1] exit_long = valuewhen(bought, targetUp, 0) sold = strategy.position_size[0] < strategy.position_size[1] exit_short = valuewhen(sold, targetDown, 0) // Calculate Stop Losses stop_long = strategy.position_avg_price * (1 - loss_percent) stop_short = strategy.position_avg_price * (1 + loss_percent) // Conditions to Open Trades openLong = low < fd1 and crossover(vrsi[1], overSold) openShort = high > fu1 and crossunder(vrsi[1], overBought) // Conditions to Close Trades closeLong = high > exit_long closeShort = low < exit_short // Plots plot(basis, color=color.blue, linewidth=2, title="[Fibonacci Level] Basis") plot(fu764, color=color.white, linewidth=1, title="[Fibonacci Level] Short Target") plot(fu1, color=color.red, linewidth=2, title="1", title="[Fibonacci Level] Top") plot(fd764, color=color.white, linewidth=1, title="[Fibonacci Level] Long Target") plot(fd1, color=color.green, linewidth=2, title="1", title="[Fibonacci Level] Bottom") // Strategy Orders if timeFilter // Entry Orders strategy.entry(id="Long", long=true, when=openLong and high < targetUp, limit=close) strategy.entry(id="Short", long=false, when=openShort and low > targetDown, limit=close) // Exit Orders strategy.exit(id="Long", when=closeLong and strategy.position_size > 0, limit=exit_long, stop=stop_long) strategy.exit(id="Short", when=closeShort and strategy.position_size < 0, limit=exit_short, stop=stop_short)