Stratégie de retour à la moyenne mobile


Date de création: 2024-02-27 17:51:43 Dernière modification: 2024-02-27 17:51:43
Copier: 0 Nombre de clics: 601
1
Suivre
1617
Abonnés

Stratégie de retour à la moyenne mobile

Aperçu

La stratégie de réponse moyenne mobile est une stratégie de négociation de tendance très simple. Son idée centrale est de faire plus lorsque la moyenne mobile à court terme est inférieure à une certaine proportion de la moyenne mobile à long terme, et de faire un plafond lorsque la moyenne mobile à court terme traverse la moyenne mobile à long terme. La stratégie calcule d’abord une moyenne mobile à court terme et une moyenne mobile à long terme, puis génère un signal de négociation en fonction de la relation entre les deux moyennes mobiles.

Principe de stratégie

La stratégie s’appuie principalement sur deux moyennes mobiles, une moyenne mobile à court terme et une moyenne mobile à long terme. Le paramètre de la moyenne mobile à court terme est smallMAPeriod et le paramètre de la moyenne mobile à long terme est bigMAPeriod. La stratégie calcule d’abord les deux moyennes mobiles, puis compare la relation de taille entre les deux moyennes mobiles.

Lorsque la moyenne mobile à court terme tombe d’en haut vers le bas à un certain pourcentage de la moyenne mobile à long terme (définie par le paramètre %BelowToBuy), un signal d’achat est généré. Lorsque la moyenne mobile à court terme augmente ensuite et se redresse en traversant la moyenne mobile à long terme, un signal de vente est généré.

La stratégie capte les opportunités de retour à la moyenne entre les moyennes mobiles à court terme et les moyennes mobiles à long terme. Lorsque les moyennes mobiles à court terme sont inférieures d’une certaine manière aux moyennes mobiles à long terme, cela indique que l’actif est susceptible d’être sous-évalué et qu’il devrait y avoir une chance de revenir à la moyenne.

Analyse des avantages

La stratégie de réponse moyenne mobile présente les avantages suivants:

  1. Une approche simple, facile à comprendre et à mettre en œuvre
  2. Capture les points de basculement des tendances à court et à long terme, et juge avec précision les tendances du marché
  3. Les paramètres sont flexibles et permettent d’obtenir plus de signaux de négociation en ajustant le cycle de la moyenne mobile et le pourcentage de concession
  4. Le processus de retouche est simple et convient à l’optimisation de la simulation pour les transactions quantifiées

Cette stratégie permet d’obtenir de bons résultats en optimisant simplement les paramètres. En ajustant les paramètres des moyennes mobiles et des pourcentages de concession, il est possible de tester en retour les différents actifs du marché, tels que les actions, les devises et les crypto-monnaies, pour sélectionner la meilleure combinaison de paramètres.

Analyse des risques

Il y a aussi des risques liés à la stratégie de réponse moyenne mobile:

  1. Les signaux sont moins nombreux et les transactions sont moins fréquentes.
  2. La tendance à la récession est à la baisse.
  3. Des paramètres inappropriés peuvent entraîner des coûts de transaction plus élevés et des pertes de points de glissement en raison de transactions trop fréquentes.

Le risque peut être réduit par les moyens suivants:

  1. Ajustez les paramètres de manière à ce que le signal de transaction soit approprié
  2. La méthode de sortie et d’entrée par percée pour éviter les fausses percées
  3. Optimiser les combinaisons de paramètres en choisissant la période de la moyenne mobile et le pourcentage de concession

Direction d’optimisation

La stratégie de réponse moyenne mobile peut être optimisée dans les domaines suivants:

  1. Tester différentes données de prix, telles que les prix de clôture, les prix les plus élevés, les prix les plus bas et les prix typiques, comme sources de signaux stratégiques
  2. Essayez différents types de moyennes mobiles, comme les moyennes mobiles indicielles, les moyennes mobiles linéaires pondérées, les moyennes mobiles de Hull, etc.
  3. Augmentation des conditions de filtrage pour éviter les transactions inutiles sur des marchés qui ne sont pas tendance
  4. Les indicateurs de volume combinés permettent d’éviter les faux-bénéfices avec des prix plus élevés mais moins de volume
  5. Optimisation automatique des paramètres par apprentissage automatique ou algorithmes génétiques

Résumer

La stratégie de réaction de la moyenne mobile est simple, facile à comprendre et à mettre en œuvre. Les meilleurs résultats sont obtenus par l’optimisation des paramètres. Cependant, il existe également un risque de moins de signaux de transaction et de manquer facilement les virages de prix.

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

// @version=4
//
// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
//
// @author Sunil Halai
//
// This very simple strategy is an implementation of PJ Sutherlands' Jaws Mean reversion algorithm. It simply buys when a small moving average period (e.g. 2) is below
// a longer moving average period (e.g. 5) by a certain percentage, and closes when the small period average crosses over the longer moving average. 
// 
// If you are going to use this, you may wish to apply this to a range of investment assets, as the amount signals is low. Alternatively you may wish to tweak the settings to provide more
// signals.


strategy("Jaws Mean Reversion [Strategy]", overlay = true)

//Strategy inputs
source = input(title = "Source", defval = close)
smallMAPeriod = input(title = "Small Moving Average", defval = 2)
bigMAPeriod = input(title = "Big Moving Average", defval = 5)
percentBelowToBuy = input(title = "Percent below to buy %", defval = 3)


//Strategy calculation
smallMA = sma(source, smallMAPeriod)
bigMA =  sma(source, bigMAPeriod) 
buyMA = ((100 - percentBelowToBuy) / 100) * sma(source, bigMAPeriod)[0]

if(crossunder(smallMA, buyMA))
    strategy.entry("BUY", strategy.long)

if(crossover(smallMA, bigMA))
    strategy.close("BUY")