Stratégie de trading quantitative à court terme basée sur le croisement de la double moyenne mobile, le RSI et les indicateurs stochastiques

SMA RSI ATR
Date de création: 2024-06-17 15:35:40 Dernière modification: 2024-06-17 15:35:40
Copier: 1 Nombre de clics: 617
1
Suivre
1617
Abonnés

Stratégie de trading quantitative à court terme basée sur le croisement de la double moyenne mobile, le RSI et les indicateurs stochastiques

Aperçu

La stratégie utilise les croisements des deux moyennes mobiles des 20e et 50e jours comme signal principal de négociation, tout en utilisant le RSI et l’indicateur aléatoire comme jugement auxiliaire, pour effectuer une confirmation secondaire du signal de négociation. En outre, la stratégie utilise l’ATR comme base pour les arrêts et les arrêts, pour gérer les positions à risque fixe par rapport aux gains en tête, en cherchant à obtenir des gains stables tout en contrôlant les risques.

Principe de stratégie

  1. Les deux moyennes mobiles de 20 et 50 jours sont calculées, générant un signal de multiplication lorsque la moyenne à court terme traverse la moyenne à long terme; inversement, générant un signal de décalage.
  2. L’introduction de l’indicateur RSI comme jugement auxiliaire est envisagée lorsque l’indicateur RSI n’atteint pas la marge de survente ou de survente.
  3. L’introduction d’indicateurs aléatoires comme jugement auxiliaire. La position est envisagée lorsque la ligne K de l’indicateur aléatoire n’a pas atteint la marge de survente ou de survente.
  4. L’ATR est utilisé pour calculer les positions de stop-loss et de stop-loss, en utilisant le ratio de risque/bénéfice de 1:1 pour les positions de stop-loss et de stop-loss.
  5. Lors d’une position en plus, le stop loss est le prix le plus bas moins l’ATR, et le stop loss est le prix le plus élevé plus 2 fois l’ATR; lors d’une position en blanc, le stop loss est le prix le plus élevé plus l’ATR, et le stop loss est le prix le plus bas moins 2 fois l’ATR.

Avantages stratégiques

  1. Le double équilibre est un indicateur de tendance simple et facile à utiliser qui, combiné au RSI et à des indicateurs aléatoires, permet de filtrer efficacement les faux signaux.
  2. Le RSI et les indices aléatoires peuvent aider à déterminer si le marché est en sur-achat ou en sur-vente et à éviter d’entrer dans des conditions extrêmes.
  3. La gestion de position avec un ratio de risque/rendement fixe permet d’obtenir des rendements relativement stables en maîtrisant le risque global.
  4. Les paramètres sont réglables pour s’adapter à différents environnements de marché et styles de négociation.

Risque stratégique

  1. Les stratégies tendancielles sont plus susceptibles de générer de faux signaux dans les marchés en crise, ce qui entraîne des transactions fréquentes et des pertes de fonds.
  2. Le stop-loss à taux fixe peut entraîner des pertes excessives en une seule fois et affaiblir la courbe des fonds.
  3. Le manque de prise en compte de la gestion des positions et de la gestion des fonds rend difficile la gestion des situations extrêmes.

Orientation de l’optimisation de la stratégie

  1. L’introduction d’indicateurs techniques plus efficaces pour améliorer la précision et la fiabilité des signaux.
  2. Optimiser les paramètres du stop loss par une approche plus dynamique et intelligente pour améliorer les gains de la stratégie.
  3. Dans le domaine de la gestion des positions, il est possible de combiner des indicateurs de volatilité tels que l’ATR pour ajuster dynamiquement les positions.
  4. Dans le domaine de la gestion des fonds, l’introduction de méthodes telles que le budget des risques et la formule de Kelly pour améliorer l’efficacité de l’utilisation des fonds.

Résumer

La stratégie est une stratégie de trading basée sur les indices binaires, RSI et aléatoires, qui permet de contrôler les risques de trading tout en saisissant les opportunités de tendance. La logique de la stratégie est claire, les paramètres sont faciles à optimiser et conviennent aux investisseurs qui négocient en ligne courte. Cependant, la stratégie présente également des lacunes, telles que la capacité limitée de saisir les tendances, le manque de gestion dynamique des positions et des fonds.

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

//@version=5
strategy("Cruce de Medias con Filtros de RSI y Estocástico", overlay=true)

// Definir parámetros de las medias móviles
fast_length = input(20, title="Periodo de Media Rápida")
slow_length = input(50, title="Periodo de Media Lenta")

// Calcular medias móviles
fast_ma = ta.sma(close, fast_length)
slow_ma = ta.sma(close, slow_length)

// Añadir filtro RSI
rsi_length = input(7, title="Periodo del RSI")
rsi = ta.rsi(close, rsi_length)
rsi_overbought = input(70, title="RSI Sobrecomprado")
rsi_oversold = input(30, title="RSI Sobrevendido")

// Añadir filtro Estocástico
k_period = input(7, title="K Periodo del Estocástico")
d_period = input(3, title="D Periodo del Estocástico")
smooth_k = input(3, title="Suavización del Estocástico")
stoch_k = ta.sma(ta.stoch(close, high, low, k_period), smooth_k)
stoch_d = ta.sma(stoch_k, d_period)
stoch_overbought = input(80, title="Estocástico Sobrecomprado")
stoch_oversold = input(20, title="Estocástico Sobrevendido")

// Definir niveles de stop-loss y take-profit con ratio 2:1
risk = input(1, title="Riesgo en ATR")
reward_ratio = input(2, title="Ratio Riesgo/Beneficio")
atr_length = input(14, title="Periodo del ATR")
atr = ta.atr(atr_length)
stop_loss = risk * atr
take_profit = reward_ratio * stop_loss

// Señal de compra
long_condition = ta.crossover(fast_ma, slow_ma) and rsi < rsi_overbought and stoch_k < stoch_overbought
if (long_condition)
    strategy.entry("Compra", strategy.long)

// Señal de venta
short_condition = ta.crossunder(fast_ma, slow_ma) and rsi > rsi_oversold and stoch_k > stoch_oversold
if (short_condition)
    strategy.entry("Venta", strategy.short)

// Configurar Stop-Loss y Take-Profit para posiciones largas
if (strategy.position_size > 0)
    strategy.exit("Take Profit/Stop Loss", from_entry="Compra", stop=low - stop_loss, limit=high + take_profit)

// Configurar Stop-Loss y Take-Profit para posiciones cortas
if (strategy.position_size < 0)
    strategy.exit("Take Profit/Stop Loss", from_entry="Venta", stop=high + stop_loss, limit=low - take_profit)

// Plotear las medias móviles en el gráfico
plot(fast_ma, title="Media Rápida (50)", color=color.blue)
plot(slow_ma, title="Media Lenta (200)", color=color.red)

// Plotear RSI y Estocástico en subgráficos
hline(rsi_overbought, "RSI Sobrecomprado", color=color.red)
hline(rsi_oversold, "RSI Sobrevendido", color=color.green)
plot(rsi, title="RSI", color=color.orange, linewidth=2)
hline(stoch_overbought, "Estocástico Sobrecomprado", color=color.red)
hline(stoch_oversold, "Estocástico Sobrevendido", color=color.green)
plot(stoch_k, title="Estocástico K", color=color.purple, linewidth=2)
plot(stoch_d, title="Estocástico D", color=color.purple, linewidth=1, style=plot.style_stepline)