La stratégie de rupture des tunnels doubles de Dongcheng

Auteur:ChaoZhang est là., Date: 2024-02-04 09:42:14 Je suis désolé
Les étiquettes:

双唐奇安通道突破策略

Résumé

La stratégie de rupture de la double tranche est une stratégie de négociation quantitative basée sur la tranche. Cette stratégie utilise une combinaison de tranches rapides et lentes pour réaliser des transactions de rupture à faible risque et à haut rendement.

Les principes stratégiques

La stratégie est basée principalement sur deux canaux de Dongjian, comprenant un canal de Dongjian lent à un cycle plus long et un canal de Dongjian rapide à un cycle plus court.

Les cycles du tunnel douchian lent sont plus longs, ce qui permet d'éliminer efficacement le bruit du marché, et leurs signaux de rupture sont plus fiables.

Le cycle rapide du canal de Dongcheng est plus court et permet de réagir rapidement aux variations de prix à court terme. Lorsque le prix franchit à nouveau le canal, il indique qu'il y a un retournement de tendance et qu'il faut immédiatement arrêter les pertes ou arrêter les sorties.

En outre, des conditions de volatilité sont mises en place comme filtres d'entrée stratégiques. Une entrée n'est déclenchée que lorsque les fluctuations des prix dépassent un pourcentage de seuil prédéfini. Cela évite de fréquentes entrées dans le classement horizontal.

Analyse des avantages

  • Deux lignes de défense ont été mises en place pour contrôler efficacement les risques en utilisant les deux voies.
  • Les canaux rapides sont utilisés pour capturer efficacement les tendances
  • Les mécanismes de filtrage de la volatilité peuvent réduire les transactions inefficaces
  • Avantages à la fois de suivre les tendances et de prévenir le rétrécissement
  • Les règles sont claires, simples, faciles à comprendre et à maîtriser

L'analyse des risques

  • Lors d'un choc fort, le point de rupture peut être dépassé, ce qui entraîne des pertes plus importantes.
  • Des paramètres (tels que la longueur du cycle du canal) mal réglés peuvent entraîner un effet dissuasif sur la stratégie.
  • Les frais de transaction peuvent également avoir un impact sur les bénéfices.
  • Le secteur a besoin de se concentrer sur les sautes d'air causées par des événements majeurs

Ces risques peuvent être réduits par des mesures telles que l'optimisation des paramètres, la mise en place raisonnable des points de rupture et la surveillance des événements majeurs.

Optimisation

  • Test de différentes combinaisons de paramètres pour le cycle du canal de Dongcheng
  • Optimiser les paramètres de volatilité pour trouver le meilleur moment d'entrée
  • Ajoutez des indicateurs de tendance pour éviter les contretemps
  • L'indice de sélection est basé sur la base des actions
  • Modifier les mécanismes d'arrêt des pertes pour éviter une expansion des pertes

Résumé

La stratégie de rupture du double canal de Donchian est globalement une stratégie de suivi des tendances relativement stable et fiable. Elle présente à la fois les avantages de la capture des tendances et du contrôle des risques, et est adaptée comme un module de base pour de nombreuses stratégies de négociation d'actions.


/*backtest
start: 2024-01-04 00:00:00
end: 2024-02-03 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

// This Pine Script™ code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © omererkan

//@version=5
strategy(title="Double Donchian Channel Breakout", overlay=true, initial_capital = 1000, commission_value = 0.05, default_qty_value = 100, default_qty_type = strategy.percent_of_equity)


slowLen = input.int(50, title="Slow Donchian")
fastLen = input.int(30, title="Fast Donchian")
volatility = input.int(3, title="Volatility (%)")
longProfitPerc = input.float(2, title="Long TP1 (%)", minval=0.0, step=0.1) * 0.01
shortProfitPerc = input.float(2, title="Short TP1 (%)", minval=0.0, step=0.1) * 0.01
TP1Yuzde =input.int(50, title = "TP1 Position Amount (%)")

ubSlow = ta.highest(close, slowLen)[1]
lbSlow = ta.lowest(close, slowLen)[1]

ubFast = ta.highest(close, fastLen)[1]
lbFast = ta.lowest(close, fastLen)[1]

plot(ubSlow, color=color.green, linewidth=2, title="Slow DoCh - Upperband")
plot(lbSlow, color=color.green, linewidth=2, title="Slow DoCh - Lowerband")
plot(ubFast, color=color.blue, linewidth=2, title="Fast DoCh - Upperband")
plot(lbFast, color=color.blue, linewidth=2, title="Fast DoCh - Lowerband")

fark = (ubSlow - lbSlow) / lbSlow * 100

longExitPrice  = strategy.position_avg_price * (1 + longProfitPerc)
shortExitPrice = strategy.position_avg_price * (1 - shortProfitPerc)

longCondition = ta.crossover(close, ubSlow) and fark > volatility
if (longCondition)
    strategy.entry("Long", strategy.long)

shortCondition = ta.crossunder(close, lbSlow) and fark > volatility
if (shortCondition)
    strategy.entry("Short", strategy.short)

if strategy.position_size > 0 and ta.crossunder(close, lbFast) 
    strategy.close("Long", "Close All")

if strategy.position_size < 0 and ta.crossover(close, ubFast)
    strategy.close("Short", "Close All")

// Take Profit
if strategy.position_size > 0
    strategy.exit("TP1", "Long", qty_percent = TP1Yuzde, limit = longExitPrice)

if strategy.position_size < 0
    strategy.exit("TP1", "Short", qty_percent = TP1Yuzde, limit = shortExitPrice)

En savoir plus