CT TTM Stratégie de négociation quantitative basée sur la contrainte

Auteur:ChaoZhang est là., Date: 2023-11-15 16h06:37 Je vous en prie
Les étiquettes:

img

Résumé

Cette stratégie utilise l'indicateur CT TTM Squeeze pour identifier les tendances des prix et applique des trailing stops pour contrôler les risques.

La logique de la stratégie

La stratégie utilise l'indicateur CT TTM Squeeze pour déterminer les tendances des prix.

  • e1 - point médian de la bande médiane
  • osc - oscillateur calculé à partir de la différence entre le prix de clôture et e1 sur une période régressée linéairement
  • Différence entre les bandes de Bollinger et les canaux de Keltner
  • osc_color - désigner les couleurs de l'oscillateur
  • mid_color - désigne les différentes couleurs

Si osc dépasse 0, il s'affiche en vert, indiquant long; si osc dépasse 0, il s'affiche en rouge, indiquant court.

Quand l'OSC est positif, allez long; quand l'OSC est négatif, allez court.

La stratégie utilise l'oscillateur OSC pour déterminer la direction de la tendance et diff pour mesurer l'élan long/courte. Lorsque l'osc traverse au-dessus de 0, il signale une tendance haussière, donc long. Lorsque l'osc traverse au-dessous de 0, il signale une tendance baissière, donc court.

Analyse des avantages

La stratégie présente les avantages suivants:

  1. L'utilisation de CT TTM Squeeze pour déterminer les tendances a une précision relativement élevée. CT TTM Squeeze considère de manière exhaustive les moyennes mobiles, les bandes de Bollinger et les canaux de Keltner, qui peuvent identifier efficacement les tendances des prix.

  2. L'application de l'oscillateur pour déterminer les signaux long/short évite les faux signaux dans les zones non tendance.

  3. La stratégie définit un stop loss en temps opportun après l'entrée, ce qui permet de verrouiller les bénéfices et d'éviter des pertes excessives.

  4. La stratégie a peu de paramètres et est facile à optimiser.

  5. Les fonctions de traçage affichent clairement les signaux. Différentes couleurs sont utilisées pour distinguer les signaux longs / courts et la force, présentant visuellement les jugements de tendance.

Analyse des risques

La stratégie comporte également les risques suivants:

  1. CT TTM Squeeze peut générer de faux signaux dans certaines conditions de marché, entraînant des pertes commerciales.

  2. La divergence dans l'oscillateur peut entraîner des signaux de trading erronés.

  3. Les arrêts de trailers trop agressifs peuvent entraîner des pertes inutiles.

  4. La stratégie est adaptée uniquement pour les produits fortement tendance, et non pour les marchés à fourchette.

  5. L'optimisation excessive peut entraîner un ajustement de la courbe.

Directions d'optimisation

La stratégie peut être optimisée dans les aspects suivants:

  1. Combinez plusieurs indicateurs pour une précision du signal. D'autres indicateurs comme MACD, KDJ peuvent être ajoutés pour optimiser les signaux d'entrée.

  2. Ajouter des modules d'optimisation de stop loss pour des arrêts plus intelligents.

  3. Optimiser la gestion de l'argent en testant les fractions fixes, la formule Kelly, etc. Cela peut améliorer l'efficacité de l'utilisation du capital tout en assurant le risque par transaction.

  4. L'ajustement des paramètres en fonction des caractéristiques du produit peut améliorer l'adéquation de la stratégie.

  5. Ajouter des algorithmes d'apprentissage automatique pour l'apprentissage adaptatif.

Conclusion

Cette stratégie utilise CT TTM Squeeze pour déterminer la direction de la tendance, l'oscillateur traversant 0 comme signaux d'entrée et les arrêts de trail pour gérer les risques. Ses avantages résident dans une grande précision, une optimisation facile, mais des risques comme l'échec de l'indicateur, des arrêts trop serrés existent. Des améliorations futures peuvent être apportées grâce à des combinaisons multi-indicateurs, à l'optimisation de l'arrêt, à la gestion de l'argent, etc. pour améliorer encore la performance.


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

//@version=2
strategy("CT TTM Squeeze") 
length = input(title="Length",  defval=20, minval=0) 
bband(length, mult) =>
	sma(close, length) + mult * stdev(close, length)
keltner(length, mult) =>
	ema(close, length) + mult * ema(tr, length)
	
	
// Variables
e1 = (highest(high, length) + lowest(low, length)) / 2 + sma(close, length)
osc = linreg(close - e1 / 2, length, 0)
diff = bband(length, 2) - keltner(length, 1)
osc_color = osc[1] < osc[0] ? osc[0] >= 0 ? #00ffff : #cc00cc : osc[0] >= 0 ? #009b9b : #ff9bff
mid_color = diff >= 0 ? green : red

// Strategy

long = osc > 0
short = osc < 0

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

if short
    strategy.entry("Short", strategy.short) 


plot(osc, color=osc_color, style=histogram, linewidth=2)
plot(0, color=mid_color, style=circles, linewidth=3)


Plus de