Stratégie de test de retour du graphique de barre de changement en pourcentage

Auteur:ChaoZhang est là., Date: 2023-11-15 à 15h41
Les étiquettes:

img

Résumé

Cette stratégie calcule la variation en pourcentage du prix de clôture de la barre actuelle par rapport au prix de clôture N barres auparavant, et affiche des barres d'histogrammes de différentes couleurs pour déterminer la tendance.

La logique de la stratégie

  1. Définir les paramètres de stratégie par entrée, y compris la largeur de la barre, l'affichage de la variation de prix ou de la variation en pourcentage, la période de rétrospective, les seuils d'achat/de vente, etc.

  2. Calculer la différence de prix ou la différence en pourcentage entre le prix de clôture du bar actuel et le prix de clôture il y a N bar.

  3. Définir les lignes de seuil d'achat et de vente.

  4. Affichage des barres d'histogramme dans différentes couleurs en fonction du pourcentage de changement.

  5. Définition de long lorsque la variation en pourcentage est supérieure au seuil d'achat et de court lorsque celui-ci est inférieur au seuil de vente.

  6. Couleur des barres d'histogramme selon la direction de la position.

  7. Entrée et sortie en fonction de la direction de position.

Les avantages

  1. Affichage intuitif des tendances de variation des prix pour la prise de décision.

  2. Signaux d'entrée et de sortie clairs en combinaison avec des indicateurs de tendance.

  3. Les paramètres peuvent être optimisés pour différents produits et délais.

  4. Une logique simple et claire, facile à comprendre et à modifier.

  5. Une bonne visualisation pour un jugement rapide des tendances.

Les risques

  1. Préoccupé par les faux signaux, une mauvaise sélection des entrées peut entraîner des pertes.

  2. Les paramètres doivent être ajustés pour les produits à forte volatilité, ce qui accroît la probabilité de perte.

  3. Pas de compte rendu pour les événements soudains comme des nouvelles baissières importantes.

  4. Une courte période de rétroessai peut ne pas permettre de déterminer la robustesse des paramètres.

  5. Manquer des occasions de renversement sans temps d'arrêt.

Les risques peuvent être contrôlés par l'optimisation des paramètres, le filtrage du signal avec d'autres indicateurs, le stop loss, l'extension de la période de backtest, etc.

Directions d'optimisation

  1. Considérez la combinaison avec d'autres indicateurs tels que les indicateurs de tendance et de volatilité pour confirmer les signaux.

  2. Introduire des algorithmes d'apprentissage automatique pour optimiser les paramètres.

  3. Mettre en place un stop loss dynamique pour contrôler le montant de la perte unique.

  4. Incorporer des indicateurs de sentiment et des nouvelles pour éviter les impacts soudains des événements.

  5. Ajouter des filtres d'heure de négociation ou de session.

  6. Optimiser la période de backtest avec un délai plus long.

Résumé

Cette stratégie affiche le pourcentage de changement de prix en temps réel avec des barres d'histogramme et utilise des lignes de tendance pour la prise de décision, formant des signaux de trading clairs. La logique est simple pour un fonctionnement facile. Mais les risques existent et doivent être contrôlés via l'optimisation, le filtrage, le stop loss, etc.


/*backtest
start: 2022-11-08 00:00:00
end: 2023-11-14 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=2
////////////////////////////////////////////////////////////
//  Copyright by HPotter v3.0 27/07/2018
//
//  This histogram displays price or % change from previous bar. 
//
// You can change long to short in the Input Settings
// WARNING:
// - For purpose educate only
// - This script to change bars colors.
////////////////////////////////////////////////////////////
strategy(title="Percent change bar chart Backtest", precision = 2)
input_barwidth = input(4, title="Bar Width")
input_percentorprice = input(false, title="Price Change")
input_barsback = input(1, title="Look Back")
SellZone = input(-0.33, minval=0.01, step = 0.01)
BuyZone = input(0.33, minval=0.01, step = 0.01)
reverse = input(false, title="Trade reverse")
hline(0, color=blue, linestyle=line)
hline(BuyZone, color=green, linestyle=line)
hline(SellZone, color=red, linestyle=line)
xPrice = close
xPrice1 = iff(input_percentorprice, xPrice - xPrice[input_barsback], ((xPrice - xPrice[input_barsback]) * 100)/ xPrice[input_barsback])
colorg = iff(xPrice1 < 0, red, green)
pos = iff(xPrice1 > BuyZone, 1,
       iff(xPrice1 < SellZone, -1, nz(pos[1], 0))) 
possig = iff(reverse and pos == 1, -1,
          iff(reverse and pos == -1, 1, pos))	   
if (possig == 1) 
    strategy.entry("Long", strategy.long)
if (possig == -1)
    strategy.entry("Short", strategy.short)	   	    
barcolor(possig == -1 ? red: possig == 1 ? green : blue ) 
plot(xPrice1, color=colorg, style = histogram, linewidth = input_barwidth, title="Change")

Plus de