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

Système de moyenne de sortie et de signaux de zone de survente d'actifs financiers basé sur les IFM

Auteur:ChaoZhang est là., Date: 2024-12-05 16:40:47 Je suis désolé
Les étiquettes:Finances monétairesIndice de résistanceSLTP- Je vous en prie.

img

Résumé

Cette stratégie est un système de trading automatisé basé sur l'indice de flux monétaire (IFM), principalement conçu pour capturer les opportunités de renversement potentiels en identifiant le comportement des actifs dans les zones de survente.

Principes de stratégie

La stratégie est basée sur les étapes clés suivantes:

  1. Surveiller en permanence les variations de valeur des IFM, en marquant l'entrée dans la zone de survente lorsque les IFM tombent en dessous du seuil prédéfini (par défaut 20).
  2. Lorsque l'IFM rebondit et dépasse le seuil de la zone de survente, le système place un ordre d'achat au-dessous du prix actuel, le prix spécifique étant déterminé par un pourcentage défini par l'utilisateur.
  3. Le système surveille la période de validité de l'ordre limite, l'annulation automatique s'il n'est pas rempli dans la période d'observation prédéfinie (5 bougies par défaut).
  4. Une fois l'ordre d'achat rempli, le système fixe immédiatement des niveaux cibles de stop-loss et de profit, calculés sur la base des pourcentages du prix d'entrée.
  5. Les transactions se clôturent automatiquement lorsque l'objectif de stop-loss ou de profit est atteint.

Les avantages de la stratégie

  1. Contrôle complet des risques: fournit des ratios risque-rendement clairs grâce à des objectifs de stop-loss et de profit prédéfinis.
  2. Mécanisme d'entrée flexible: l'utilisation d'ordres limités pour l'entrée peut permettre d'obtenir de meilleurs prix d'exécution, ce qui augmente le potentiel de profit global.
  3. Haut niveau d'automatisation: entièrement automatisé de la génération de signal à la gestion de la position, réduisant les interférences émotionnelles.
  4. Forte adaptabilité des paramètres: les paramètres clés tels que la période des IFM, le seuil de survente et la validité des ordres peuvent être optimisés pour différentes caractéristiques du marché.
  5. Logique du système claire: les règles de stratégie sont explicites, facilitant le backtesting et la surveillance en direct.

Risques stratégiques

  1. Risque de faux signaux: les IFM peuvent générer de faux signaux de survente sur les marchés volatils.
  2. Risque de glissement: les ordres limités peuvent ne pas être exécutés aux prix attendus en raison des mouvements rapides du marché.
  3. Risque de tendance: l'entrée précoce dans des tendances à la baisse fortes peut entraîner des pertes importantes.
  4. Sensibilité aux paramètres: la performance de la stratégie est sensible aux paramètres, ce qui nécessite une optimisation pour différents environnements de marché.

Directions d'optimisation de la stratégie

  1. Ajouter le filtrage des tendances du marché: Incorporer des moyennes mobiles ou d'autres indicateurs de tendance pour permettre la négociation uniquement dans les tendances haussières.
  2. Optimiser la confirmation du signal: combiner avec le RSI, le MACD ou d'autres indicateurs techniques pour améliorer la fiabilité du signal.
  3. Mécanisme dynamique d'arrêt des pertes: ajuster les distances d'arrêt des pertes en fonction de la volatilité du marché pour une gestion des risques plus souple.
  4. Construction et clôture de positions par étapes: mettre en œuvre plusieurs ordres de limite de niveau de prix pour réduire le coût global de la position.
  5. Introduire le filtrage temporel: permettre de négocier sélectivement en fonction des différentes caractéristiques du marché.

Résumé

Il s'agit d'une stratégie de trading automatisée bien conçue et logiquement claire. Grâce à l'utilisation flexible de l'indicateur MFI, combinée à des mécanismes complets de gestion des ordres, elle capte efficacement les rebonds du marché après des conditions de survente. La haute configuration de la stratégie facilite l'optimisation pour différents environnements de marché. Bien que certains risques existent, ils peuvent être traités par les directions d'optimisation suggérées pour améliorer davantage la stabilité et la rentabilité de la stratégie. Convient pour les investissements à moyen et long terme, en particulier pour les investisseurs à la recherche d'opportunités de rebond de survente sur les marchés oscillants.


/*backtest
start: 2024-11-04 00:00:00
end: 2024-12-04 00:00:00
period: 3h
basePeriod: 3h
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/
// © traderhub

//@version=5
strategy("MFI Strategy with Oversold Zone Exit and Averaging", overlay=true)

// Strategy parameters
mfiPeriod = input.int(title="MFI Period", defval=14) // Period for calculating MFI
mfiOS = input.float(title="MFI Oversold Level", defval=20.0) // Oversold level for MFI
longEntryPercentage = input.float(title="Long Entry Percentage (%)", minval=0.0, step=0.1, defval=0.1) // Percentage for the buy limit order
stopLossPercentage = input.float(title="Stop Loss Percentage (%)", minval=0.0, step=0.1, defval=1.0) // Percentage for the stop-loss
exitGainPercentage = input.float(title="Exit Gain Percentage (%)", minval=0.0, step=0.1, defval=1.0) // Percentage gain for the take-profit
cancelAfterBars = input.int(title="Cancel Order After # Bars", minval=1, defval=5) // Cancel order after a certain number of bars

// Calculate MFI
mfi = ta.mfi(close, mfiPeriod)  // MFI with specified period

// Variables for tracking state
var bool inOversoldZone = false  // Flag for being in the oversold zone
var float longEntryPrice = na  // Price for long entry
var int barsSinceEntryOrder = na  // Counter for bars after placing an order

// Define being in the oversold zone
if (mfi < mfiOS)
    inOversoldZone := true  // Entered oversold zone

// Condition for exiting the oversold zone and placing a limit order
if (inOversoldZone and mfi > mfiOS)
    inOversoldZone := false  // Leaving the oversold zone
    longEntryPrice := close * (1 - longEntryPercentage / 100)  // Calculate limit price for entry
    strategy.entry("Long Entry", strategy.long, limit=longEntryPrice)  // Place a limit order
    barsSinceEntryOrder := 0  // Reset counter for bars after placing the order

// Increase the bar counter if the order has not yet been filled
if (not na(barsSinceEntryOrder))
    barsSinceEntryOrder += 1

// Cancel order if it hasn’t been filled within the specified number of bars
if (not na(barsSinceEntryOrder) and barsSinceEntryOrder >= cancelAfterBars and strategy.position_size == 0)
    strategy.cancel("Long Entry")
    barsSinceEntryOrder := na  // Reset bar counter

// Set stop-loss and take-profit for filled positions
if (strategy.position_size > 0)
    stopLossPrice = longEntryPrice * (1 - stopLossPercentage / 100)  // Calculate stop-loss level
    takeProfitPrice = longEntryPrice * (1 + exitGainPercentage / 100)  // Calculate take-profit level
    strategy.exit("Exit Long", from_entry="Long Entry", limit=takeProfitPrice, stop=stopLossPrice)

// Visualize oversold and overbought zones
bgcolor(mfi < mfiOS ? color.new(color.green, 90) : na)  // Background in oversold zone
plot(mfi, title="MFI", color=color.blue)  // MFI plot
hline(mfiOS, "Oversold Level", color=color.red)  // Oversold level line













Relationnée

Plus de