Stratégie de négociation de renversement du ratio de volume

Auteur:ChaoZhang est là., Date: 12 janvier 2024
Les étiquettes:

img

Résumé

La stratégie d'inversion de volume (VR Reversal Strategy) est une stratégie d'inversion à court terme basée sur l'indicateur de volume. Elle évalue la participation des principaux acteurs au marché en calculant le rapport entre le volume et le volume moyen sur une période de temps pour générer des signaux de trading.

La logique de la stratégie

L'indicateur de base de la stratégie d'inversion de la VR est le ratio de volume (appelé VR en abrégé), qui représente le rapport entre le volume de négociation de la période en cours et le volume de négociation moyen sur une période donnée.

Le nombre d'unités d'alimentation doit être le même que le nombre total d'unités d'alimentation.

Lorsque N représente le paramètre Length, le volume de négociation du cycle en cours divisé par la moyenne mobile simple du volume de négociation sur le cycle Length.

Lorsque VR > seuil, il est considéré comme un signal de la participation des principaux acteurs.

La stratégie introduit également un indicateur de jugement directionnel auxiliaire dir. Il compare le prix de clôture du cycle actuel avec celui de N cycles auparavant.

Lorsque VR est supérieur au seuil spécifié, si dir=1, un signal d'achat est généré.

Les avantages

Le plus grand avantage de la stratégie d'inversion de VR est de saisir la chance d'un renversement soudain des prix.

D'autres avantages sont les suivants:

  • En utilisant l'indicateur de volume, le jugement sur les principaux acteurs est relativement fiable
  • Algoritme simple, facile à comprendre et à mettre en œuvre
  • Paramètres configurables flexibles, meilleure adaptabilité

Les risques

Bien que la stratégie d'inversion de la VR présente certains avantages, il y a encore des risques à noter:

  • En tant que stratégie à court terme, il y a un certain hasard avec une courbe de rendement fluctuante
  • L'indicateur VR peut ne pas déterminer avec précision les principaux acteurs
  • Les produits sous-jacents doivent être sélectionnés de manière appropriée.

En outre, il convient d'éviter de trop négocier, de définir un stop loss pour contrôler une seule perte, etc.

Suggestions d'optimisation

Il est possible d'optimiser davantage la stratégie d'inversion de la VR. Les principales suggestions sont les suivantes:

  • Combiner plus d'indicateurs pour le jugement afin d'éviter une défaillance de la VR
  • Ajouter la logique de stop-loss, peut se référer à l'indicateur ATR pour définir la plage de stop-loss
  • Optimiser les paramètres, en particulier le paramètre de longueur du cycle pour différents cycles et produits
  • Ajuster le seuil de RV positive et négative sur la base des résultats des backtests pour assurer la robustesse

Conclusion

La stratégie de trading de renversement VR est une stratégie quantitative à court terme simple et facile à mettre en œuvre. Elle capte les opportunités de renversement en capturant les signaux des principaux acteurs. La stratégie est particulièrement adaptée aux produits volatils avec un renversement évident, mais le contrôle des risques est également nécessaire. Une optimisation supplémentaire peut rendre la stratégie plus robuste et filtrer plus de faux signaux.


/*backtest
start: 2023-12-01 00:00:00
end: 2023-12-31 23:59:59
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4

strategy(title="Volume Ratio_30min", shorttitle="VR_30min")//,initial_capital=1000)

// User Input ------------------------------------------------------------------
len = input(20, title="Length", minval=1)
threshold  = input(3,step=0.05, title="閾値")

// Volume Caliculetion ---------------------------------------------------------
vol = volume
sma=sma(volume,len)
vrs = vol / sma

// Direction -------------------------------------------------------------------
dirtime=input(1,"direction picker # bars")
dir=if close/close[dirtime] > 1
    1
else
    -1

// Plot ------------------------------------------------------------------------
plot(vrs, title="VRS",  color=color.green, transp=0)
hline(1, title="baseline")
plot(threshold, color=color.white)

// ️⚠️⚠️Logic -----------------------------------------------------------------

long    = vrs > threshold  and dir == 1
short   = vrs > threshold  and dir ==-1

// Back Test Fnction -----------------------------------------------------------
start = timestamp(input(2019, "Start Year"), input(1, "Start Month"), input(1, "Start Day"), 0, 0)
end = timestamp(input(9999, "End Year"), input(1, "End Month"), input(1, "End Day"), 0, 0)
_testPeriod() => true

// Order -----------------------------------------------------------------------
if _testPeriod()
    if long
        strategy.entry("Long", strategy.long)
    if short
        strategy.entry("Short", strategy.short)


Plus de