Les ressources ont été chargées... Je charge...

Évasion de Bollinger adaptative avec système de stratégie quantitative de moyenne mobile

Auteur:ChaoZhang est là., Date: 2024-11-27 15:55:28 Je suis désolé
Les étiquettes:BB- Je vous en prie.SMA

img

Résumé

Cette stratégie est un système de trading quantitatif qui combine la rupture des bandes de Bollinger avec les tendances de moyenne mobile. Le système capte automatiquement les opportunités de marché en surveillant les relations de prix avec les bandes de Bollinger tout en utilisant une moyenne mobile de 100 jours pour la confirmation de la tendance. Il implémente une dimensionnement dynamique des positions basé sur le capital du compte pour une gestion automatique des risques.

Principes de stratégie

La logique de base repose sur les éléments clés suivants:

  1. Utilise des bandes de Bollinger à 20 périodes comme canaux de volatilité avec 2 écarts types
  2. Utilise la moyenne mobile de 100 jours comme confirmation de tendance à moyen et long terme
  3. Génère des signaux longs lorsque le prix dépasse la bande supérieure et n'était pas au-dessus de cette bande au cours de la période précédente.
  4. Génère des signaux courts lorsque le prix dépasse la fourchette inférieure et n'en était pas inférieur au cours de la période précédente
  5. Calcule dynamiquement la taille de la position sur la base des fonds propres des comptes courants
  6. Fermeture automatique des positions sur des signaux contraires pour une gestion rapide des risques

Les avantages de la stratégie

  1. Une grande adaptabilité - Les bandes de Bollinger ajustent automatiquement la largeur du canal en fonction de la volatilité du marché
  2. Risque contrôlé - dimensionnement dynamique des positions garantit que le risque correspond à la taille du compte
  3. Confirmation de tendance - L'intégration avec la moyenne mobile améliore la fiabilité du signal
  4. Législation relative à l'élimination des risques
  5. Commerce bilatéral - Capture des tendances à la fois à la hausse et à la baisse pour améliorer l'efficacité des capitaux
  6. Code propre - logique de stratégie claire pour une maintenance et une optimisation faciles

Risques stratégiques

  1. Les fausses écarts sur les marchés variés peuvent entraîner des pertes consécutives
  2. Les paramètres des bandes de Bollinger fixes peuvent ne pas convenir à toutes les conditions du marché
  3. L'absence d'arrêt de trailing peut ne pas garantir efficacement les bénéfices
  4. Une longue période de moyenne mobile peut entraîner des signaux retardés
  5. Les coûts de négociation ne sont pas pris en compte, les performances en direct peuvent différer des backtests

Directions d'optimisation

  1. Ajouter des filtres de volatilité pour réduire la fréquence des transactions dans des environnements à faible volatilité
  2. Mettre en œuvre des mécanismes de stop-loss dynamiques basés sur la volatilité du marché
  3. Optimiser les paramètres des bandes de Bollinger avec des périodes d'adaptation
  4. Ajouter des filtres de volume et de temps d'attente
  5. Inclure des indicateurs techniques supplémentaires pour la confirmation du signal
  6. Fixer des limites maximales de tirage pour un contrôle renforcé des risques

Résumé

Cette stratégie construit un système de négociation quantitatif complet en combinant les bandes de Bollinger et les moyennes mobiles. Tout en maintenant une logique simple, elle implémente des fonctionnalités de base, notamment la génération de signaux, la gestion de position et le contrôle des risques. Bien qu'il existe des domaines d'optimisation, la conception globale est solide et a une valeur d'application pratique. Il est recommandé d'optimiser soigneusement les paramètres et de valider par backtesting avant la mise en œuvre en direct, avec des ajustements effectués en fonction des caractéristiques spécifiques du marché.


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

//@version=5
strategy("BB Breakout with MA 100 Strategy", overlay=true)

// Parameter Bollinger Bands
length = input(20, title="BB Length")
stdDev = input(2.0, title="BB Standard Deviation")

// Hitung Bollinger Bands
basis = ta.sma(close, length)
dev = stdDev * ta.stdev(close, length)
upperBB = basis + dev
lowerBB = basis - dev

// Hitung Moving Average 100
ma100 = ta.sma(close, 100)

// Logika untuk sinyal beli dan jual
longCondition = close > upperBB and close[1] <= upperBB[1]
shortCondition = close < lowerBB and close[1] >= lowerBB[1]

// Menentukan ukuran posisi (jumlah lot)
size = strategy.equity / close // Menentukan ukuran posisi berdasarkan ekuitas saat ini

// Eksekusi order
if (longCondition)
    strategy.entry("Long", strategy.long, qty=size)

if (shortCondition)
    strategy.entry("Short", strategy.short, qty=size)

// Menutup posisi ketika kondisi terbalik
if (longCondition and strategy.position_size < 0)
    strategy.close("Short")

if (shortCondition and strategy.position_size > 0)
    strategy.close("Long")

// Plotting
plot(upperBB, color=color.red, title="Upper BB")
plot(lowerBB, color=color.green, title="Lower BB")
plot(basis, color=color.blue, title="Basis BB")
plot(ma100, color=color.orange, title="MA 100")

// Menambahkan informasi ke grafik
bgcolor(longCondition ? color.new(color.green, 90) : na, title="Buy Signal Background")
bgcolor(shortCondition ? color.new(color.red, 90) : na, title="Sell Signal Background")


Relationnée

Plus de