Stratégie de tendance basée sur les produits dérivés

Auteur:ChaoZhang est là., Date: 2023-12-11 16h28 et 20h30
Les étiquettes:

img

Résumé

Cette stratégie utilise une combinaison de moyennes mobiles avec des périodes différentes pour établir des tendances et utilise des approximations dérivées de différence finie pour prédire d'éventuels renversements.

La logique de la stratégie

La stratégie utilise simultanément des moyennes mobiles simples de 20, 40 et 80 périodes. Lorsque le prix de clôture est supérieur à ces 3 moyennes mobiles, il est défini comme une tendance haussière; lorsque le prix de clôture est inférieur à ces 3 moyennes mobiles, il est défini comme une tendance baissière. La tendance n'est confirmée que lorsque le prix le plus bas est supérieur ou que le prix le plus élevé est inférieur à ces 3 moyennes mobiles.

Pour prédire les points d'inversion possibles, la stratégie utilise l'approximation de la dérivée de différence finie de la première dérivée de la moyenne mobile simple à 40 périodes.

Les règles de négociation spécifiques sont les suivantes:

  1. Lorsque la ligne rapide est au-dessus de la ligne du milieu et que la ligne du milieu est au-dessus de la ligne lente, et que la première dérivée est > 0, passez long;

  2. Lorsque la ligne rapide est en dessous de la ligne du milieu et que la ligne du milieu est en dessous de la ligne lente, et que la première dérivée est < 0, passez à la ligne courte;

  3. Fermer une position longue lorsque le premier dérivé <= 0;

  4. Fermer une position courte lorsque le premier dérivé >= 0.

Analyse des avantages

Les avantages de cette stratégie sont les suivants:

  1. L'utilisation de plusieurs moyennes mobiles pour déterminer les tendances rend le jugement des tendances plus fiable;

  2. La prédiction des points de renversement avec les produits dérivés permet un stop loss rapide et des retraits plus faibles;

  3. La logique est simple et facile à comprendre, adaptée aux débutants;

  4. Seules les inversions de trading après les tendances évitent d'être piégées et ont un taux de gain plus élevé.

Analyse des risques

Cette stratégie comporte également certains risques:

  1. La combinaison de moyennes mobiles peut donner des signaux erronés sur les marchés à fourchette;

  2. Les signaux de renversement des dérivés peuvent être retardés et ne peuvent pas éviter complètement les pertes;

  3. Un paramètre de stop-loss incorrect peut accroître les pertes.

Pour faire face à ces risques, nous pouvons optimiser les paramètres des moyennes mobiles, ajuster le stop loss, combiner avec d'autres indicateurs pour améliorer la stratégie.

Directions d'optimisation

La stratégie peut être optimisée dans les aspects suivants:

  1. Optimiser les périodes de moyennes mobiles pour mieux s'adapter aux différentes conditions du marché;

  2. Essayez différents types de moyennes mobiles, comme les EMA;

  3. Utiliser des indicateurs de volatilité pour définir des arrêts dynamiques;

  4. Combiner d'autres indicateurs de confirmation pour éviter les faux signaux.

Conclusion

Cette stratégie de combinaison de tendance de moyenne mobile utilise plusieurs moyennes mobiles pour déterminer la direction de la tendance et des dérivés pour prédire les renversements, ce qui peut contrôler efficacement les risques et convient au trading à moyen terme.


/*backtest
start: 2022-12-04 00:00:00
end: 2023-12-10 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=3
strategy("Big 3",overlay=true, default_qty_type=strategy.percent_of_equity)
 
// enter on Arrows
// take profit on touch with 80 SMA, gray, or at discretion
 
fast = sma(close,20)
mid = sma(close,40)
slow = sma(close,80)
 
plot(fast,linewidth=1)
plot(mid,linewidth=2)
plot(slow,linewidth=4)
 
isUptrend = close > fast and close > mid and close > slow
isDowntrend = close < fast and close < mid and close < slow
 
confirmed = (low > fast and low > mid and low > slow) or (high < fast and high < mid and high < slow)
deriv = 3 * mid[0] - 4 * mid[1] + mid[2]

stableUptrend = (fast > mid) and (mid > slow) and (deriv > 0)
stableDowntrend = (fast < mid) and (mid < slow) and (deriv < 0)
 
barcolor(isUptrend ? green : isDowntrend ? red : gray)
plotshape(not confirmed[1] and confirmed and isUptrend ? close : na,style=shape.arrowup,location=location.belowbar,color=green)
plotshape(not confirmed[1] and confirmed and isDowntrend ? close : na,style=shape.arrowdown,location=location.abovebar,color=red)

stop = na
//stop = input(1000, "Stop")


strategy.entry("long", strategy.long, when=(stableUptrend), stop=stop)
strategy.close("long", when=(deriv <= 0))

strategy.entry("short", strategy.short, when=(stableDowntrend), stop=stop)
strategy.close("short", when=(deriv >= 0))





Plus de