Stratégie de backtesting de la future ligne d'extension des prix


Date de création: 2024-02-05 14:00:01 Dernière modification: 2024-02-05 14:00:01
Copier: 0 Nombre de clics: 737
1
Suivre
1617
Abonnés

Stratégie de backtesting de la future ligne d’extension des prix

Aperçu

L’idée principale de cette stratégie est de déterminer la direction des prix futurs en traçant une ligne d’extension de prix futur et en combinant la relation du prix actuel avec cette ligne. Lorsque le prix est supérieur ou inférieur à la ligne d’extension, vous pouvez faire plus ou moins.

Principe de stratégie

Les lignes de démarcation futures (FLD) représentent le prix moyen, le prix le plus élevé ou le prix le plus bas d’une période future donnée. La stratégie utilise le FLD pour déterminer le mouvement futur des prix.

  1. En fonction de la longueur du cycle, calculer la période de déplacement du FLD, c’est-à-dire le prix futur du prix.
  2. Comparer le prix de clôture actuel avec le prix après la période de déplacement du FLD.
    • Lorsque le prix de clôture est inférieur au prix futur de la FLD, il est considéré comme un signal pessimiste.
    • Lorsque le prix de clôture est supérieur au prix à terme du FLD, il est considéré comme un signal baissier.
  3. Les opérations de plus ou moins courtes sont effectuées en fonction des signaux de hausse et de baisse.

Analyse des avantages

Les principaux avantages de cette stratégie sont les suivants:

  1. L’utilisation du FLD pour déterminer les mouvements futurs des prix est plus précise.
  2. Les paramètres de cycle peuvent être personnalisés pour différents environnements de marché.
  3. Le prix moyen, le prix le plus élevé ou le prix le plus bas peuvent être sélectionnés comme source de cartographie FLD.

Analyse des risques

Les principaux risques de cette stratégie sont les suivants:

  1. Le FLD lui-même peut être défaillant, entraînant des opportunités manquées ou des signaux erronés. Il peut être jugé en combinaison avec d’autres indicateurs.
  2. Le paramètre de cycle est mal réglé, ce qui peut entraîner un nombre excessif de signaux erronés. Il est nécessaire d’optimiser la longueur du cycle.
  3. Les événements soudains entraînent une forte fluctuation des prix, les prévisions de la FLD sont inefficaces. Des arrêts de perte peuvent être mis en place pour contrôler le risque.

Direction d’optimisation

Cette stratégie peut être optimisée dans les domaines suivants:

  1. Le filtrage des signaux, combiné à d’autres indicateurs, améliore l’exactitude des stratégies.
  2. Optimiser les paramètres de cycle pour trouver la meilleure combinaison de paramètres.
  3. Les banques centrales ont été créées pour gérer les pertes et les bénéfices.
  4. Selon les résultats des tests de retour, ajustez la règle de plus de blanchiment pour réduire les signaux erronés.

Résumer

Cette stratégie est une stratégie de suivi de tendance typique, qui consiste à comparer les prix avec les lignes d’extension des prix futurs après leur déplacement. La logique est généralement claire et facile à comprendre, et le risque de mise en œuvre est faible.

Code source de la stratégie
/*backtest
start: 2023-01-29 00:00:00
end: 2024-02-04 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=2
////////////////////////////////////////////////////////////////////
//  Copyright by HPotter v1.0 15/02/2017
//  An FLD is a line that is plotted on the same scale as the price and is in fact the 
//  price itself displaced to the right (into the future) by (approximately) half the 
//  wavelength of the cycle for which the FLD is plotted. There are three FLD's that can be 
//  plotted for each cycle:
//    An FLD based on the median price.
//    An FLD based on the high price.
//    An FLD based on the low price.
///////////////////////////////////////////////////////////////////
strategy(title="FLD's - Future Lines of Demarcation", overlay=true)
Period = input(title="Period", defval=40)
src = input(title="Source", defval=hl2)
reverse = input(false, title="Trade reverse")
FLD = src
pos = iff(FLD[Period] < close , 1,
       iff(FLD[Period] > close, -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(FLD, title="FLD", style=line, linewidth=1, color=black, offset = Period)