Stratégie de croisement RSI stochastique Triple EMA


Date de création: 2024-01-26 16:07:34 Dernière modification: 2024-01-26 16:07:34
Copier: 0 Nombre de clics: 809
1
Suivre
1617
Abonnés

Stratégie de croisement RSI stochastique Triple EMA

Aperçu

La triple EMA Random RSI Crossed Fork est une stratégie de suivi des tendances. Elle combine les indices de la moyenne mobile triangulaire et les indices de la faiblesse relative de l’indice aléatoire pour déterminer le moment d’entrée en jeu par le signal croisé du double indicateur.

Principe de stratégie

Le jugement de la stratégie sur les signaux est basé sur la logique suivante:

  1. La triple tendance de l’EMA: la ligne 8 en haut, la ligne 14 au milieu et la ligne 50 en bas constituent une tendance à plusieurs têtes, et à l’inverse une tendance à la tête vide.

  2. L’indicateur RSI au hasard détermine le croisement: la ligne K traverse la ligne D en dessous pour produire un signal de fourche, indiquant une entrée de force.

  3. Il n’y a rien à faire, il n’y a rien à penser.

Lorsque la triple EMA montre une tendance à la hausse et que le RSI apparaît au hasard, faites plus. Sur cette base, définissez un stop loss et un stop loss pour verrouiller les bénéfices.

Analyse des avantages

Cette stratégie, combinée à un double indicateur de jugement, permet de localiser efficacement les tendances. Les principaux avantages sont les suivants:

  1. Le triple EMA filtre le bruit à court terme et bloque les tendances à moyen et long terme.

  2. Le forfait RSI aléatoire confirme une entrée en vigueur.

  3. ATR: Stop Loss Intelligent, qui bloque les bénéfices.

  4. La logique de la stratégie est simple et claire, facile à comprendre et à mettre en œuvre.

Analyse des risques

Les principaux risques de cette stratégie sont les suivants:

  1. Il est facile de se faire piéger lors d’un grand tremblement de terre. Lorsque le triple EMA produit de multiples fourches mortes lors d’un tremblement de terre, il est fréquent d’ouvrir des positions et de construire des positions, ce qui entraîne un risque de transaction.

  2. Il n’y a pas d’opportunités de shorting. Si vous faites trop de shorting, vous manquerez l’opportunité de rebond au bas.

Direction d’optimisation

Les principaux axes d’optimisation de cette stratégie sont les suivants:

  1. Optimiser les paramètres EMA et améliorer le jugement des tendances.

  2. Augmentation des indicateurs tels que le MACD, pour déterminer la tendance à la baisse et augmenter les opportunités de faire de la baisse.

  3. Augmentation des indicateurs de volatilité tels que l’ATR et amélioration des paramètres de stop loss.

  4. En combinaison avec des indicateurs de volume de transactions, il est possible d’éviter les faux-breechers.

  5. L’optimisation des paramètres est réalisée à l’aide de techniques telles que l’apprentissage automatique.

Résumer

Dans l’ensemble, la stratégie de croisement RSI aléatoire triple EMA, combinée à un jugement de double indicateur, permet de filtrer efficacement les fluctuations et de bloquer les tendances. C’est une stratégie de suivi de tendance simple et pratique.

Code source de la stratégie
/*backtest
start: 2024-01-01 00:00:00
end: 2024-01-25 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4

strategy(title="Stoch RSI Crossover Strat + EMA", shorttitle="Stoch RSI Cross + EMA Strat", overlay = true)

// Time Range
FromMonth=input(defval=1,title="FromMonth",minval=1,maxval=12)
FromDay=input(defval=1,title="FromDay",minval=1,maxval=31)
FromYear=input(defval=2020,title="FromYear",minval=2017)
ToMonth=input(defval=1,title="ToMonth",minval=1,maxval=12)
ToDay=input(defval=1,title="ToDay",minval=1,maxval=31)
ToYear=input(defval=9999,title="ToYear",minval=2017)
start=timestamp(FromYear,FromMonth,FromDay,00,00)
finish=timestamp(ToYear,ToMonth,ToDay,23,59)
window()=>true

// See if this bar's time happened on/after start date
afterStartDate = time >= start and time<=finish?true:false

//STOCH RSI
smoothK = input(3, minval=1)
smoothD = input(3, minval=1)
lengthRSI = input(14, minval=1)
lengthStoch = input(14, minval=1)
src = input(close, title="RSI Source")

rsi1 = rsi(src, lengthRSI)
k = sma(stoch(rsi1, rsi1, rsi1, lengthStoch), smoothK)
d = sma(k, smoothD)

//ATR
lengthATR = input(title="ATR Length", defval=14, minval=1)
atr = atr(lengthATR)

//MULTI EMA
emasrc = close, 
len1 = input(8, minval=1, title="EMA 1")
len2 = input(14, minval=1, title="EMA 2")
len3 = input(50, minval=1, title="EMA 3")

ema1 = ema(emasrc, len1)
ema2 = ema(emasrc, len2)
ema3 = ema(emasrc, len3)

col1 = color.lime
col2 = color.blue
col3 = color.orange

//EMA Plots
//plot(ema1, title="EMA 1", linewidth=1, color=col1)
//plot(ema2, title="EMA 2", linewidth=1, color=col2)
//plot(ema3, title="EMA 3", linewidth=1, color=col3)

crossup = k[0] > d[0] and k[1] <= d[1]
emapos = ema1 > ema2 and ema2 > ema3 and close > ema1
barbuy = crossup and emapos

//plotshape(crossup, style=shape.triangleup, location=location.belowbar, color=color.white)
plotshape(barbuy, style=shape.triangleup, location=location.belowbar, color=color.green)

longloss = sma(open, 1)
//plot(longloss, color=color.red)

//Buy and Sell Factors
profitfactor = input(title="Profitfactor", type=input.float, step=0.1, defval=2)
stopfactor = input(title="Stopfactor", type=input.float, step=0.1, defval=3)
bought = strategy.position_size[1] < strategy.position_size
longcondition = barbuy

if (longcondition) and (afterStartDate) and strategy.opentrades < 1
    strategy.entry("Long", strategy.long)

if (afterStartDate) and strategy.opentrades > 0
    barsbought = barssince(bought)
    profit_level = strategy.position_avg_price + (atr*profitfactor)
    stop_level = strategy.position_avg_price - (atr*stopfactor)
    strategy.exit("Take Profit/ Stop Loss", "Long", stop=stop_level[barsbought], limit=profit_level[barsbought])