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

Stratégie de suivi de la moyenne mobile quotidienne de la valeur de l'or

Auteur:ChaoZhang est là., Date: 2024-01-12 11:54:21 Je vous en prie.
Les étiquettes:

img

Résumé

Cette stratégie utilise une combinaison des prix d'ouverture et de clôture de la journée précédente, de la ligne EMA rapide et de la ligne EMA lente pour déterminer la direction de la valeur du marché dans la période de négociation définie par l'utilisateur, et effectue les entrées longues ou courtes correspondantes.

La logique de la stratégie

La stratégie base principalement son jugement sur l'orientation de la valeur de l'or sur deux aspects:

  1. La hausse et la baisse du prix de clôture de la journée précédente par rapport au prix d'ouverture. Si le prix de clôture est supérieur au prix d'ouverture, cela indique que la valeur globale a augmenté au cours de cette journée. Si le prix de clôture est inférieur au prix d'ouverture, cela indique que la valeur globale a diminué au cours de cette journée.

  2. La relation de position entre la ligne EMA rapide de 50 périodes et la ligne EMA lente de 200 périodes. Si la ligne rapide est au-dessus de la ligne lente, cela signifie que la vitesse de hausse de la valeur à court terme est supérieure à la tendance à long terme. Si la ligne rapide est en dessous de la ligne lente, cela signifie que la vitesse de hausse de la valeur à court terme est inférieure à la tendance à long terme.

Lorsque la condition longue est déclenchée, si la clôture de la journée précédente est supérieure à l'ouverture, le prix actuel est supérieur à l'ouverture de la journée précédente, l'EMA rapide est supérieur à l'EMA lente et se situe dans les heures de négociation définies par l'utilisateur, la stratégie sera longue or.

Lorsque la condition courte est déclenchée, si la clôture de la journée précédente est inférieure à l'ouverture, le prix actuel est inférieur à l'ouverture de la journée précédente, l'EMA rapide est inférieure à l'EMA lente et se situe dans les heures de négociation définies par l'utilisateur, la stratégie sera courte sur l'or.

En outre, la stratégie utilise le stop-loss de suivi pour verrouiller les profits ou limiter les pertes.

Analyse des avantages

Les avantages de cette stratégie sont les suivants:

  1. L'utilisation de multiples indicateurs pour déterminer la direction de la valeur de l'or réduit la probabilité de mauvaises transactions.

  2. Le trailing stop peut effectivement bloquer les bénéfices et sortir en temps opportun lorsque la tendance s'inverse, réduisant les risques.

  3. Les utilisateurs peuvent choisir des fenêtres de négociation appropriées en fonction de leur propre temps de négociation afin d'éviter d'être piégés lors d'opérations institutionnelles.

  4. Les valeurs de l'EMA pour les périodes peuvent être ajustées et optimisées en fonction des changements du marché, ce qui rend la stratégie plus souple.

Analyse des risques

Cette stratégie comporte également certains risques:

  1. Les événements soudains peuvent entraîner de grandes pertes nécessitant une intervention manuelle ou une distance d'arrêt plus détendue.

  2. L'EMA ne peut pas filtrer complètement le bruit du marché. Les signaux erronés peuvent déclencher des transactions inutiles. Les paramètres peuvent être optimisés ou des filtres supplémentaires ajoutés.

  3. Des réglages de distance d'arrêt de trail inappropriés augmentent également les risques - trop serré tend à s'arrêter prématurément tandis que trop large ne parvient pas à contrôler efficacement les pertes.

Directions d'optimisation

La stratégie peut également être optimisée dans les aspects suivants:

  1. Ajouter d'autres indicateurs techniques pour le filtrage des signaux, tels que le MACD, les bandes de Bollinger, etc., afin de réduire les signaux EMA erronés.

  2. Passez à des arrêts adaptatifs qui ajustent la distance d'arrêt de manière intelligente en fonction de la volatilité du marché.

  3. Ajouter des règles de dimensionnement des positions pour permettre des sorties partielles afin de mieux contrôler les risques et réduire l'impact des pertes d'une seule transaction.

  4. Ajouter des modèles d'apprentissage automatique pour déterminer la direction de la tendance, améliorer la précision en utilisant plus de données historiques.

  5. Optimiser la sélection des fenêtres de temps de négociation en utilisant la distribution gaussienne pour cibler des intervalles de participation à la stratégie plus élevés.

Conclusion

En résumé, il s'agit d'une stratégie de suivi de tendance typique. Il combine plusieurs indicateurs pour déterminer les tendances de valeur à la hausse ou à la baisse et est considéré comme robuste. L'application de trailing stop permet également un contrôle efficace des pertes. Des optimisations supplémentaires des indicateurs et des règles de stop loss peuvent permettre d'obtenir un meilleur équilibre entre les rendements et la gestion des risques.


/*backtest
start: 2024-01-04 00:00:00
end: 2024-01-11 00:00:00
period: 45m
basePeriod: 5m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
strategy("My Strategy", overlay=true)

// Inputs for user to modify
startHour = input(11, title="Start Hour")
endHour = input(16, title="End Hour")
trailingStop = input(100, title="Trailing Stop Start (pips)")
trailingStep = input(10, title="Trailing Step (pips)")

// Define the EMAs
longEma = ema(close, 200)
shortEma = ema(close, 50)

// Calculate daily open, high, low, close
daily_open = security(syminfo.tickerid, "D", open[1])
daily_close = security(syminfo.tickerid, "D", close[1])

// Time conditions
timeAllowed = (hour >= startHour) and (hour <= endHour)

// Define long condition based on your criteria
longCondition = (daily_close > daily_open) and (close > daily_open) and (shortEma > longEma) and timeAllowed

// Define short condition based on your criteria
shortCondition = (daily_close < daily_open) and (close < daily_open) and (shortEma < longEma) and timeAllowed

// Enter the trade
if (longCondition)
    strategy.entry("Long", strategy.long)

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

// Trailing Stop Loss
strategy.exit("Exit Long", "Long", trail_points = trailingStop / syminfo.mintick, trail_offset = trailingStep / syminfo.mintick)
strategy.exit("Exit Short", "Short", trail_points = trailingStop / syminfo.mintick, trail_offset = trailingStep / syminfo.mintick)

// Plotting
plot(daily_open, color=color.red, title="Daily Open")
plot(longEma, color=color.blue, title="200 EMA")
plot(shortEma, color=color.orange, title="50 EMA")


Plus de