Oscillateur stochastique et stratégie de moyenne mobile

STOCH MA SL
Date de création: 2024-04-30 16:45:30 Dernière modification: 2024-04-30 16:45:30
Copier: 1 Nombre de clics: 642
1
Suivre
1617
Abonnés

Oscillateur stochastique et stratégie de moyenne mobile

Aperçu

Cette stratégie combine un oscillateur stochastique aléatoire et une moyenne mobile pour juger de l’état d’un marché en survente et en survente, et pour déterminer la direction de la transaction en fonction de la direction de la tendance de la moyenne mobile. La stratégie ouvre une position en position multiple lorsque l’indicateur oscillateur aléatoire croise vers le haut dans la zone de survente et que la moyenne mobile est en tendance à la hausse. La stratégie ouvre une position en position vide lorsque l’indicateur oscillateur aléatoire croise vers le bas dans la zone de survente et que la moyenne mobile est en tendance à la baisse.

Principe de stratégie

  1. Calculer les valeurs K et D de l’indicateur d’oscillation aléatoire, où K est la position du prix par rapport au plus haut et au plus bas, et D est la moyenne mobile des valeurs de K.
  2. Calculer la moyenne mobile d’une période donnée.
  3. Les conditions d’entrée sont les suivantes: ouverture d’une position de plus-value lorsque la valeur de K a traversé le niveau de survente de bas en haut et que la moyenne mobile est en hausse; ouverture d’une position de vide lorsque la valeur de K a traversé le niveau de survente de haut en bas et que la moyenne mobile est en baisse.
  4. Conditions de sortie: lorsque la valeur de K est croisée avec la moyenne mobile et que la moyenne mobile change de direction, la position est nulle.
  5. Le système de gestion des risques est basé sur le système de gestion des risques.

Analyse des avantages

  1. La combinaison d’indicateurs aléatoires de choc et de moyennes mobiles permet de mieux saisir les tendances du marché et les situations de survente et de survente.
  2. Les moyennes mobiles sont utilisées pour filtrer les signaux de transactions et améliorer la qualité des transactions.
  3. La mise en place d’un arrêt de perte et la maîtrise des risques.
  4. La structure du code est claire, facile à comprendre et à modifier.

Analyse des risques

  1. L’indicateur de choc aléatoire et la moyenne mobile sont des indicateurs en retard, ce qui peut entraîner un retard de signal.
  2. Cette stratégie peut entraîner des transactions fréquentes et entraîner des coûts de transaction élevés dans les marchés en crise.
  3. Le taux de stop-loss fixe peut ne pas s’adapter aux différentes conditions du marché et doit être ajusté en fonction de la volatilité du marché.

Direction d’optimisation

  1. L’introduction d’autres indicateurs techniques, tels que le MACD, le RSI, etc., peut être envisagée pour améliorer la fiabilité du signal.
  2. Pour le stop loss, il est possible d’utiliser un stop loss dynamique ou un stop loss basé sur l’ATR (Average True Range) afin de mieux s’adapter aux changements du marché.
  3. Les paramètres de l’indicateur de choc aléatoire et des moyennes mobiles peuvent être ajustés dynamiquement en fonction des tendances et de la volatilité du marché pour optimiser la performance de la stratégie.
  4. Introduction de la gestion des positions, qui modifie dynamiquement la taille des positions en fonction des conditions du marché et du risque du compte.

Résumer

La stratégie utilise la direction de la tendance des moyennes mobiles pour filtrer les signaux de négociation et régler les arrêts de perte pour contrôler les risques en combinant des indicateurs de choc aléatoires et des moyennes mobiles, tout en capturant les conditions de survente et de survente du marché. L’idée de la stratégie est claire, facile à comprendre et à mettre en œuvre. Cependant, la stratégie présente également certaines limites, telles que le retard des indicateurs, la fréquence des transactions, etc.

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

// This Pine Script™ code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © Pablo_2uc

//@version=5
strategy("Estrategia Stoch + MA c/ SL", overlay=true)

// Parámetros del Estocástico
length = input.int(14, title="Longitud Estocástico")
smoothK = input.int(3, title="Suavizado K")
smoothD = input.int(3, title="Suavizado D")
oversold = input.int(20, title="Sobreventa")
overbought = input.int(80, title="Sobrecompra")

// Parámetros de la Media Móvil
maLength = input.int(9, title="Longitud MA")
maSource = input(close, title="Fuente MA")

// Capital inicial
capital = 500

// Tamaño de posición (10% del capital)
positionSize = 1

// Stop Loss (2% del precio de entrada)
stopLossPercent = input.int(2, title="Stop Loss (%)") / 100

// Cálculo del Estocástico
k = ta.sma(ta.stoch(close, high, low, length), smoothK)
d = ta.sma(k, smoothD)

// Cálculo de la Media Móvil
ma = ta.sma(maSource, maLength)

// Condiciones de entrada en largo y corto
longCondition = ta.crossunder(k, oversold) and ma > ma[1]
shortCondition = ta.crossover(k, overbought) and ma < ma[1]

// Condiciones de salida
exitLongCondition = ta.crossover(k, ma) and ma < ma[1]
exitShortCondition = ta.crossunder(k, ma) and ma > ma[1]

// Estrategia
if (longCondition)
    strategy.entry("Long", strategy.long, qty=positionSize)
    strategy.exit("Exit Long", "Long", stop=close * (1 - stopLossPercent))
if (shortCondition)
    strategy.entry("Short", strategy.short, qty=positionSize)
    strategy.exit("Exit Short", "Short", stop=close * (1 + stopLossPercent))

// Cierre de posiciones
if (exitLongCondition)
    strategy.close("Long")
if (exitShortCondition)
    strategy.close("Short")