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

Suivi de tendance avec filtre de rupture et de fréquence (uniquement long)

Auteur:ChaoZhang est là., Date: 2024-05-28 14h24
Les étiquettes:Le taux d'intérêtA.O.

img

Résumé

Cette stratégie est une stratégie de suivi de tendance basée sur la rupture et le filtrage de fréquence, ne prenant que des positions longues. L'idée principale de la stratégie est d'utiliser l'indicateur EMA pour déterminer la direction de la tendance actuelle, générer un signal long lorsque le prix dépasse le prix le plus élevé dans une certaine plage et utiliser un filtre de fréquence pour contrôler la fréquence de négociation afin d'éviter d'ouvrir des positions trop fréquemment.

Principe de stratégie

  1. Calculer l'indicateur EMA pour déterminer la direction de la tendance actuelle.
  2. Lorsque le prix de clôture dépasse le prix le plus élevé dans la période de rétrospective la plus courte ou la plus longue et que la tendance actuelle est haussière, un signal long est généré.
  3. Mettre en place un filtre de fréquence pour contrôler le temps d'intervalle minimum entre les ouvertures de positions consécutives afin d'éviter une fréquence de négociation excessive.
  4. Lorsque le prix tombe en dessous du prix de stop loss, fermez la position pour contrôler le risque.
  5. Définissez le signal de fin de tendance. Lorsque le prix de clôture tombe en dessous de l'EMA, la tendance est considérée comme terminée. Si une position longue est maintenue à ce moment, fermez la position.

Les avantages de la stratégie

  1. Suivi des tendances: en utilisant l'indicateur EMA pour déterminer la direction de la tendance et en négocier en fonction de celle-ci, il contribue à améliorer les rendements de la stratégie.
  2. Confirmation de rupture: l'utilisation de la rupture de prix comme signal d'entrée permet une entrée en temps opportun au début de la tendance, capturant ainsi plus de potentiel de profit.
  3. Contrôle de la fréquence: l'introduction d'un filtre de fréquence pour contrôler l'intervalle de temps entre les ouvertures de positions consécutives évite une négociation excessive et réduit les coûts et les risques de négociation.
  4. Protection contre les pertes d'arrêt: le fait de définir un point d'arrêt des pertes pour arrêter rapidement les pertes lorsque le prix se déplace dans la direction opposée d'une certaine ampleur contrôle efficacement le risque de baisse.
  5. Fermeture dynamique des positions: la fermeture dynamique des positions basée sur le signal de fin de tendance permet de verrouiller en temps opportun les bénéfices existants et d'éviter les pertes causées par un renversement de tendance.

Risques stratégiques

  1. Sensibilité des paramètres: la performance de la stratégie est relativement sensible à la sélection des paramètres, et différents paramètres peuvent entraîner des différences significatives dans la performance de la stratégie.
  2. Échec de la rupture: la rupture des prix ne garantit pas que la tendance se poursuivra définitivement, et il peut y avoir des cas d'échec de la rupture, entraînant des pertes consécutives pour la stratégie.
  3. Reconnaissance des tendances: la stratégie s'appuie sur l'indicateur EMA pour juger de la tendance, mais l'indicateur EMA peut présenter un décalage ou une erreur de jugement, ce qui affecte l'exactitude de la stratégie.
  4. Commerce fréquent: bien que la stratégie introduise un filtre de fréquence, l'ouverture et la fermeture fréquentes de positions peuvent encore se produire lorsque la volatilité du marché est élevée, ce qui augmente les coûts de négociation.
  5. Risque de stop-loss: la fixation du point de stop-loss peut ne pas éviter complètement le tirage maximal de la stratégie et des pertes importantes peuvent encore se produire dans des conditions de marché extrêmes.

Directions d'optimisation de la stratégie

  1. Optimisation des paramètres: Optimiser les paramètres clés de la stratégie, tels que la longueur de l'EMA, la longueur de la période de rétrospective, le pourcentage de stop loss, etc., afin de trouver la combinaison optimale de paramètres et d'améliorer la stabilité et la rentabilité de la stratégie.
  2. Filtrage du signal: après la génération du signal de rupture, d'autres indicateurs ou conditions techniques peuvent être introduits pour confirmer le signal une deuxième fois, améliorant la qualité du signal et réduisant les erreurs de jugement et les faux signaux.
  3. Juge de tendance: essayez d'utiliser d'autres indicateurs de jugement de tendance tels que MACD, DMI, etc., ou combinez plusieurs indicateurs pour juger conjointement de la tendance et améliorer la précision de la reconnaissance de la tendance.
  4. Stop loss dynamique: ajustez dynamiquement le point de stop loss en fonction des conditions de volatilité du marché, par exemple en utilisant l'indicateur ATR pour calculer le prix de stop loss dynamique ou en introduisant une stratégie de stop loss de trailing pour mieux contrôler le risque.
  5. Gestion des positions: optimiser la stratégie de gestion des positions, ajuster dynamiquement la taille des positions en fonction de la volatilité du marché et des conditions de capital du compte, contrôler l'exposition au risque d'une seule transaction et améliorer l'efficacité de l'utilisation du capital.

Résumé

Cette stratégie est une stratégie de suivi de tendance basée sur la rupture et le filtrage de fréquence. Elle utilise l'indicateur EMA pour déterminer la direction de la tendance, utilise la rupture de prix comme signal d'entrée, introduit un filtre de fréquence pour contrôler la fréquence de négociation et définit un point de stop-loss pour contrôler le risque. Les avantages de la stratégie résident dans le suivi de tendance, la confirmation de la rupture, le contrôle de la fréquence, la protection contre la perte de stop et la fermeture dynamique de la position, mais elle comporte également des risques potentiels tels que la sensibilité des paramètres, l'échec de la rupture, la reconnaissance de la tendance, le trading fréquent et le risque de stop-loss. Pour optimiser davantage la stratégie, nous pouvons commencer par des aspects tels que l'optimisation des paramètres, le filtrage des signaux, le jugement de tendance, le stop-loss dynamique et la gestion de position pour améliorer la stabilité et la rentabilité de la stratégie.


/*backtest
start: 2023-05-22 00:00:00
end: 2024-05-27 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("Trend Following with Breakout and Frequency Filter (Long Only)", overlay=true)

// 输入参数
emaLength = input.int(50, title="EMA长度")
lookbackPeriodMin = input.int(80, title="最短回溯期")
lookbackPeriodMax = input.int(120, title="最长回溯期")
stopLossPct = input.float(2, title="止损百分比") / 100  // 止损百分比
minHoldBars = input.int(10, title="最小持仓K线数量")  // 最小持仓K线数量

// 计算EMA
ema = ta.ema(close, emaLength)

// 计算最高价和最低价
highestHigh = ta.highest(high, lookbackPeriodMax)
lowestLow = ta.lowest(low, lookbackPeriodMax)

// 定义趋势方向
isBullish = close > ema

// 定义突破信号
breakoutCondition = (ta.crossover(close, highestHigh[lookbackPeriodMin]) or ta.crossover(close, highestHigh[lookbackPeriodMax])) and isBullish

// 计算止损点
stopLossLevelLong = close * (1 - stopLossPct)

// 绘制EMA
plot(ema, title="EMA", color=color.blue)

// 记录上次开仓时间
var float lastEntryTime = na

// 策略执行并标注信号
if (breakoutCondition and (na(lastEntryTime) or (time - lastEntryTime) > minHoldBars * timeframe.multiplier))
    strategy.entry("做多", strategy.long)
    label.new(bar_index, high, text="买入", style=label.style_label_up, color=color.green, textcolor=color.white)
    strategy.exit("止损", from_entry="做多", stop=stopLossLevelLong)
    lastEntryTime := time

// 定义趋势结束信号
exitCondition = close < ema

if (exitCondition and (strategy.position_size > 0) and (time - lastEntryTime) > minHoldBars * timeframe.multiplier)
    strategy.close("做多")
    label.new(bar_index, low, text="卖出", style=label.style_label_down, color=color.red, textcolor=color.white)

Relationnée

Plus de