Tendance de l'EVWMA à la suite de la stratégie

Auteur:ChaoZhang est là., Date: 2023-12-12 16h37
Les étiquettes:

img

Résumé

Cette stratégie est conçue comme une stratégie simple de suivi de tendance basée sur l'indicateur EVWMA. Elle utilise une ligne rapide et une ligne lente pour construire l'indicateur EVWMA. Une position longue sera ouverte lorsque la ligne rapide franchit la ligne lente, et une position courte sera ouverte lorsque la ligne rapide franchit la ligne lente, pour suivre la tendance.

La logique de la stratégie

L'indicateur de base de cette stratégie est l'EVWMA, à savoir la moyenne mobile pondérée par volume élastique, qui intègre à la fois des informations sur les prix et le volume pour refléter dynamiquement l'évolution du marché en calculant sa propre période.

Plus précisément, la période de la ligne rapide est calculée comme la somme du volume des 10 barres récentes et 20 barres pour la ligne lente.

Lorsque la ligne rapide traverse la ligne lente, cela indique que le pouvoir d'achat se renforce pour aller long. Lorsque la ligne rapide traverse en dessous de la ligne lente, cela indique que le pouvoir de vente se renforce pour aller court. Avec une telle combinaison de lignes rapides et lentes, la stratégie peut capturer la tendance du marché de manière dynamique pour suivre la tendance.

Analyse des avantages

Le plus grand avantage de cette stratégie réside dans la conception dynamique de l'indicateur EVWMA pour répondre plus rapidement aux changements de prix et de volume, capturant ainsi la tendance du marché en temps réel, ce qui est très approprié pour les stratégies de suivi de tendance.

Risques et solutions

Le principal risque de cette stratégie est l'inadéquation des paramètres de l'indicateur EVWMA. Si les périodes des lignes rapides et lentes ne sont pas réglées correctement, cela peut générer des faux signaux excessifs. De plus, les stratégies de suivi des tendances ont elles-mêmes des inconvénients lorsque la tendance du marché s'inverse fortement.

Pour résoudre ces problèmes, nous pouvons optimiser les paramètres et ajuster les périodes de calcul des lignes rapides et lentes pour trouver la meilleure combinaison. De plus, un stop loss peut être défini pour contrôler le risque de perte.

Directions d'optimisation

Il existe des possibilités d'optimisation supplémentaire de cette stratégie. Par exemple, d'autres indicateurs tels que la rupture du volume de négociation, les bandes de Bollinger, etc., peuvent être incorporés pour confirmer les signaux, améliorant ainsi la stabilité de la stratégie.

En ce qui concerne les aspects de négociation, un stop loss dynamique, un stop loss de suivi et d'autres moyens peuvent également être conçus pour contrôler les risques.

Résumé

Cette stratégie tire parti de la conception dynamique de l'indicateur EVWMA et intègre des informations de volume pour construire une stratégie de suivi de tendance efficace. Elle peut répondre rapidement aux changements de prix et capturer les tendances du marché.


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

//@version=4
strategy("QuantNomad - EVWMA Cross Strategy", shorttitle="EVWMA Cross", overlay=true)

// Inputs
fast_sum_length = input(10, title = "Fast Sum Length", type = input.integer)
slow_sum_length = input(20, title = "Slow Sum Length", type = input.integer)

// Calculate Volume Period
fast_vol_period = sum(volume, fast_sum_length)
slow_vol_period = sum(volume, slow_sum_length)

// Calculate EVWMA
fast_evwma = 0.0
fast_evwma := ((fast_vol_period - volume) * nz(fast_evwma[1], close) + volume * close) / (fast_vol_period)

// Calculate EVWMA
slow_evwma = 0.0
slow_evwma := ((slow_vol_period - volume) * nz(slow_evwma[1], close) + volume * close) / (slow_vol_period)

// Plot 
plot(fast_evwma, title = "EVWMA Fast", linewidth = 2, color = color.red)
plot(slow_evwma, title = "EVWMA Slow", linewidth = 2, color = color.green)

// Strategy
strategy.entry("Long",   true, when = crossover(fast_evwma, slow_evwma))
strategy.entry("Short", false, when = crossunder(fast_evwma, slow_evwma))

Plus de