
Cette stratégie a pour objectif de réaliser des transactions à bas prix et à haut prix en surveillant la rupture de l’indicateur RSI dans différentes zones. L’achat est effectué lorsque le RSI est dans la zone basse et la vente lorsque le RSI est dans la zone haute, ce qui entraîne une opération inversée lorsque le RSI est surchargé.
RSI est réglé sur 14 cycles
Pour définir la plage RSI du signal d’achat:
RSI pour les signaux de vente:
Lorsque le RSI entre dans la fourchette de l’offre, faites une entrée supplémentaire:
Le RSI entre dans la fourchette de vente, et le short entre dans celle de vente:
Chaque fois que vous ouvrez une position, fixez un stop-loss de 2500 et un stop-loss de 5000.
Le RSI a quitté la zone de signaux et a éliminé les positions correspondantes.
Le réglage de la double zone permet à la stratégie de mieux détecter les sur-achats et les sur-ventes et d’éviter de rater des occasions de reprise
Le stop loss est fixé à un certain nombre de points, ce qui ne l’empêche pas d’aller trop loin.
Le RSI est un indicateur de jugement de sur-achat et de sur-vente plus mature et plus avantageux que d’autres
Les paramètres de cette stratégie, lorsqu’ils sont raisonnablement configurés, permettent de capturer efficacement les points de retournement de tendance et d’obtenir des gains supplémentaires.
Le RSI peut avoir des défaillances sur le marché, ce qui peut entraîner des pertes de cours persistantes.
Les paramètres des points de stop-loss fixes peuvent ne pas correspondre à la volatilité du marché, ne pas permettre de réaliser de bénéfices ou d’arrêter prématurément les pertes
Un espacement déraisonnable peut entraîner des opportunités manquées ou des pertes fréquentes
Cette stratégie repose davantage sur l’optimisation des paramètres et nécessite une attention particulière aux cycles de test et au contrôle des points de glissement.
L’effet de l’indicateur RSI peut être testé sur des cycles de différentes longueurs
Les valeurs peuvent être optimisées pour les intervalles d’achat et de vente afin de mieux s’adapter aux caractéristiques des différentes variétés
Des méthodes d’arrêt dynamiques peuvent être étudiées pour rendre l’arrêt plus efficace et plus raisonnable.
La possibilité d’une négociation combinée avec d’autres indicateurs pour améliorer la stabilité du système
Des méthodes d’apprentissage automatique permettant d’optimiser automatiquement les paramètres d’intervalle peuvent être explorées pour rendre les stratégies plus robustes
Cette stratégie est basée sur le principe de jugement de sur-achat et de survente de l’indicateur RSI. En mettant en place des intervalles bi-achat et vente pour tirer parti de l’indicateur RSI, tout en conservant une certaine stabilité, il est possible de capturer efficacement le phénomène de sur-achat et de survente du marché.
/*backtest
start: 2023-09-16 00:00:00
end: 2023-10-16 00:00:00
period: 1h
basePeriod: 15m
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/
// © Rawadabdo
// Ramy's Algorithm
//@version=5
strategy("BTC/USD - RSI", overlay=false, initial_capital = 5000)
// User input
length = input(title = "Length", defval=14, tooltip="RSI period")
first_buy_level = input(title = "Buy Level 1", defval=27, tooltip="Level where 1st buy triggers")
second_buy_level = input(title = "Buy Level 2", defval=18, tooltip="Level where 2nd buy triggers")
first_sell_level = input(title = "Sell Level 1", defval=68, tooltip="Level where 1st sell triggers")
second_sell_level = input(title = "Sell Level 2", defval=80, tooltip="Level where 2nd sell triggers")
takeProfit= input(title="target Pips", defval=2500, tooltip="Fixed pip stop loss distance")
stopLoss = input(title="Stop Pips", defval=5000, tooltip="Fixed pip stop loss distance")
lot = input(title = "Lot Size", defval = 1, tooltip="Trading Lot size")
// Get RSI
vrsi = ta.rsi(close, length)
// Entry Conditions
long1 = (vrsi <= first_buy_level and vrsi>second_buy_level)
long2 = (vrsi <= second_buy_level)
short1= (vrsi >= first_sell_level and vrsi<second_sell_level)
short2= (vrsi >= second_sell_level)
// Entry Orders
// Buy Orders
if (long1 and strategy.position_size == 0)
strategy.entry("Long", strategy.long, qty=lot, comment="Buy")
if (long2 and strategy.position_size == 0)
strategy.entry("Long", strategy.long, qty=lot, comment="Buy")
// Short Orders
if (short1 and strategy.position_size == 0)
strategy.entry("Short", strategy.short,qty=lot, comment="Sell")
if (short2 and strategy.position_size == 0)
strategy.entry("Short", strategy.short,qty=lot, comment="Sell")
// Exit our trade if our stop loss or take profit is hit
strategy.exit(id="Long Exit", from_entry="Long",qty = lot, profit=takeProfit, loss=stopLoss)
strategy.exit(id="Short Exit", from_entry="Short", qty = lot, profit=takeProfit, loss=stopLoss)
// plot data to the chart
hline(first_sell_level, "Overbought Zone", color=color.red, linestyle=hline.style_dashed, linewidth = 2)
hline(second_sell_level, "Overbought Zone", color=color.green, linestyle=hline.style_dashed, linewidth = 2)
hline(first_buy_level, "Oversold Zone", color=color.red, linestyle=hline.style_dashed, linewidth = 2)
hline(second_buy_level, "Oversold Zone", color=color.green, linestyle=hline.style_dashed, linewidth = 2)
plot (vrsi, title = "RSI", color = color.blue, linewidth=2)