Système de trading adaptatif à moyenne mobile Donchian


Date de création: 2024-02-21 15:08:27 Dernière modification: 2024-02-21 15:08:27
Copier: 3 Nombre de clics: 715
1
Suivre
1617
Abonnés

Système de trading adaptatif à moyenne mobile Donchian

Aperçu

Le système de négociation d’une moyenne mobile autodidacte de Dongguan est une stratégie de négociation quantitative qui suit la tendance des prix. Cette stratégie utilise l’indicateur de la voie de Dongguan, combiné à une moyenne mobile longue et courte, pour juger et suivre la tendance des prix, afin de capturer la tendance des prix des lignes moyennes et longues et de négocier de manière tendancieuse.

Principe de stratégie

La stratégie commence par calculer la vraie amplitude. La vraie amplitude est la portée de la variation de prix entre le prix de clôture de la ligne K précédente et le prix le plus élevé et le prix le plus bas de la ligne K actuelle.

Lorsque la longueur de la moyenne mobile plus la largeur de la bande est passée au-dessus du prix, faites plus; lorsque la longueur de la moyenne mobile moins la largeur de la bande est passée en dessous du prix et que la moyenne mobile moins la largeur de la bande est passée en dessous du prix, faites vide. Les conditions de placement sont les suivantes:

Ainsi, la stratégie d’ajustement de la bande passante du canal de Dongguan par la dynamique de l’amplitude d’onde réelle, combinée au filtrage des doubles moyennes mobiles, permet de suivre efficacement les tendances des prix des longues et moyennes lignes et de réduire les faux signaux, ce qui permet d’obtenir des opportunités de négociation stables sur les longues lignes.

Analyse des avantages

Cette stratégie présente les avantages suivants:

  1. L’utilisation de la longueur d’onde réelle pour ajuster dynamiquement la bande passante du canal, éviter les paramètres morts et mieux s’adapter aux changements du marché.

  2. Les doubles moyennes mobiles permettent de filtrer efficacement le bruit et de réduire les faux signaux.

  3. En suivant les tendances à moyen et long terme, vous pouvez réduire les transactions répétitives, réduire la fréquence des transactions et obtenir des opportunités de profit durables sur de longues périodes.

  4. La logique de la stratégie est simple, claire et facile à mettre en œuvre, avec une forte tolérance à l’erreur, adaptée aux transactions de quantification automatique.

Risque et optimisation

Cette stratégie comporte aussi des risques:

  1. Il est difficile pour les traders de longue ligne de saisir le moment d’entrée de la courte ligne. Il est possible de juger de la situation de la courte ligne et d’optimiser l’entrée de la courte ligne en combinant les indicateurs de volatilité.

  2. Les paramètres d’optimisation varient selon les secteurs et les individus. Des combinaisons de paramètres de préférence dynamiques peuvent être envisagées.

  3. Les points d’arrêt doivent être assouplis lorsque des événements soudains entraînent des variations importantes de la tendance.

Résumer

Dans l’ensemble, le système de négociation en moyenne mobile d’adaptation automatique est une stratégie de quantification stable, simple et facile à mettre en œuvre. La stratégie utilise des canaux dynamiques et des filtres bi-homogénéisés, permettant de suivre efficacement les tendances de longueur moyenne du marché, de réduire la fréquence des transactions et d’obtenir des gains durables sur de longues périodes.

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

// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © dongyun

//@version=4
strategy("唐齐安移动平均交易系统", overlay=true)

longperiod = input(20,'长线')
shortperiod = input(5,'短线')
bandfactor = input(1.0,'')

TrueHigh = 0.0
TrueLow = 0.0
TrueRange = 0.0

TrueHigh := close[1] > high ? close[1] : high
TrueLow := close[1] < low ? close[1] : low
TrueRange := TrueHigh - TrueLow
AvgTrueRange = sma(TrueRange,longperiod)

MAlong = sma(close,longperiod)
MAshort = sma(close,shortperiod)
band =  AvgTrueRange * bandfactor

if close > MAlong[1] + band[1] and close >  MAshort[1] + band[1]
	strategy.entry("Long", strategy.long, when=strategy.position_size < 1)
else
	if close < MAlong[1] - band[1] and close < MAshort[1] - band[1]
		strategy.entry("Short", strategy.short, when=strategy.position_size > -1)

if close < MAlong[1] - band[1] or close < MAshort[1] - band[1]
	strategy.close("Long", when=strategy.position_size > 0)
else
	if close > MAlong[1] + band[1] or close > MAshort[1] + band[1]
		strategy.close("Short", when=strategy.position_size < 0)