Stratégie de négociation pour les marchés oscillants combinant les indicateurs MACD et RSI

Auteur:ChaoZhang est là., Date: 2023-09-13 15:14:43 Je vous en prie.
Les étiquettes:

Cette stratégie s'appelle Stratégie de trading pour les marchés oscillants combinant les indicateurs MACD et RSI. Elle est conçue spécifiquement pour les marchés cryptographiques récemment oscillants et variés, générant des signaux de trading en intégrant l'indicateur de tendance MACD et l'oscillateur de momentum RSI.

Le MACD est l'indicateur de divergence de convergence de moyenne mobile, jugeant la tendance et les renversements du marché.

Le RSI est l'indice de force relative, qui mesure les conditions de surachat et de survente.

La logique de négociation est la suivante:

Lorsque le croisement MACD se produit avec le franchissement de la ligne rapide au-dessus de la ligne lente, il indique que la tendance à court terme change de baisse à hausse, mais un signal d'achat n'est confirmé que lorsque le RSI est à des niveaux bas (en dessous du paramètre prédéfini) pour éviter les fléchissements dans les zones de surachat.

Lorsque le croisement MACD se produit avec le franchissement de la ligne rapide en dessous de la ligne lente, il signale l'inversion de la tendance à court terme de haut en bas, mais un signal de vente n'est confirmé que lorsque le RSI atteint des niveaux élevés (au-dessus du paramètre prédéfini) afin d'éviter des sauts dans les zones de survente.

Cette stratégie convient aux marchés cryptographiques actuels en oscillation et en variation pour saisir les opportunités d'inversion aux hauts et aux bas pour les profits. Mais un stop loss doit être appliqué pour limiter les pertes d'un seul commerce.

En conclusion, la combinaison du MACD et du RSI peut améliorer l'efficacité de la stratégie pour les marchés oscillants. Mais aucun indicateur ne peut parfaitement prédire les marchés. Les traders ont encore besoin d'un jugement solide sur les tendances du marché et d'un ajustement flexible de la stratégie.


/*backtest
start: 2022-09-06 00:00:00
end: 2023-03-11 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("Range Strat - MACD/RSI", 
     overlay=true,
     default_qty_type=strategy.percent_of_equity,
     default_qty_value=100, precision=2, initial_capital=100,
     pyramiding=2,
     commission_value=0.05)

// Make input options that configure backtest date range
startDate = input(title="Start Date", defval=13)
startMonth = input(title="Start Month", defval=6)
startYear = input(title="Start Year", defval=2022)

endDate = input(title="End Date", defval=1)
endMonth = input(title="End Month", defval=7)
endYear = input(title="End Year", defval=2200)

// Look if the close time of the current bar
// falls inside the date range
inDateRange = (time >= timestamp(syminfo.timezone, startYear,
         startMonth, startDate, 0, 0)) and
     (time < timestamp(syminfo.timezone, endYear, endMonth, endDate, 0, 0))

// RSI Settings
length = input( 14 )
overSold = input( 55 )
overBought = input( 50 )
price = open
vrsi = ta.rsi(price, length)
cu = (vrsi <= overSold)
co = (vrsi >= overBought)

//MACD Settings
fastLength = input(12)
slowlength = input(26)
MACDLength = input(9)
MACD = ta.ema(open, fastLength) - ta.ema(open, slowlength)
aMACD = ta.ema(MACD, MACDLength)
delta = MACD - aMACD
MACDco = ta.crossover(delta, 0)
MACDcu = ta.crossunder(delta, 0)

// Strategy Entry
if (not na(vrsi))
	if (inDateRange and MACDco and cu)
		strategy.entry("LONG", strategy.long, comment="LONG")
	if (inDateRange and MACDcu and co)
		strategy.entry("SHORT", strategy.short, comment="SHORT")
//plot(strategy.equity, title="equity", color=color.red, linewidth=2, style=plot.style_areabr)



Plus de