Stratégie de rupture de l'élan

Auteur:ChaoZhang est là., Date: 23 octobre 2023 à 15 h 17 min 45 s
Les étiquettes:

img

Résumé

Il s'agit d'une stratégie de trading basée sur les lignes K et D de l'indicateur de l'oscillateur stochastique lissé.

La logique de la stratégie

La stratégie est composée des éléments suivants:

  1. Paramètres de l'indicateur

    Utilisation d'un RSI à 14 périodes pour générer des lignes K et D de l'indicateur d'oscillateur stochastique lissé, avec une SMA à 3 périodes appliquée sur les lignes K et D.

  2. Génération du signal

    Lorsque la ligne K franchit le niveau 20, un signal d'achat est généré pour une entrée longue.

  3. Arrêtez la perte

    Le prix d'arrêt de perte est utilisé avec une distance d'arrêt de perte fixe.

  4. Taille de la position

    Le nombre de points entre le prix du stop loss et la clôture actuelle est calculé en utilisant le plus bas de la dernière période 20.

De cette façon, la stratégie identifie l'éclatement de l'élan lors d'un renversement de la survente comme signal d'entrée et adopte une taille de position précise et un stop loss de suivi pour l'inversion de l'élan de la transaction, avec un contrôle efficace du risque.

Les avantages

La stratégie présente les avantages suivants:

  1. Signal d'entrée clair sur la sortie de la zone de surachat avec une forte dynamique.

  2. Des mouvements d'arrêt flexibles avec les fluctuations du marché.

  3. La taille précise de la position contrôle le risque de transaction unique.

  4. Stop-loss précis basé sur le plus bas historique.

  5. Une logique de dimensionnement de position simple et claire.

  6. Une logique stratégique simple et claire, facile à comprendre.

  7. Structure de code propre, facile à lire et à modifier.

Les risques

Il y a quelques risques à cette stratégie:

  1. Fluctuations des prix sous-jacents, déclenchements fréquents de stop loss pendant les marchés volatils.

  2. Le potentiel sur le trading.

  3. Une directionnelle, incapable de profiter d'un mouvement inverse des prix.

  4. Filtrage inefficace des conditions du marché.

Les optimisations suivantes peuvent aider à gérer les risques:

  1. Optimiser les paramètres pour éviter le sur-échange.

  2. Utilisez des entrées par étapes pour réduire le risque d'une direction.

  3. Ajouter une analyse de l'évolution de l'évolution dans un délai plus long pour éviter des conditions de marché défavorables.

  4. Optimiser la stratégie de stop loss pour éviter une sensibilité excessive.

Optimisation

Les aspects suivants de la stratégie peuvent être optimisés:

  1. Optimiser le stop loss en utilisant le stop trailing dynamique, le stop loss par étapes, la moyenne mobile, etc. pour le rendre plus fluide.

  2. Ajoutez l'analyse de la tendance de plus grande période pour éviter les transactions sur les marchés latéraux.

  3. Considérons deux positions directionnelles pour tirer profit des retraits.

  4. Utiliser l'apprentissage automatique pour l'optimisation des paramètres automatiques afin de trouver des paramètres optimaux pour les conditions changeantes du marché.

  5. Optimiser la taille des positions en utilisant des pourcentages fixes, du capital fixe, etc. pour améliorer l'utilisation du capital.

  6. Ajoutez plus de filtres avec des indicateurs comme le volume, les bandes de Bollinger pour améliorer la qualité des signaux de trading.

Résumé

Dans l'ensemble, il s'agit d'une stratégie de rupture de momentum simple et claire. Elle adopte une approche prudente de stop loss pour contrôler efficacement le risque d'une seule transaction. Mais des optimisations sont encore nécessaires pour mieux adapter la stratégie aux conditions spécifiques du marché, filtrer les signaux inefficaces et atteindre un meilleur équilibre entre rendement et risque.


//@version=2
//descripcion: 
//entrada en saturacion oscilador estocastico
//salida por trailing
strategy("MomentumBreak#1", overlay=true,calc_on_every_tick=true,
     default_qty_type=strategy.fixed,currency="USD")
//entradas y variables de indicadores
smoothK = input(3, minval=1)
smoothD = input(3, minval=1)
lengthRSI = input(14, minval=1)
lengthStoch = input(14, minval=1)
src = input(close, title="RSI Source")
rsi1 = rsi(src, lengthRSI)
k = sma(stoch(rsi1, rsi1, rsi1, lengthStoch), smoothK)
d = sma(k, smoothD)
overbought=input(80)
oversold=input(20)
//entradas de stop , trail, profit
stop=input(1500)
stop_dentro_de_los_ultimos_lows=input(20)
trail_points=input(500)
trail_offset=input(100)
profit=input(1000)
riesgo_en_dolares=input(15)

//condicion de compra: k>80
buycondition=crossover(k,oversold)
//entrada a la posicion
posicionabierta=0
if year>2015
    if buycondition 
        stoplow=lowest(stop_dentro_de_los_ultimos_lows)   
        riesgo_en_pips = (close - stoplow)   
        valor_del_pip = (riesgo_en_dolares / riesgo_en_pips)
        tamanio_de_la_posicion= ( valor_del_pip)              //la posicion la esta calculando bien
        strategy.entry("buy",strategy.long)
        strategy.exit("salida","buy",trail_points=trail_points,trail_offset=trail_offset,stop=stoplow,comment=tostring(stoplow))

//////////////////////////////////condicion de stop por drodown 10% equity
//strategy.risk.max_drawdown(15,strategy.cash)
// condicion de stop por perdida mayor a $15 en op abierta
//strategy.risk.max_intraday_loss(15,strategy.cash)
//formas de tomar stop:
// cuando llega a una media movil: strategy.close o strategyentry o strategy.exit o strategy.order
// determinado por un numero de pips strategy.exit
// determinado por el calculo de la posicion:
//tomar el minimo minimo de los ultimos 20 periodos, guardarlo como nivel de stop
//calcular la posicion en base a ese stop:
//prcio de entrada - precio de stop = pips_en-reisgo
//riesgo_e_dolares / pips_en_riesgo = pip_value
//position_size=10000 * pip_value


Plus de