Stratégie de swing de distribution extrême

Auteur:ChaoZhang est là., Date: 2023-11-13 17h03:08 Je suis désolé
Les étiquettes:

img

Cette stratégie vise à détecter les extrêmes de l'oscillateur de momentum de Chande en utilisant la détection de la distribution extrême sur des délais de 1 minute principalement pour le Bitcoin et les crypto-monnaies.

Après des recherches approfondies sur l'oscillateur de dynamique de Chande, j'ai décidé de créer une stratégie qui utilise les niveaux de percentiles de distribution normale pour sniper les entrées. Cela peut à son tour créer de bons profits sur des jours consécutifs sur le laps de temps de 1 minute, l'objectif final étant d'obtenir une version plus forte de cette stratégie fonctionnant sur un bot et d'imprimer de l'argent.

La stratégie vérifie si la valeur de Chande est dans un pourcentage extrême basé sur les dernières centaines de valeurs de Chande - si c'est le cas, elle ouvrira une position.

Aucun stop loss ou profit n'est encore mis en œuvre dans le swing, mais ce sera le prochain ajout pour vraiment minimiser les pertes et amplifier les bénéfices potentiels.

Toute paire de crypto liquide sur les délais inférieurs obtiendra un bon résultat avec cette stratégie.

Nous avons également une stratégie gratuite de 15M et 1H disponible.

La logique de la stratégie

La stratégie calcule d'abord l'oscillateur de dynamique de Chande, qui est basé sur la variation entre la clôture de la période en cours et la clôture de la période précédente.

Il enregistre ensuite les valeurs de Chande sur une certaine période de rétrospective (périodes 425 par défaut) et calcule les différents niveaux de percentile. Lorsque la valeur de Chande actuelle atteint un percentile extrême prédéfini (par défaut 1% pour acheter, 99% pour vendre), il déclenche un signal d'entrée long / court. Les signaux de sortie sont déclenchés lorsque la valeur de Chande atteint les niveaux de percentile normaux (par défaut 97,5% et 2,5%).

De cette façon, la stratégie peut capturer les ruptures extrêmes de la valeur de Chande, lui permettant de capter les mouvements soudains de tendance.

Analyse des avantages

  • Capture les explosions de marché rapidement en utilisant l'élan de l'indicateur Chande
  • Faible risque de tirage avec détection extrême de la distribution normale
  • Paramètres flexibles adaptés à différents régimes de marché
  • Logic de stratégie simple et intuitif, facile à comprendre et à mettre en œuvre

Analyse des risques

  • Chande sujette à de faux signaux en tant qu'indicateur de momentum sensible au bruit à court terme
  • Périodes de prélèvement longues avec négociation à valeur extrême, faible fréquence de négociation intradienne
  • Risque de perte de fluctuations sans objectif stop loss/profit
  • Risque de sur-optimisation avec réglage incorrect des paramètres

La gestion des risques doit se concentrer sur l'utilisation d'arrêts, la normalisation des paramètres extrêmes et le filtrage des signaux avec la tendance.

Directions d'optimisation

La stratégie peut être optimisée sous plusieurs aspects:

  1. Ajouter le stop loss/profit taking pour contrôler les pertes par transaction à des niveaux raisonnables.

  2. Optimiser les paramètres en ajustant les rétrospectives courtes/longues pour différents marchés.

  3. Ajouter des conditions de filtrage avec des indicateurs de tendance comme MA pour éliminer les faux signaux contre la tendance globale.

  4. Combiner plusieurs délais, en utilisant un TF plus élevé pour mesurer la direction de la tendance et un TF inférieur pour l'entrée.

  5. Testez la robustesse des paramètres sur différents produits, ajustez pour plus de variétés.

  6. Introduire l'apprentissage automatique pour optimiser dynamiquement les paramètres et les filtres.

Conclusion

Dans l'ensemble, il s'agit d'une stratégie utilisant des valeurs extrêmes de l'oscillateur de momentum de Chande pour capturer les mouvements de tendance. Sa logique simple et son exécution efficace le rendent très approprié pour capitaliser rapidement sur les tendances d'éclatement.


/*backtest
start: 2023-10-13 00:00:00
end: 2023-11-12 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
strategy("Chande Minute Swinger", overlay=true)

//Chande

length = input(9, minval=1)
src = close
momm = change(src)
f1(m) => m >= 0.0 ? m : 0.0
f2(m) => m >= 0.0 ? 0.0 : -m
m1 = f1(momm)
m2 = f2(momm)
sm1 = sum(m1, length)
sm2 = sum(m2, length)
percent(nom, div) => 100 * nom / div
chandeMO = percent(sm1-sm2, sm1+sm2)

//Parameters to change

lengthLookback = 425 //425 golden number
buyPercentile = 1
sellPercentile = 99
linePercentileLow = 2.5
linePercentileHigh = 97.5

buy = percentile_nearest_rank(chandeMO, lengthLookback, buyPercentile)
exitBuy= percentile_nearest_rank(chandeMO, lengthLookback, linePercentileHigh)
sell = percentile_nearest_rank(chandeMO, lengthLookback, sellPercentile)
exitSell = percentile_nearest_rank(chandeMO, lengthLookback, linePercentileLow)

chandeMA = sma(chandeMO, 9) //sma for potential other strategies implementing cross / trend

//Entry conditions

closeLongCondition = chandeMO > exitBuy ? true : false
closeShortCondition = chandeMO < exitSell ? true : false
longCondition = chandeMO < buy
shortCondition = chandeMO > sell

if (longCondition)
    strategy.entry("long", strategy.long)
    

if (shortCondition)
    strategy.entry("short", strategy.short)
    
//Introducing the closes and a stoploss will minimise loss and bring up the sharpe ratio
//Current settings are enabled for maximum potential but big risk
    
//strategy.close("long", when=(closeLongCondition == true))
//strategy.close("short", when=(closeShortCondition == true))

Plus de