Basé sur une stratégie de suivi de tendance inversée


Date de création: 2024-02-06 10:03:40 Dernière modification: 2024-02-06 10:03:40
Copier: 2 Nombre de clics: 538
1
Suivre
1617
Abonnés

Basé sur une stratégie de suivi de tendance inversée

Aperçu

La stratégie de suivi de revers est une stratégie de suivi de tendance qui utilise la moyenne mobile comme filtre de marché pour établir des positions en cas de signal de revers, réaliser des achats et des ventes à bas prix, suivre la tendance après le revers du cours de l’action et obtenir des gains supplémentaires.

Principe de stratégie

La logique centrale de la stratégie est la suivante: établir des positions en hausse lorsque le prix de clôture est inférieur au point le plus bas de N jours auparavant; établir des positions en hausse lorsque le prix de clôture est supérieur au point le plus élevé de N jours auparavant. De plus, il utilise la moyenne mobile simple de 200 jours comme filtre de marché et ne crée des positions en hausse que lorsque le prix est supérieur à la moyenne mobile de 200 jours.

Cette stratégie est basée sur la théorie de l’inversion des prix, qui considère que la tendance des prix des actions se produit à plusieurs reprises. Lorsque le prix tombe au-dessous du bas formé il y a N jours, c’est le moment d’établir une position de plus; lorsque le prix franchit le haut il y a N jours, cela indique que le profit de l’inversion s’est éteint et que c’est le moment de la fermeture de la position.

Plus précisément, la stratégie comprend les modules centraux suivants:

  1. Filtre du marché

L’utilisation d’une moyenne mobile simple de 200 jours comme indicateur de jugement des tendances du marché. La création d’une position est autorisée uniquement lorsque le cours de l’action est supérieur à 200 antennes. Cela permet d’éviter la création d’une position en cours de marché dans un marché haussier ou de créer une position en cours de marché dans un marché baissier.

  1. Détermination du signal de retour

Logique de jugement: prix de clôture < prix le plus bas de N jours

Le prix de clôture est inférieur à la valeur la plus basse de N jours (par défaut 5 jours), indiquant une rupture de la baisse et un signal d’achat.

  1. Détermination du signal d’arrêt

Logique de jugement: prix de clôture > prix le plus élevé il y a N jours

Le prix de clôture est supérieur au prix le plus élevé observé il y a N jours (par défaut 5 jours), indiquant que la reprise est terminée et lançant un signal de stop.

  1. Stop loss à 5%

Pour éviter une perte excessive, définissez une limite de 5% à partir du prix d’entrée en bourse.

Analyse des avantages

La stratégie présente les principaux avantages suivants:

  1. La théorie de l’inversion des prix permet de créer des positions au début de l’inversion des cours et de suivre les tendances ultérieures.
  2. La combinaison des moyennes mobiles comme filtre de marché permet d’éviter de créer des positions de survente ou de dépréciation inappropriées et de réduire le risque de piège.
  3. Les signaux de retournement sont déterminés à partir des prix les plus élevés et les plus bas de N jours précédents. Les paramètres sont flexibles et peuvent être ajustés en fonction de la valeur de N sur le marché.
  4. Le stop loss est réglé à 5%, ce qui permet d’arrêter les pertes rapidement et d’éviter des pertes individuelles excessives.
  5. Le groupe a réalisé des ventes à bas prix et des ventes à haut prix, et a suivi la reprise des cours des actions.

Analyse des risques

Cette stratégie comporte aussi des risques:

  1. Les signaux de retournement des cours des actions peuvent être de fausses ruptures et ne pas déclencher de véritables retournements de tendance, ce qui entraîne des pertes.
  2. Le paramètre N jours est mal réglé, ce qui peut entraîner une perte de temps réelle ou un arrêt prématuré.
  3. Si le stop loss est trop élevé, la perte individuelle peut être trop importante; si le stop loss est trop petit, le stop loss peut être trop prématuré.
  4. Cette stratégie est mieux adaptée aux indices boursiers et à certaines actions qui ont une tendance à la hausse établie, mais ne convient pas aux transactions de ruban adhésif dans l’ensemble du bassin d’actions.

Direction d’optimisation

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

  1. Optimiser les paramètres des moyennes mobiles et tester l’efficacité des différents paramètres du jour.
  2. Testez les paramètres N pour ajuster le jugement du signal de retournement et recherchez la combinaison optimale de paramètres.
  3. Optimiser les paramètres de stop loss et équilibrer le stop loss avec le temps de tenue de position.
  4. Des filtres tels que des indicateurs de dynamique ont été ajoutés pour rendre les signaux de trading plus fiables.
  5. Optimisation de la rétroaction en définissant des combinaisons de paramètres indépendantes pour les différentes variétés de transactions.

Résumer

La stratégie de suivi inverse est combinée à des indicateurs de moyenne mobile. Après avoir déterminé l’environnement du marché, la théorie de l’inversion choisit le moment de l’achat. Le mécanisme d’arrêt et de perte contrôle le risque, réalisant un achat bas et une vente élevée, obtenant un gain excessif.

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

//  @version=4
//  © HermanBrummer
//  This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/

//  BUYS    WHEN THE CLOSE IS SMALLER THAN THE LOW OF 5 DAYS AGO
//  SELLS   WHEN THE CLOSE IS HIGHER THEN THE HIGH OF 5 DAYS AGO
//  USES A 200 MOVING AVERGE AS A FILTER, AND DOESN'T TAKE TRADES IF THE MARKET IS BELOW IT'S 200 MA
//  USES A 5% STOP LOSS FROM ENTRIES

strategy("REVERSALS", overlay=true)

StopLoss    = input(.95, step=0.01)
HowManyBars = input( 5 )

///     EXITS
if  close > sma(high,HowManyBars)[1]
    strategy.close_all()


///     ENTRIES
MarketFilter    = sma(close, 200)
F1              = close < sma(low,HowManyBars)[1]
F2              = close > MarketFilter
plot(MarketFilter, "MarketFilter", color.yellow)

strategy.entry("Long", true, 1, when=F1 and F2)


///     STOP LOSS
StopLossLine    = strategy.position_avg_price * StopLoss
plot(StopLossLine, "StopLossLine", #FF0000)
strategy.exit("Exit", stop=StopLossLine)