Stratégie CAT pour la fluctuation de l'inversion

Auteur:ChaoZhang est là., Date: 2024-02-19 14h29 et 51 min
Les étiquettes:

img

Résumé

La stratégie CAT de fluctuation inverse est une stratégie de trading quantitative basée sur des indicateurs techniques. Cette stratégie évalue la tendance du marché et les positions de support/résistance par le biais de MA, EMA et d'autres indicateurs, et combine des indicateurs personnalisés de cygne noir et de cygne blanc pour déterminer les fluctuations anormales, mettant ainsi en œuvre une stratégie de trading de tendance consistant à acheter à bas prix et à vendre à haut prix.

Principes de stratégie

La logique de base de la stratégie CAT de fluctuation inverse consiste à juger de la tendance globale à l'aide d'indicateurs techniques tels que MA et EMA, puis à saisir les opportunités de fluctuations anormales à l'aide d'indicateurs personnalisés de cygne noir et de cygne blanc.

  1. Utilisez des indicateurs tels que SMA et EMA pour déterminer la direction générale de la tendance. Par exemple, le franchissement de l'EMA144 au-dessus de l'EMA169 est considéré comme un signal haussier, et le franchissement de l'EMA144 au-dessous de l'EMA169 est considéré comme un signal baissier.

  2. Un indicateur de cygne noir personnalisé est défini comme (close - open) / close. Il reflète le degré de fluctuation anormale d'un chandelier. Lorsque l'indicateur de cygne noir dépasse le seuil (comme 0,0191) et que la fermeture est inférieure à l'ouverture, il indique une fluctuation anormale à la baisse qui présente une opportunité de raccourci.

  3. L'indicateur du cygne blanc est similaire à l'indicateur du cygne noir, qui reflète également le degré de fluctuation anormale d'un chandelier.

  4. Après avoir saisi les opportunités de fluctuations anormales, il attend les signaux de renversement d'indicateurs tels que l'EMA pour fermer des positions, obtenant ainsi des achats bas et des ventes élevés.

Cette stratégie combine l'utilisation de moyennes mobiles pour déterminer les tendances et des indicateurs personnalisés pour capturer les anomalies, ce qui implémente une stratégie quantitative typique de trading d'inversion.

Analyse des avantages

La stratégie CAT de fluctuation inverse présente les avantages suivants:

  1. Capturer les fluctuations anormales avec un taux de gain relativement élevé. Les indicateurs cygne noir et cygne blanc peuvent capturer efficacement les fluctuations de prix anormales. Ces fluctuations impliquent souvent des renversements, de sorte que le taux de gain du commerce est plus élevé.

  2. Les critères d'entrée et de sortie de cette stratégie sont très clairs, ce qui permet d'éviter les opérations aléatoires et émotionnelles des traders.

  3. Plusieurs paramètres et indicateurs pour l'optimisation et l'ajustement. tels que les paramètres de cycle de MA et EMA, les paramètres de seuil des indicateurs du cygne noir et du cygne blanc, etc., peuvent être optimisés et ajustés pour rendre la stratégie mieux adaptée à différents produits et environnements de négociation.

  4. Cette stratégie combine à la fois la tendance et l'inversion et peut être configurée pour différents cycles de temps pour une utilisation dans des scénarios de négociation à haute et à basse fréquence.

  5. Mesures de contrôle des risques relativement complètes. La stratégie adopte un pourcentage de capital pour la passation d'ordres et dispose également d'un mécanisme de stop loss pour contrôler efficacement les pertes d'une seule transaction.

Analyse des risques

La stratégie CAT de fluctuation inverse comporte également certains risques, principalement:

  1. Le risque d'optimisation des paramètres. La définition de paramètres tels que le cygne noir et le cygne blanc a un impact majeur sur la performance de la stratégie. Si les paramètres sont définis de manière incorrecte, cela réduira considérablement la rentabilité de la stratégie.

  2. Lorsque le marché présente une tendance unilatérale plus longue, cette stratégie peut entraîner certaines pertes consécutives et des retraits plus importants.

  3. Le risque de fausse rupture apparaît souvent dans la réalité à court terme. Si les paramètres sont trop sensibles, cela peut provoquer trop de transactions inutiles.

En réponse aux risques susmentionnés, les mesures suivantes peuvent être adoptées:

  1. Mettre en place un mécanisme d'optimisation des paramètres, utiliser les données historiques pour des tests et une optimisation rigoureux afin d'assurer des paramètres raisonnables.

  2. Définir un mécanisme d'arrêt des pertes. Un stop loss raisonnable peut contrôler efficacement les pertes d'un seul commerce et le retrait maximum.

  3. Évitez les paramètres trop sensibles en ajoutant certaines conditions de filtrage pour éviter les fausses interférences.

Directions d'optimisation

La stratégie CAT de fluctuation inverse a également beaucoup de marge d'optimisation.

  1. Améliorer encore les indicateurs du cygne noir et du cygne blanc en définissant différentes combinaisons de paramètres pour identifier les fluctuations anormales de manière plus précise et exhaustive.

  2. Augmenter les algorithmes d'apprentissage automatique, utiliser des réseaux de neurones ou des méthodes d'apprentissage ensemble pour optimiser automatiquement les configurations de paramètres afin que les paramètres de stratégie s'ajustent dynamiquement pour une meilleure adaptation aux changements du marché.

  3. Utiliser la technologie d'apprentissage en profondeur pour identifier les modèles de graphiques pour aider à juger des signaux d'inversion des prix et améliorer les performances de la stratégie.

  4. Ajouter un contrôle de logique floue sur la sensibilité des paramètres, maintenir les paramètres stables lorsque la tendance est évidente et augmenter la sensibilité des paramètres aux points d'inflexion lorsque la tendance s'inverse.

  5. Combiner les méthodes d'optimisation globale telles que les algorithmes génétiques sans paramètres et le recuit simulé afin d'obtenir une optimisation globale à plusieurs paramètres.

  6. Élargir les variétés de négociation, augmenter d'autres variétés telles que les actions et les crypto-monnaies pour l'arbitrage entre les marchés.

Grâce à l'optimisation systématique des modèles et des paramètres, la robustesse de la stratégie CAT de fluctuation inverse peut être encore améliorée, ce qui permet d'obtenir des résultats commerciaux supérieurs.

Conclusion

La stratégie CAT de fluctuation inverse combine des moyennes mobiles et des indicateurs personnalisés pour identifier efficacement les inversations du marché dans une stratégie de trading quantitative. Cette stratégie présente des avantages tels que la capture des fluctuations anormales, les règles d'entrée et de sortie par défaut et un grand espace d'optimisation. L'effet peut être encore amélioré grâce à l'optimisation des paramètres et des modèles. Des risques tels que le risque d'optimisation des paramètres, le risque de retrait et le risque de fausse rupture doivent être évités.


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

//@version=4


//适合1分钟-3分钟的k线,发生波动超过百分之二时,自动报警
strategy("BlackSwan strategy", overlay=true,
         initial_capital=10000, currency='USD', default_qty_type=strategy.percent_of_equity,
         default_qty_value=100, commission_type= strategy.commission.percent, commission_value=0.075,pyramiding=3)
//-------------------------------------------
//-------------------------------------------
timecondition =  timeframe.period =="480"  or timeframe.period =="240" or timeframe.period =="D"  or timeframe.period =="720"
// Make input options that configure backtest date range
startDate = input(title="Start Date", type=input.integer,
     defval=1, minval=1, maxval=31)
startMonth = input(title="Start Month", type=input.integer,
     defval=11, minval=1, maxval=12)
startYear = input(title="Start Year", type=input.integer,
     defval=2018, minval=1800, maxval=2100)
endDate = input(title="End Date", type=input.integer,
     defval=1, minval=1, maxval=31)
endMonth = input(title="End Month", type=input.integer,
     defval=11, minval=1, maxval=12)
endYear = input(title="End Year", type=input.integer,
     defval=2031, minval=1800, maxval=2100)
// Look if the close time of the current bar
// falls inside the date range
inDateRange = (time >= timestamp(syminfo.timezone, startYear,
         startMonth, startDate, 0, 0)) and
     (time < timestamp(syminfo.timezone, endYear, endMonth, endDate, 0, 0))
     
     

// Inputs
a = input(1,     title = "Key Vaule. 'This changes the sensitivity'")
c = input(10,    title = "ATR Period")
h = input(false, title = "Signals from Heikin Ashi Candles")


ma60 = sma(close,60)
ema144 = ema(close,144)

ema169 = ema(close,169)
ma20=sma(close,20)

     
plot(ema144,color=color.yellow, title="144")
plot(ema169,color=color.orange, title="169")

    
heitiane=(close-open)
heitiane:=abs(heitiane)
heitiane:=heitiane/close

if (inDateRange and  heitiane >0.0191 and close<open) //  and close>f3
    strategy.entry("botsell20", strategy.short, comment = "黑天鹅追空"+tostring(heitiane))

if(crossover(ema144,ema169))
    strategy.close("botsell20", comment = "平空")
if (inDateRange and  heitiane >0.0191 and close>open) //  and close>f3
    strategy.entry("botbuy20", strategy.long, comment = "白天鹅追多"+tostring(heitiane))

if(crossunder(ema144,ema169))
    strategy.close("botbuy20", comment = "平多")
  


Plus de