La stratégie de la combinaison de pouvoirs de Ray Bull.

Auteur:ChaoZhang est là., Date: 2021-01-21 11h36 et 48 min
Les étiquettes:

img

Résumé

Cette stratégie combine la stratégie d'inversion 123 et la stratégie de puissance taureau Elder Ray pour générer des signaux de trading combinés, obtenant à la fois des capacités de suivi de tendance et de capture d'inversion.

La logique de la stratégie

Partie de renversement

Selon la logique de la stratégie d'inversion à la page 183 du livre de Chen Qin Comment j'ai triplé mon argent sur le marché des contrats à terme: aller long lorsque le prix de clôture est supérieur à la clôture précédente pendant 2 jours consécutifs et que la ligne lente stochastique de 9 jours est inférieure à 50; aller court lorsque le prix de clôture est inférieur à la clôture précédente pendant 2 jours consécutifs et que la ligne rapide stochastique de 9 jours est supérieure à 50.

Partie de la puissance du taureau

Selon l'indicateur Elder Ray du Dr Alexander Elder, la moyenne mobile exponentielle sur 13 jours (EMA) représente le consensus du marché sur la valeur. La puissance haussière mesure la capacité des acheteurs à pousser les prix au-dessus du consensus sur la valeur. La puissance baissière reflète la capacité des vendeurs à pousser les prix en dessous du consensus moyen sur la valeur. La puissance haussière est calculée en soustrayant l'EMA sur 13 jours du sommet du jour. La puissance baissière soustrait l'EMA sur 13 jours du plus bas du jour.

Le seuil pour l'indicateur de puissance haussière dans cette stratégie est fixé à 0, ce qui signifie que toute valeur supérieure à 0 génère un signal de trading.

Signaux combinés

Un signal de trading final est généré lorsque les signaux de revers et de puissance haussière s'alignent dans la même direction. Le signal long est déclenché lorsque les signaux de revers et de puissance haussière sont longs. Le signal court est déclenché lorsque les signaux de revers et de puissance haussière sont courts.

Analyse des avantages

Il s'agit d'une stratégie combinée qui forme des signaux de trading en utilisant à la fois des stratégies d'inversion et de suivi de tendance, possédant les avantages de capter les inversions et de suivre les tendances.

La partie inversion peut bloquer les opportunités de renversement après les sauts d'écart. La partie puissance haussière garantit que les positions ne sont ouvertes que lorsqu'une tendance existe. Combinées, elles filtrent efficacement les fausses ruptures et évitent d'être piégées.

Les paramètres sont très flexibles pour une optimisation entre différents produits et délais afin de trouver les meilleures combinaisons de paramètres.

Analyse des risques

La probabilité d'alignement entre les signaux d'inversion et de puissance haussière est relativement faible, ce qui peut entraîner des signaux peu fréquents.

La partie de l'inversion peut identifier à tort l'action des prix en marge latérale comme des opportunités d'inversion, provoquant une entrée prématurée. La partie de la puissance haussière pourrait manquer certaines chances d'inversion. Les utiliser ensemble peut atténuer ces risques dans une certaine mesure. Des filtres de tendance à l'avenir pourraient être introduits pour une optimisation supplémentaire.

Directions d'optimisation

  1. Essayez plus de combinaisons de paramètres pour trouver les paramètres optimaux;
  2. Ajouter des modules de filtrage de tendance pour éviter d'établir à plusieurs reprises des positions sans tendance claire;
  3. Considérez l'ajout de stratégies de stop loss pour contrôler les pertes par transaction.

Résumé

Cette stratégie possède à la fois des capacités de trading de suivi de tendance et d'inversion, ce qui en fait une stratégie de combo par excellence.


/*backtest
start: 2023-10-21 00:00:00
end: 2023-11-20 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
////////////////////////////////////////////////////////////
//  Copyright by HPotter v1.0 15/06/2020
// This is combo strategies for get a cumulative signal. 
//
// First strategy
// This System was created from the Book "How I Tripled My Money In The 
// Futures Market" by Ulf Jensen, Page 183. This is reverse type of strategies.
// The strategy buys at market, if close price is higher than the previous close 
// during 2 days and the meaning of 9-days Stochastic Slow Oscillator is lower than 50. 
// The strategy sells at market, if close price is lower than the previous close price 
// during 2 days and the meaning of 9-days Stochastic Fast Oscillator is higher than 50.
//
// Second strategy
// 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.
// You can use in the xPrice any series: Open, High, Low, Close, HL2, HLC3, OHLC4 and ect...
//
// WARNING:
// - For purpose educate only
// - This script to change bars colors.
////////////////////////////////////////////////////////////
Reversal123(Length, KSmoothing, DLength, Level) =>
    vFast = sma(stoch(close, high, low, Length), KSmoothing) 
    vSlow = sma(vFast, DLength)
    pos = 0.0
    pos := iff(close[2] < close[1] and close > close[1] and vFast < vSlow and vFast > Level, 1,
	         iff(close[2] > close[1] and close < close[1] and vFast > vSlow and vFast < Level, -1, nz(pos[1], 0))) 
	pos

BP(Trigger,Length) =>
    pos = 0
    DayHigh = 0.0
    xPrice = close
    xMA = ema(xPrice,Length)
    DayHigh := iff(dayofmonth != dayofmonth[1], high, max(high, nz(DayHigh[1])))
    nRes = DayHigh - xMA
    pos := iff(nRes > Trigger, 1,
    	     iff(nRes < Trigger, -1, nz(pos[1], 0))) 
    pos

strategy(title="Combo Strategy 123 Reversal & Elder Ray (Bull Power)", shorttitle="Combo", overlay = true)
Length = input(14, minval=1)
KSmoothing = input(1, minval=1)
DLength = input(3, minval=1)
Level = input(50, minval=1)
//-------------------------
LengthBP = input(13, minval=1)
Trigger = input(0)
reverse = input(false, title="Trade reverse")
posReversal123 = Reversal123(Length, KSmoothing, DLength, Level)
posBP = BP(Trigger,LengthBP)
pos = iff(posReversal123 == 1 and posBP == 1 , 1,
	   iff(posReversal123 == -1 and posBP == -1, -1, 0)) 
possig = iff(reverse and pos == 1, -1,
          iff(reverse and pos == -1 , 1, pos))	   
if (possig == 1) 
    strategy.entry("Long", strategy.long)
if (possig == -1)
    strategy.entry("Short", strategy.short)	 
if (possig == 0) 
    strategy.close_all()
barcolor(possig == -1 ? #b50404: possig == 1 ? #079605 : #0536b3 )

Plus de