Stratégie d'extraction de tendance de filtrage passe-bande


Date de création: 2024-01-03 15:22:49 Dernière modification: 2024-01-03 15:22:49
Copier: 0 Nombre de clics: 641
1
Suivre
1621
Abonnés

Stratégie d’extraction de tendance de filtrage passe-bande

Aperçu

La stratégie d’extraction de tendance à ondes de flux est une stratégie de suivi de tendance des actions basée sur un filtre à ondes de flux. Cette stratégie utilise des moyennes mobiles pondérées par indices et des ondes de flux pour traiter la séquence de prix, extraire les composants de tendance du prix et utiliser certains paramètres comme signal pour établir une position de paix.

Principe de stratégie

La stratégie commence par la construction d’une moyenne mobile pondérée à deux indices, contrôlant la durée et le glissement de la moyenne mobile en ajustant les paramètres Length et Delta. Ensuite, en utilisant un ensemble de transformations mathématiques, extraire les composants de tendance de la séquence de prix et les stocker dans une variable xBandpassFilter. Enfin, calculer la moyenne mobile simple de xBandpassFilter, xMean, comme indicateur de la construction d’une position et d’une position.

Lorsque le paramètre Trigger est défini sur xMean, il fait plus de tête et fait une tête blanche. La sensibilité de la construction et de l’entreposage peut être contrôlée en réglant le niveau de Trigger.

Analyse des avantages

  1. L’utilisation d’une moyenne mobile pondérée à l’indice double permet de filtrer efficacement une partie du bruit de la séquence de prix, rendant la stratégie plus stable.
  2. Le filtre à bande permet d’extraire uniquement les composants de tendance de la séquence de prix, évitant ainsi d’être induit en erreur par les mouvements de choc, rendant la stratégie plus stable et plus fiable.
  3. Les paramètres de stratégie sont moins nombreux, il est plus facile d’ajuster et de contrôler les risques.

Analyse des risques

  1. La stratégie est retardée dans le temps et risque de manquer l’occasion d’une reprise rapide des cours.
  2. Les moyennes mobiles pondérées à double indice et les filtres à bande passante ont un effet de filtrage bas, filtrant les signaux à haute fréquence et réduisant la sensibilité de la stratégie.
  3. Si les paramètres sont mal définis, les effets de filtrage sont trop puissants et des opportunités de tendance plus fortes peuvent être manquées.

Il est possible d’améliorer la latence en réduisant le paramètre de longueur de manière appropriée, afin de réguler la sensibilité des stratégies de contrôle de niveau de déclenchement.

Direction d’optimisation

  1. Vous pouvez envisager d’ajouter une stratégie de stop-loss pour contrôler les pertes individuelles.
  2. La stabilité de la stratégie peut être améliorée par un système de double équilibre à court et à long terme.
  3. Les signaux de retournement peuvent être évalués en fonction d’autres indicateurs, tels que le volume des transactions sur le marché, afin d’éviter d’être pris au piège dans une situation de choc.
  4. Les paramètres peuvent être optimisés à l’aide d’apprentissage automatique ou d’algorithmes génétiques pour rendre la stratégie plus stable et plus fiable.

Résumer

La stratégie est globalement stable et fonctionne bien dans les marchés à forte tendance. Elle peut être optimisée de plusieurs façons pour maintenir une rentabilité stable dans un environnement plus large. La stratégie mérite d’être étudiée et appliquée.

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

//@version = 2
////////////////////////////////////////////////////////////
//  Copyright by HPotter v1.0 14/12/2016
// The related article is copyrighted material from Stocks & Commodities Mar 2010
//
// You can use in the xPrice any series: Open, High, Low, Close, HL2, HLC3, OHLC4 and ect...
// You can change long to short in the Input Settings
// Please, use it only for learning or paper trading. Do not for real trading.
////////////////////////////////////////////////////////////
strategy(title="Extracting The Trend Strategy Backtest")
Length = input(20, minval=1)
Delta = input(0.5)
Trigger = input(0)
reverse = input(false, title="Trade reverse")
hline(Trigger, color=blue, linestyle=line)
xPrice = hl2
beta = cos(3.1415 * (360 / Length) / 180)
gamma = 1 / cos(3.1415 * (720 * Delta / Length) / 180)
alpha = gamma - sqrt(gamma * gamma - 1)
xBandpassFilter = 0.5 * (1 - alpha) * (xPrice - xPrice[2]) + beta * (1 + alpha) * nz(xBandpassFilter[1]) - alpha * nz(xBandpassFilter[2])
xMean = sma(xBandpassFilter, 2 * Length)
pos = iff(xMean > Trigger, 1,
	   iff(xMean < Trigger, -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(xMean, color=red, title="ExTrend")