Stratégie de rupture de l'oscillation dynamique

Auteur:ChaoZhang est là., Date: 2023-11-16 15h40 et 25h
Les étiquettes:

img

Résumé

Cette stratégie adopte une rupture dynamique des canaux d'oscillation pour déterminer les points d'entrée et d'arrêt de perte basés sur le mouvement des prix.

La logique de la stratégie

La stratégie calcule d'abord le plus haut et le plus bas des 20 derniers jours pour obtenir un canal d'oscillation dynamique. Ensuite, elle calcule les moyennes mobiles exponentielles de 8 jours et 32 jours. Lorsque le prix de clôture franchit la bande supérieure du canal et que l'EMA de 8 jours est au-dessus de l'EMA de 32 jours, il va long. Lorsque le prix franchit la bande inférieure ou que l'EMA de 8 jours franchit l'EMA de 32 jours, il sort. Le stop loss est défini en dessous de la bande moyenne du canal.

Les conditions d'entrée sont les suivantes:

  1. Le prix de clôture franchit la bande supérieure dynamique formée par le plus haut niveau des 20 derniers jours.

  2. L'EMA à 8 jours est supérieure à l'EMA à 32 jours.

Les conditions de sortie sont les suivantes:

  1. Stop loss déclenché lorsque le prix tombe en dessous de la bande moyenne.

  2. L'EMA à 8 jours passe sous l'EMA à 32 jours.

La stratégie identifie la direction de la tendance en utilisant le canal dynamique et l'état actuel de la tendance haussière en utilisant le croisement EMA.

Les avantages

  • La rupture dynamique du canal identifie efficacement la direction de la tendance, évitant les échecs.
  • Les filtres croisés EMA à 8 et 32 jours se négocient bien.
  • Des règles simples et claires, faciles à comprendre.
  • Mécanisme de stop loss raisonnable.

Les risques

  • Une évasion peut entraîner des pertes.
  • Un réglage inapproprié des paramètres de la plage de canaux peut entraîner sa trop large ou trop étroite.
  • Les périodes EMA incorrectes peuvent avoir une incidence sur les performances.
  • Un stop-loss trop serré peut entraîner des arrêts excessifs.

Les risques peuvent être gérés en optimisant la période de canal, les périodes EMA et le positionnement stop loss.

Les domaines d'amélioration

  • Optimiser la période de diffusion pour les différents stocks.
  • Testez différentes combinaisons d'EMA pour trouver les périodes optimales.
  • Incorporer le volume pour confirmer les fuites.
  • Arrêtez la trace après l'entrée.

Résumé

La stratégie de rupture de l'oscillation dynamique a une logique claire pour identifier la tendance et entrer en fonction de la rupture du canal et du croisement de l'EMA. Le stop loss aide à contrôler le risque.


/*backtest
start: 2022-11-09 00:00:00
end: 2023-11-15 00:00:00
period: 1d
basePeriod: 1h
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/
// © Robrecht99

//@version=5
strategy("My Strategy", overlay=true, margin_long=100, margin_short=100)

fast = ta.sma(close, 8)
slow = ta.sma(close, 32)

plot(fast, color=color.red)
plot(slow, color=color.navy)

entrycondition1 = ta.crossover(fast, slow)
entrycondition2 = fast > slow
sellcondition1 = ta.crossunder(fast, slow)
sellcondition2 = slow > fast

atr = ta.atr(14)

//Donchian Channels
days = 20
h1 = ta.highest(high[1], days)
l1 = ta.lowest(low[1], days)
mid = math.avg(h1, l1)
plot(mid, "channel", color=#FF6D00)
u = plot(h1, "Upper", color=#2962FF)
l = plot(l1, "Lower", color=#2962FF)
fill(u, l, color.new(color.blue, 90))

if (close > h1 and entrycondition2)
    strategy.entry("long", strategy.long)
    stoploss = close - atr * 3
    trail = close - atr * 3
    strategy.exit("exit", "long", stop=stoploss, trail_offset=trail)
if (sellcondition1 and sellcondition2)
    strategy.close(id="long")


Plus de