L'idée principale de cette stratégie est de tracer le prix d'entrée et le prix d'équilibre après l'ouverture d'une position, pour afficher visuellement le niveau de prix où une rupture au-dessus du prix d'entrée entraînerait un profit.
Le code entre long lorsque le croisement SMA se produit et entre court sur le croisement SMA. Il calcule ensuite le prix d'entrée et le prix d'équilibre après frais. Le prix d'équilibre est calculé comme suit: pour long, prix d'équilibre = prix d'entrée * (1 + frais); pour court, prix d'équilibre = prix d'entrée * (1 - frais). Enfin, il trace la ligne de prix d'entrée et la ligne de prix d'équilibre, remplissant l'espace entre eux.
De cette façon, une fois que le prix franchit la ligne de prix d'entrée, cela signifie que le commerce est maintenant rentable. Les traders peuvent utiliser la ligne de rentabilité pour définir des niveaux de prise de profit ou d'arrêt de perte pour verrouiller les profits.
Les éléments clés du code sont les suivants:
Avec des vérifications simples des conditions d'entrée, le calcul du prix de rentabilité et la trace des lignes auxiliaires, la stratégie de prix de rentabilité est mise en œuvre.
Les avantages de cette stratégie sont les suivants:
L'affichage intuitif du bénéfice/perte, peut rapidement juger si le prix a atteint l'objectif de profit.
Peut utiliser la ligne d'équilibre pour définir les niveaux de prise de profit/arrêt de perte afin d'éviter une augmentation des pertes.
Code simple et facile à comprendre, facile à mettre en œuvre et à ajuster.
Peut être intégré dans ses propres stratégies de négociation, en utilisant la ligne de rentabilité pour gérer ses positions.
Facile à modifier les paramètres des frais pour différents échanges et produits.
Peut optimiser l'entrée en ajustant les périodes SMA.
Les risques de cette stratégie comprennent:
Le SMA est de nature retardée, il peut manquer les changements de prix.
La ligne de rebond ne peut pas éviter complètement les pertes.
Aucun mécanisme de sortie, les traders doivent surveiller eux-mêmes le P/L.
Des paramètres de redevance incorrects peuvent entraîner un calcul erroné du seuil de rentabilité.
Le glissement n'est pas pris en compte.
Aucun stop loss, peut entraîner de grosses pertes.
Les solutions sont les suivantes:
Considérez des indicateurs plus sensibles comme le MACD.
Ajouter un indicateur de tendance pour éviter les transactions contre tendance.
Ajoutez la logique de prise de profit et de stop-loss pour les sorties automatiques.
Fixez des frais précis basés sur l'échange réel.
Ajouter un glissement fixe pour des entrées et sorties optimales.
Ajoutez un stop-loss pour limiter la perte maximale.
Quelques façons d'optimiser la stratégie:
Remplacez la SMA par des indicateurs plus avancés comme le MACD ou le KDJ.
Ajouter un filtre de tendance pour éviter les transactions contre tendance.
Optimiser les périodes SMA pour une meilleure précision d'entrée.
Ajoutez la logique de prise de profit et de stop-loss pour les sorties automatiques.
Réglez le glissement pour le backtest et le trading en direct.
Optimiser les paramètres de frais pour qu'ils correspondent à la réalité.
Ajoutez un stop-loss pour limiter la perte maximale.
Exécuter une stratégie sur plusieurs délais pour la diversification.
Incorporer des changements de volume pour améliorer l'entrée.
Utilisez l'apprentissage automatique pour optimiser les paramètres.
Cette stratégie affiche intuitivement le niveau de prix d'équilibre où une rupture peut entraîner des bénéfices. C'est une stratégie auxiliaire simple et pratique avec des avantages tels qu'un code simple et une mise en œuvre facile. Mais les risques doivent également être abordés. Nous pouvons l'optimiser à de nombreux égards pour la rendre plus robuste et rentable. Dans l'ensemble, elle fournit un excellent exemple de référence qui mérite d'être étudié et appliqué.
/*backtest start: 2022-11-15 00:00:00 end: 2023-11-15 00:00:00 period: 1d basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ // © NikitaDoronin //@version=4 strategy("Plot Break-even Price", overlay=true) /// Break-even calculation ep = 0.0 ep := na(ep[1]) ? na : ep[1] p = 0.0 p := na(p[1]) ? na : p[1] /// Fees Input fee_inp = input(0.25, title='Price Change in %', step=0.1)/100 /// Your Strategy calculation longCondition = crossover(sma(close, 14), sma(close, 28)) shortCondition = crossunder(sma(close, 14), sma(close, 28)) /// Stategy Entry if (longCondition) ep := close p := close * (1 + fee_inp) strategy.entry("My Long Entry Id", strategy.long) if (shortCondition) ep := close p := close * (1 - fee_inp) strategy.entry("My Short Entry Id", strategy.short) /// Plot Break-even Price p1 = plot(ep, color = color.red, transp = 85) p2 = plot(p, color = color.green) fill(p1, p2, color = color.red, transp = 85)