Stratégie de négociation quantitative basée sur les indicateurs de risque

Auteur:ChaoZhang est là., Date: 2023-12-06 17:17:16 La date est fixée à
Les étiquettes:

img

Résumé

La stratégie s'appelle Dual Timeframe RSI Reversal. C'est une stratégie de trading quantitative basée sur l'indice de force relative (RSI). La stratégie utilise deux RSI avec des périodes différentes pour générer des signaux d'achat et de vente, visant à acheter bas et vendre haut en saisissant les opportunités d'inversion de prix.

La logique de la stratégie

La stratégie construit des signaux de trading en comparant un RSI de période rapide (défaut 55 jours) et un RSI de période lente (défaut 126 jours). Lorsque le RSI rapide franchit le niveau du RSI lent, un signal d'achat est généré. Lorsque le RSI rapide tombe en dessous du RSI lent, un signal de vente est déclenché. En comparant la force relative entre deux délais différents, il détecte les opportunités lorsque les tendances à court et à long terme s'inversent.

Après avoir entré une position, l'objectif de profit et le stop loss seront définis. L'objectif de profit par défaut est de 0,9 fois le prix d'entrée. Le stop loss par défaut est de 3% inférieur au prix d'entrée. Les positions seront également fermées si un signal inverse est déclenché.

Les avantages

  • Identifier les renversements de prix à court terme en comparant les deux ISR
  • Filtrer les faux signaux en utilisant la confirmation double
  • Limite de perte sur un pari unique avec stop loss

Les risques

  • Signaux inversés fréquents lors d'une forte volatilité
  • Stop-loss trop serré, facilement éliminé par de petites fluctuations
  • Manque d'inversions majeures avec des paramètres mal configurés

Amélioration

  • Testez plus de combinaisons de paramètres RSI pour trouver l'optimum
  • Ajouter d'autres indicateurs pour filtrer les faux signaux
  • Ratio stop-loss et profit-take dynamique pour une meilleure rentabilité

Résumé

La stratégie Dual Timeframe RSI Reversal génère des signaux de trading en comparant les croisements entre les périodes de RSI rapides et lentes. Elle vise à capturer les inversions de prix à court terme. Les règles de profit et de stop-loss sont définies pour limiter les risques.


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

//@version=2
strategy(title="Relative Strength Index", shorttitle="RSI")
slen    = input(55, title="Short length")
llen    = input(126, title="Long length")
sup     = ema(max(change(close), 0), slen)
sdown   = ema(-min(change(close), 0), slen)
rsi1    = sdown == 0 ? 100 : sup == 0 ? 0 : 100 - (100 / (1 + sup / sdown))
lup     = ema(max(change(close), 0), llen)
ldown   = ema(-min(change(close), 0), llen)
rsi2    = ldown == 0 ? 100 : lup == 0 ? 0 : 100 - (100 / (1 + lup / ldown))
ob      = input(55, title="Overbought")
os      = input(45, title="Oversold")
tp      = input(.9, title="Take profit level %")*.01
sl      = input(3, title="Stoploss level %")*.01
mid     = avg(ob,os)
plot    (mid, color=#4f4f4f, transp=0)
hline   (ob, color=#4f4f4f)
hline   (os, color=#4f4f4f)
long    = crossover(rsi1,rsi2)
short   = crossunder(rsi1,rsi2)
vall    = valuewhen(long,close,0)
lexit1  = high>=(vall*tp)+vall
lexit2  = low<=vall-(vall*sl)
vals    = valuewhen(short,close,0)
sexit1  = low<=vals - (vals*tp)
sexit2  = high>=vals + (vals*sl)
bgcolor (color=long?lime:na,transp=50)
bgcolor (color=short?red:na, transp=50)
strategy.entry("Long", strategy.long, when=long)
strategy.close("Long", when=lexit1)
strategy.close("Long", when=lexit2)
strategy.close("Long", when=short)
strategy.entry("Short", strategy.short, when=short)
strategy.close("Short", when=sexit1)
strategy.close("Short", when=sexit2)
strategy.close("Short", when=long)
plot    (rsi1, color=orange, transp=0,linewidth=1, title="Short period RSI")
plot    (rsi2, color=aqua  , transp=0,linewidth=1, title="Long period RSI")


Plus de