Stratégie de confirmation du Doji en spirale avec moyenne mobile


Date de création: 2024-02-02 14:50:08 Dernière modification: 2024-02-02 14:50:08
Copier: 0 Nombre de clics: 607
1
Suivre
1617
Abonnés

Stratégie de confirmation du Doji en spirale avec moyenne mobile

Aperçu

Cette stratégie combine les indicateurs en spirale et les moyennes mobiles pour identifier la direction et la force de la tendance des prix afin de générer des signaux potentiels de survente et de dépréciation. Lorsque les indicateurs en spirale positifs traversent les indicateurs en spirale négatifs, le point de croisement est marqué sur le graphique.

Principe de stratégie

  1. L’indicateur de la spirale: il comprend la ligne de l’indicateur de la spirale positive ((VI+) et la ligne de l’indicateur de la spirale négative ((VI-)). Il est utilisé pour identifier la direction et la force de la tendance des prix.

  2. Moyenne mobile: une méthode de moyenne mobile de votre choix (SMA, EMA, SMMA, WMA ou VWMA) est utilisée pour lisser les données de prix. La ligne de lissage obtenue est appelée la ligne de lissage de la courbe.

  3. Déterminez les signaux de plus et de moins: marquez le point d’intersection lorsque la ligne VI+ traverse la ligne VI, générant un signal de plus si le prix de clôture est supérieur à la ligne de glissement; lorsque la ligne VI traverse la ligne VI+, générant un signal de moins si le prix de clôture est inférieur à la ligne de glissement.

Avantages stratégiques

  1. La combinaison des avantages de l’identification de tendances et du filtre de glissement permet de capturer les tendances dans les marchés tendances et d’éviter de produire de faux signaux dans les marchés survolés.

  2. L’indicateur de la spirale permet d’identifier efficacement la direction et l’intensité de la tendance. La moyenne mobile permet de filtrer une partie du bruit.

  3. La logique de la stratégie est simple et claire, facile à comprendre et à mettre en œuvre.

  4. Les paramètres peuvent être personnalisés pour s’adapter à différents environnements de marché.

Risque stratégique

  1. Dans les marchés où il n’y a pas de tendance nette, il peut y avoir de faux signaux et des arrêts SERIAL.

  2. Une mauvaise définition des paramètres peut également affecter la performance de la stratégie. Par exemple, une moyenne mobile trop courte peut avoir un effet de filtrage médiocre et une moyenne mobile trop longue peut être un retard dans la reconnaissance des changements de tendance.

  3. L’incapacité à prendre des mesures de prévention face à des événements imprévus, tels que des bouleversements de la situation après un événement financier majeur

Optimisation de la stratégie

  1. D’autres indicateurs peuvent être utilisés en combinaison, tels que l’indicateur de volume de transaction, pour déterminer la fiabilité de la tendance.

  2. Les paramètres d’optimisation sont définis pour équilibrer le suivi de la tendance et le filtrage du bruit des moyennes mobiles.

  3. Il a ajouté des stratégies de stop-loss pour contrôler les pertes.

  4. Optimiser automatiquement les paramètres en utilisant des méthodes telles que l’apprentissage automatique.

  5. Le module de gestion des risques est associé à la modification des positions.

Résumer

Cette stratégie permet d’obtenir un excellent effet de capture de tendance en combinant simplement et efficacement des indicateurs en spirale et des moyennes mobiles. Elle a une certaine capacité de filtrage du bruit tout en identifiant la direction de la tendance, ce qui réduit les signaux erronés.

Code source de la stratégie
/*backtest
start: 2023-02-01 00:00:00
end: 2024-02-01 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/
// © DraftVenture

//@version=5
strategy("Vortex + Moving Average Strategy", overlay=true)

//Vortex settings
period_ = input.int(14, title="Vortex Length", minval=2)
VMP = math.sum( math.abs( high - low[1]), period_ )
VMM = math.sum( math.abs( low - high[1]), period_ )
STR = math.sum( ta.atr(1), period_ )
VIP = VMP / STR
VIM = VMM / STR
plot(VIP, title="VI +", color=color.white)
plot(VIM, title="VI -", color=color.white)

len = input.int(9, minval=1, title="MA Length")
src = input(close, title="Source")
offset = input.int(title="Offset", defval=0, minval=-500, maxval=500)
out = ta.sma(src, len)
plot(out, color=color.blue, title="MA", offset=offset)

ma(source, length, type) =>
    switch type
        "SMA" => ta.sma(source, length)
        "EMA" => ta.ema(source, length)
        "SMMA (RMA)" => ta.rma(source, length)
        "WMA" => ta.wma(source, length)
        "VWMA" => ta.vwma(source, length)

typeMA = input.string(title = "Method", defval = "SMA", options=["SMA", "EMA", "SMMA (RMA)", "WMA", "VWMA"], group="Smoothing")
smoothingLength = input.int(title = "Length", defval = 5, minval = 1, maxval = 100, group="Smoothing")

smoothingLine = ma(out, smoothingLength, typeMA)
plot(smoothingLine, title="Smoothing Line", color=#f37f20, offset=offset, display=display.none)

// Determine long and short conditions
longCondition = ta.crossover(VIP, VIM) and close > smoothingLine
shortCondition = ta.crossunder(VIP, VIM) and close < smoothingLine
crossCondition = ta.crossunder(VIP, VIM) or ta.crossunder(VIM, VIP)

// Strategy entry and exit logic
if longCondition
    strategy.entry("Long", strategy.long)

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

bgcolor(crossCondition ? color.new(color.white, 80) : na)

// Strategy by KP