Stratégie de négociation des moyennes mobiles de puissance haussière et baissière

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

img

Résumé

Cette stratégie a été développée par le Dr Alexander Elder sur la base de sa théorie des moyennes mobiles de force haussière et baissière pour mesurer la pression d'achat et de vente sur le marché. Elle est couramment utilisée avec le système de négociation Triple Screen, mais peut également être utilisée seule.

La puissance haussière est calculée en soustrayant l'EMA de 13 jours du sommet de la journée.

La logique de la stratégie

Cette stratégie est basée sur la théorie du pouvoir taureau et ours du Dr Alexander Elder. Elle juge les tendances et la puissance du marché en calculant les indicateurs de puissance taureau et ours. Plus précisément, l'indicateur de puissance taureau reflète la puissance des acheteurs, qui est calculée en soustrayant l'EMA de 13 jours du prix le plus élevé. L'indicateur de puissance taureau reflète la puissance des vendeurs, qui est calculée en soustrayant l'EMA de 13 jours du prix le plus bas. Lorsque la puissance taureau tombe à un certain seuil, un court signal est généré. Lorsque la puissance taureau atteint un certain seuil, un long signal est généré. Ainsi, nous pouvons juger la tendance du marché et battre le marché en comparant la force relative de la puissance d'achat et de vente.

Dans le code, nous utilisons des hauts, des bas et une EMA de 13 jours pour calculer les indicateurs de puissance haussière et baissière. Définir des seuils de déclenchement afin que les positions longues ou courtes correspondantes soient ouvertes lorsque les indicateurs sont déclenchés. En même temps, définir un stop loss et prendre une logique de profit pour gérer les positions. Dans l'ensemble, cette stratégie compare le pouvoir relatif des acheteurs et des vendeurs pour déterminer la force des tendances du marché pour le trading.

Analyse des avantages

Les avantages de cette stratégie sont les suivants:

  1. Efficace pour juger des tendances du marché et effectuer des tests antérieurs en utilisant le pouvoir d'achat et de vente
  2. Signaux d'achat et de vente clairs et faciles à juger
  3. Mécanisme fiable d'arrêt des pertes pour contrôler le risque
  4. Fonctionne encore mieux lorsqu'il est combiné avec le système de trading Triple Screen

Analyse des risques

Certains risques de cette stratégie sont les suivants:

  1. Paramètres subjectifs qui doivent être ajustés pour différents marchés
  2. Les indicateurs de puissance haussière et baissière peuvent produire des signaux trompeurs
  3. Le placement incorrect d'un stop loss peut augmenter les pertes
  4. Les performances dépendent des instruments de négociation et des délais

Les contre-mesures:

  1. Optimiser les paramètres pour les différents marchés
  2. Ajouter des filtres à l'aide d'autres indicateurs
  3. Optimiser la logique de stop loss pour contrôler strictement le risque
  4. Sélectionner les instruments de négociation et les délais appropriés

Directions d'optimisation

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

  1. Optimiser les paramètres de la moyenne mobile pour différentes périodes
  2. Ajouter d' autres indicateurs comme le MACD pour filtrer les signaux
  3. Optimiser la logique de stop loss et de take profit, comme la trail stop loss
  4. Utiliser l'apprentissage automatique pour optimiser automatiquement les paramètres
  5. Incorporer l'apprentissage en profondeur pour prédire les signaux d'achat/vente

En résumé, cette stratégie a beaucoup de marge d'optimisation dans des aspects tels que les paramètres, les signaux, le contrôle des risques, etc. pour la rendre plus robuste et fiable.

Conclusion

Cette stratégie juge les tendances et la puissance du marché à l'aide des indicateurs de puissance haussière et baissière développés par le Dr Elder sur la base de la théorie de la puissance d'achat / vente. Les règles du signal sont relativement simples et claires. Les avantages incluent le jugement des tendances via la puissance et le contrôle du risque par le biais d'un stop loss. Elle comporte également des risques tels que des paramètres subjectifs et des signaux trompeurs. Nous pouvons améliorer la stabilité et la rentabilité en optimisant les paramètres, en ajoutant des filtres de signal et un stop loss strict.


/*backtest
start: 2023-12-12 00:00:00
end: 2023-12-19 00:00:00
period: 30m
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version = 5
////////////////////////////////////////////////////////////
//  Copyright by HPotter v1.0 06/10/2022
// Developed by Dr Alexander Elder, the Elder-ray indicator measures buying 
// and selling pressure in the market. The Elder-ray is often used as part 
// of the Triple Screen trading system but may also be used on its own.
// Dr Elder uses a 13-day exponential moving average (EMA) to indicate the 
// market consensus of value. Bull Power measures the ability of buyers to 
// drive prices above the consensus of value. Bear Power reflects the ability 
// of sellers to drive prices below the average consensus of value.
// Bull Power is calculated by subtracting the 13-day EMA from the day's High. 
// Bear power subtracts the 13-day EMA from the day's Low.
// WARNING:
// - For purpose educate only
// - This script to change bars colors. 
////////////////////////////////////////////////////////////
strategy(title="Elder Ray (Bull Power) TP and SL", shorttitle = "Bull Power", overlay = true)
Profit = input.float(7, title='Take Profit %', minval=0.01)
Stop = input.float(7, title='Stop Loss %', minval=0.01)
Length = input.int(14, minval=1)
Trigger = input.float(-200)
reverse = input.bool(true, title="Trade reverse")
xPrice = close
xMA = ta.ema(xPrice,Length)
var DayHigh = high
DayHigh := dayofmonth != dayofmonth[1]? high: math.max(high, nz(DayHigh[1]))
nRes = DayHigh - xMA
pos = 0
pos := nRes < Trigger ? 1:  0 
possig = reverse and pos == 1 ? -1 :
          reverse and pos == -1 ? 1 : pos	   
if (possig == 1) and strategy.position_size == 0
    strategy.entry('Long', strategy.long, comment='Market Long')
    strategy.exit("ExitLong", 'Long', stop=close - close * Stop / 100 , limit = close + close * Profit / 100 , qty_percent = 100)  
if (possig == -1) and strategy.position_size == 0
    strategy.entry('Short', strategy.short, comment='Market Long')
    strategy.exit("ExitShort", 'Short', stop=close + close * Stop / 100 , limit = close - close * Profit / 100 , qty_percent = 100)  
barcolor(strategy.position_size == -1 ? color.red: strategy.position_size == 1 ? color.green : color.blue )

Plus de