Stratégie de suivi de l'inversion du moment

Auteur:ChaoZhang est là., Date: 2024-01-17 15h46 et 21h
Les étiquettes:

img

Résumé

Cette stratégie utilise l'indicateur SAR parabolique pour identifier les points tournants dans les tendances des prix des actions et entre dans des positions longues ou courtes lorsque des renversements se produisent.

La logique de la stratégie

L'indicateur de base de cette stratégie est le SAR parabolique. Cet indicateur peut identifier les tendances à la hausse et à la baisse des cours des actions. Lorsque les prix augmentent, les points SAR restent en dessous des prix. Lorsque les prix baissent, les points SAR sautent au-dessus des prix. La stratégie détecte le croisement entre les points SAR et les points SAR en tant que signaux de trading.

La condition longue est:closeau-dessussar, indiquant que la ligne de prix a franchi les points SAR en dessous, un signal long.closeen bassarAinsi, la logique de base de cette stratégie est de suivre les points d'inversion de l'élan des prix et de négocier sur les croisements.

Les avantages

Le plus grand avantage de cette stratégie est qu'elle peut identifier automatiquement les points tournants des tendances des prix sans interférence manuelle, évitant ainsi les erreurs courantes telles que la poursuite des pics et la suppression des baisses.

En outre, le SAR réagit de manière sensible aux changements de prix, capturant les retraits mineurs à temps. Ceci est important pour les stratégies visant un taux de gain élevé et des transactions fréquentes.

Les risques

Le risque majeur est que le SAR puisse réagir de manière excessive à de légères oscillations de prix, générant de faux signaux et provoquant une survente, une augmentation des coûts et un glissement.

En outre, dans les fortes tendances haussières ou baissières, les paramètres SAR comme les valeurs de départ et d'incrément peuvent avoir un impact sur la précision et la rapidité de l'observation des renversements de tendance.

Une dimensionnement inapproprié des positions, une réaction excessive aux signaux SAR peuvent entraîner une exposition fluctuante, ce qui accroît les difficultés pratiques dans le trading.

Amélioration

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

  1. Optimiser les paramètres SAR pour une plus grande précision des signaux

  2. Ajouter des filtres pour éviter les faux signaux causés par SAR

  3. Utiliser une dimension de position appropriée et un stop loss pour contrôler les risques

  4. Incorporer des filtres de tendance pour éviter les sauts de marée sur les marchés variés

  5. Optimiser les prix d'entrée et de sortie en tenant compte des coûts et du glissement pour améliorer l'efficacité

Conclusion

La stratégie repose principalement sur le SAR pour déterminer les points d'inversion de tendance. Il a une capacité d'identification de tendance fiable. Lorsqu'il est optimisé, il peut servir de tendance efficace suivant la stratégie en ajustant automatiquement les positions pour capturer les mouvements de prix directionnels. Mais le bouillonnement des positions doit être contrôlé et le risque de faux signaux doit être atténué.


/*backtest
start: 2023-12-17 00:00:00
end: 2024-01-16 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("Parabolic SAR Strategy", shorttitle="PSAR", overlay=true, default_qty_type=strategy.percent_of_equity, default_qty_value=10)

// Parabolic SAR settings
start = input(0.02, title="Start")
increment = input(0.02, title="Increment")
maximum = input(0.2, title="Maximum")

// Calculate Parabolic SAR
sar = ta.sar(start, increment, maximum)

// Plot Parabolic SAR on the chart
plot(sar, color=color.red, title="Parabolic SAR")

// Strategy logic
longCondition = ta.crossover(close, sar)
shortCondition = ta.crossunder(close, sar)

// Execute strategy orders
strategy.entry("Long", strategy.long, when=longCondition)
strategy.entry("Short", strategy.short, when=shortCondition)

// Plot buy and sell signals on the chart
plotshape(series=longCondition, title="Buy Signal", color=color.green, style=shape.labelup, location=location.belowbar, text="Buy")
plotshape(series=shortCondition, title="Sell Signal", color=color.red, style=shape.labeldown, location=location.abovebar, text="Sell")

// Calculate equity manually
equity = strategy.equity
equity_str = str.tostring(equity)
equity_plot = plot(equity, title="Equity", color=color.blue, linewidth=2)

// Update equity plot only on bar close to avoid repainting issues
label.new(bar_index, na, text=equity_str, style=label.style_none, color=color.blue, yloc=yloc.abovebar)


Plus de