Les ressources ont été chargées... Je charge...

Acheter une stratégie à faible volatilité VS acheter une stratégie à forte volatilité

Auteur:ChaoZhang est là., Date: 2024-01-08 11h33:58
Les étiquettes:

img

Résumé

Cette stratégie vise à étudier la différence entre l'achat d'actifs lorsque la volatilité est faible et lorsqu'elle est élevée.

La logique de la stratégie

Cette stratégie détermine la volatilité en calculant l'ATR et sa SMA. Plus précisément, elle calcule la SMA de l'ATR, puis calcule le rapport entre l'ATR et sa SMA. Si ce ratio est supérieur au seuil de volatilité défini par l'utilisateurTargetRatio, la volatilité est considérée comme élevée. Si elle est inférieure au seuil, la volatilité est considérée comme faible.

En fonction du mode choisi par l'utilisateur, la stratégie génère des signaux d'achat lorsque la volatilité est élevée ou faible. Une fois achetée, la stratégie se tiendra pendant un certain nombre de barres définies par sellAfterNBarsLength, puis ferme la position.

Analyse des avantages

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

  1. Peut comparer intuitivement les performances des stratégies d'achat pendant les périodes de volatilité faible et élevée.
  2. Utiliser SMA pour lisser l'ATR peut filtrer les fausses éruptions.
  3. Peut tester différents niveaux de volatilité en réglant les paramètres.

Analyse des risques

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

  1. Peut manquer des opportunités de tendance haussière des prix si vous achetez seulement à faible volatilité.
  2. Il est possible d'augmenter le risque systémique en achetant uniquement des produits à forte volatilité.
  3. Des paramètres mal réglés peuvent entraîner une perte d'opportunités d'achat ou une clôture prématurée des positions.

Les risques susmentionnés peuvent être atténués en ajustant les paramètres et en combinant des achats de différents niveaux de volatilité.

Directions d'optimisation

Cette stratégie peut être encore optimisée par:

  1. Je teste différents paramètres de longueur ATR.
  2. Ajouter des stratégies de stop loss.
  3. Combiner d'autres indicateurs pour filtrer les fausses éruptions.
  4. Optimisation des critères d'entrée et de sortie.

Conclusion

Cette stratégie peut comparer efficacement les performances des stratégies d'achat à faible volatilité et à forte volatilité. Elle utilise le SMA pour lisser l'ATR et génère des signaux de trading basés sur les niveaux de volatilité.


/*backtest
start: 2023-01-01 00:00:00
end: 2024-01-07 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/
// © I11L

//@version=5
strategy("I11L - Better Buy Low Volatility or High Volatility?", overlay=false)

mode = input.string("Buy low Volatility",options = ["Buy low Volatility","Buy high Volatility"])
volatilityTargetRatio = input.float(1,minval = 0, maxval = 100,step=0.1, tooltip="1 equals the average atr for the security, a lower value means that the volatility is lower")
atrLength = input.int(14)

atr = ta.atr(atrLength) / close
avg_atr = ta.sma(atr,atrLength*5)
ratio = atr / avg_atr

sellAfterNBarsLength = input.int(5, step=5, minval=0)


var holdingBarsCounter = 0

if(strategy.opentrades > 0)
    holdingBarsCounter := holdingBarsCounter + 1


isBuy = false

if(mode == "Buy low Volatility")
    isBuy := ratio < volatilityTargetRatio
else
    isBuy := ratio > volatilityTargetRatio

isClose = holdingBarsCounter > sellAfterNBarsLength



if(isBuy)
    strategy.entry("Buy",strategy.long)

if(isClose)
    holdingBarsCounter := 0
    strategy.exit("Close",limit=close)

plot(ratio, color=isBuy[1] ? color.green : isClose[1] ? color.red : color.white)
plot(1, color=color.white)



Plus de