Stratégie de trading MCL-YG Volatility Breakout


Date de création: 2023-11-14 13:49:12 Dernière modification: 2023-11-14 13:49:12
Copier: 0 Nombre de clics: 673
1
Suivre
1617
Abonnés

Stratégie de trading MCL-YG Volatility Breakout

Aperçu

La stratégie utilise une rupture de la courbe de Brin pour détecter les signaux de négociation, permettant une paire de négociation sur deux actifs positifs liés, MCL et YG. Lorsque le prix de la MCL touche la courbe de Brin en haut, faites plus de MCL et faites plus de YG; lorsque le prix de la MCL touche la courbe de Brin en bas, faites plus de MCL et faites plus de YG, pour réaliser une négociation en cours sur la tendance des prix.

Principe de stratégie

Tout d’abord, la stratégie calcule la moyenne SMA et le décalage StdDev sur la base du prix de clôture sur une période donnée. Ensuite, un décalage est ajouté au-dessus et en dessous de la moyenne SMA, formant ainsi une trajectoire supérieure et une trajectoire inférieure de la ceinture de Brin.

Cette stratégie utilise la méthode de négociation de rupture de la bande de blur, c’est-à-dire que le prix est plus élevé lors de la rupture et vide lors de la rupture. La bande de blur ajuste dynamiquement la largeur du canal pour s’adapter aux changements du marché et peut filtrer efficacement le bruit des fluctuations du marché. Contrairement au canal fixe, la largeur du canal de la bande de blur s’élargit ou se rétrécit avec les changements de la volatilité du marché.

Lorsqu’un MCL est en hausse, il indique que le prix du MCL est en tendance à la hausse, ce qui signifie qu’il fait plus de MCL tout en faisant moins de YG, c’est-à-dire en achetant des actifs plus forts et en vendant des actifs plus faibles pour profiter de l’élargissement de la différence de prix des deux actifs.

Avantages stratégiques

  1. Des transactions de rupture basées sur les ceintures de bling peuvent filtrer efficacement le bruit du marché et identifier les tendances
  2. La mise en place d’une paire d’actifs pertinents permet d’obtenir des gains alpha positifs sur la différence de prix des actifs pertinents
  3. Adaptation dynamique de la taille des positions afin de maîtriser efficacement le risque de chaque transaction
  4. Logique d’entrée de rupture et de sortie d’axe de régression standard, logique de stratégie simple et claire

Risque stratégique

  1. Une mauvaise configuration des paramètres de la bande de Bryn peut entraîner une fréquence de transaction trop élevée ou un signal obscur
  2. Une diminution de la corrélation entre les actifs concernés entraînerait une baisse des gains des paires de transactions alpha
  3. Les transactions de rupture sont facilement trompées par de fausses ruptures de marchés volatiles, ce qui entraîne des pertes.
  4. Les pertes individuelles pourraient s’étendre

Le risque peut être réduit par des méthodes telles que l’optimisation des paramètres, la sélection de transactions plus pertinentes et plus liquides, et la définition d’une position de stop-loss raisonnable.

Optimisation de la stratégie

  1. Optimiser les paramètres de la bande de Bryn pour trouver la meilleure combinaison de paramètres
  2. Tester plus d’actifs pertinents comme objets de transaction et choisir des combinaisons plus pertinentes
  3. Augmentation de la logique de stop-loss pour limiter les pertes individuelles
  4. Ajouter plus de conditions de filtrage pour éviter d’être trompé par de faux piratages
  5. La confirmation de la transaction, combinée à d’autres indicateurs tels que le volume de transactions, est utilisée pour le changement de position dans le marché.

Résumer

Cette stratégie est globalement simple et directe, elle capte la tendance via la courbe de Bryn et obtient des gains alpha de la paire. Cependant, il existe des espaces d’optimisation tels que l’optimisation des paramètres, l’arrêt des pertes et la sélection de la paire.

Code source de la stratégie
/*backtest
start: 2022-11-07 00:00:00
end: 2023-11-13 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/
// © shark792

//@version=5

// 1. Define strategy settings
strategy(title="MCL-YG Pair Trading Strategy", overlay=true,
     pyramiding=0, initial_capital=10000,
     commission_type=strategy.commission.cash_per_order,
     commission_value=4, slippage=2)

smaLength = input.int(title="SMA Length", defval=20)
stdLength = input.int(title="StdDev Length", defval=20)

ubOffset = input.float(title="Upper Band Offset", defval=1, step=0.5)
lbOffset = input.float(title="Lower Band Offset", defval=1, step=0.5)

usePosSize = input.bool(title="Use Position Sizing?", defval=true)
riskPerc   = input.float(title="Risk %", defval=0.5, step=0.25)


// 2. Calculate strategy values
smaValue = ta.sma(close, smaLength)
stdDev   = ta.stdev(close, stdLength)

upperBand = smaValue + (stdDev * ubOffset)
lowerBand = smaValue - (stdDev * lbOffset)

riskEquity  = (riskPerc / 100) * strategy.equity
atrCurrency = (ta.atr(20) * syminfo.pointvalue)
posSize     = usePosSize ? math.floor(riskEquity / atrCurrency) : 1


// 3. Output strategy data
plot(series=smaValue, title="SMA", color=color.teal)

plot(series=upperBand, title="UB", color=color.green,
     linewidth=2)
plot(series=lowerBand, title="LB", color=color.red,
     linewidth=2)


// 4. Determine long trading conditions
enterLong = ta.crossover(close, upperBand)
exitLong  = ta.crossunder(close, smaValue)


// 5. Code short trading conditions
enterShort = ta.crossunder(close, lowerBand)
exitShort  = ta.crossover(close, smaValue)


// 6. Submit entry orders
if enterLong
    strategy.entry(id="EL", direction=strategy.long, qty=posSize)

if enterShort
    strategy.entry(id="ES", direction=strategy.short, qty=posSize)


// 7. Submit exit orders
strategy.close(id="EL", when=exitLong)
strategy.close(id="ES", when=exitShort)