Stratégie de rupture avec chevauchement des positions hautes et basses de la ligne K


Date de création: 2023-12-11 15:16:53 Dernière modification: 2023-12-11 15:16:53
Copier: 0 Nombre de clics: 664
1
Suivre
1621
Abonnés

Stratégie de rupture avec chevauchement des positions hautes et basses de la ligne K

Aperçu

La stratégie de rupture de la ligne K superposée est une stratégie d’action de prix basée sur la forme de la ligne K superposée. Elle se produit lorsque la gamme de la ligne K actuelle est inférieure à celle de la ligne K précédente, indiquant que le marché est en train de s’organiser ou d’hésiter.

Principe de stratégie

La stratégie utilise les indicateurs et variables suivants:

  • Amplitude réelle moyenne ((ATR): Amplitude réelle moyenne des lignes N à la racine de K précédentes calculées avec la fonction ATR.
  • Range: la différence entre le prix le plus élevé et le prix le plus bas de la ligne K actuelle.
  • insideBar: variable de Boole, qui est vraie si la ligne K actuelle est inférieure à la ligne K précédente, indiquant qu’il y a un chevauchement de ligne K.
  • Une rupture à la hausse: la variable de Boole est vraie si le prix de clôture est supérieur au prix le plus élevé de la ligne K précédente, indiquant qu’une rupture à la hausse a eu lieu.
  • Rétrécissement vers le bas: La variable Boole est vraie si le prix de clôture est inférieur au prix le plus bas de la ligne K précédente, indiquant qu’une rétrécissement vers le bas a eu lieu.
  • Fluidité vers le haut: valeur la plus élevée de la ligne K à la racine N passée, représentant la position de résistance de möglich.
  • Mobilité vers le bas: le prix le plus bas dans la ligne N à la racine K du passé, représentant une position de support possible.

La décision d’entrée est basée sur la rupture de la fourchette de différence et du prix le plus bas de la ligne K précédente. Plus précisément, un signal d’entrée à plusieurs têtes est généré lorsque la rupture à la hausse se produit et que le prix le plus bas de la ligne K actuelle est supérieur à la liquidité à la baisse; un signal d’entrée à vide est généré lorsque la rupture à la baisse se produit et que le prix le plus élevé de la ligne K actuelle est inférieur à la liquidité à la hausse.

Le stop loss est le nombre de fois que l’ATR est multiplié par la différence de prix actuelle.

Analyse des avantages

Cette stratégie présente les avantages suivants:

  1. Les transactions sur les lignes K qui se chevauchent permettent d’organiser la situation et d’accélérer la transition vers l’un ou l’autre.
  2. La combinaison de la direction de rupture et de la position de fluidité permet d’éviter le piégeage.
  3. Le mStop est un outil simple et facile à mettre en place.
  4. La direction est forte et il y a de fortes chances que la dynamique après la rupture continue et que les objectifs de profit soient atteints.

Analyse des risques

La stratégie présente également les risques suivants:

  1. Si la percée est infructueuse, on est pris au dépourvu.
  2. La situation fluctue fortement et le stop est dépassé. Ajustez le cycle ATR pour s’assurer que la distance de stop est raisonnable.
  3. Le taux de liquidité a été jugé erroné, la mauvaise direction a été choisie. Optimiser les paramètres du taux de liquidité, affiner les conditions d’entrée.
  4. Si le renversement est infructueux, il est impossible d’atteindre l’objectif de profit. Il est préférable de réduire le multiplicateur d’arrêt pour garantir un niveau d’arrêt raisonnable.

Direction d’optimisation

Cette stratégie peut être optimisée dans les domaines suivants:

  1. Optimiser les paramètres ATR pour trouver les paramètres ATR les plus appropriés.
  2. Testez différents multiples de stop pour déterminer une distance de stop raisonnable.
  3. Test des multiples de stop-loss différents, équilibrant la taille des bénéfices et la probabilité de réalisation.
  4. Optimiser les paramètres de liquidité et améliorer la précision des admissions.
  5. Ajout d’autres conditions de filtrage, telles que le volume des transactions et l’optimisation des délais d’entrée.
  6. Les indicateurs de tendance sont combinés avec des méthodes de suivi des tendances.

Résumer

La stratégie de rupture des hauts et bas de la ligne K superposés, en utilisant la préparation de la dynamique de marché et le principe de la rupture, entre en jeu lorsque le prix franchit la gamme de différence de prix de la ligne K avant. La position de liquidité combinée évite d’être prise en charge.

Code source de la stratégie
/*backtest
start: 2022-12-04 00:00:00
end: 2023-12-10 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © ilikelyrics560

//@version=5
strategy("Inside Bar Range Breakout Strategy", overlay=true)

// Inputs
lookback = input.int(20, "Lookback Period", minval=1)
atrMult = input.float(1.5, "ATR Multiplier", step=0.1)
atrLen = input.int(14, "ATR Length", minval=1)
slMult = input.float(2, "Stop Loss Multiplier", step=0.1)
tpMult = input.float(3, "Take Profit Multiplier", step=0.1)

// Variables
atr = ta.atr(atrLen)
Range = high - low 
insideBar = Range < Range[1]
breakoutUp = close > high[1]
breakoutDown = close < low[1]
liquidityUp = ta.highest(high, lookback)
liquidityDown = ta.lowest(low, lookback)
longEntry = breakoutUp and low > liquidityDown
shortEntry = breakoutDown and high < liquidityUp
longExit = close < low[1] 
shortExit = close > high[1]

// Plotting
plot(liquidityUp, "Liquidity Up", color.new(color.green, 30), 1)
plot(liquidityDown, "Liquidity Down", color.new(color.red, 30), 1)
bgcolor(longEntry ? color.new(color.green, 30) : na, title="Long Entry")
bgcolor(shortEntry ? color.new(color.maroon, 30) : na, title="Short Entry")

// Trading
if (longEntry)
    strategy.entry("Long", strategy.long)
    strategy.exit("Long Exit", "Long", stop=low - slMult * atr, limit=high + tpMult * atr)

if (shortEntry)
    strategy.entry("Short", strategy.short)
    strategy.exit("Short Exit", "Short", stop=high + slMult * atr, limit=low - tpMult * atr)