
Cette stratégie utilise une combinaison d’indicateurs de doubles moyennes superposées et d’indicateurs stochastiques pour identifier les opportunités de renversement de tendance, permettant une négociation de courte ligne efficace. La stratégie choisit de faire court lorsque le prix entre dans une zone de survente et de survente. La stratégie choisit de faire plus lorsque le prix entre dans une zone de survente pour capturer le renversement de la tendance de la courte ligne.
La stratégie est basée sur une combinaison de doubles moyennes et d’indicateurs stochastiques.
Les doubles moyennes superposées sont constituées de moyennes mobiles rapides, moyennes mobiles lentes et moyennes mobiles ultra-lentes. Lorsqu’elles sont traversées par des moyennes mobiles plus lentes, elles sont considérées comme des signaux d’achat; lorsqu’elles sont traversées par des moyennes mobiles plus lentes, elles sont considérées comme des signaux de vente.
L’indicateur stochastique contient les valeurs K et D. La valeur K indique la position des prix les plus élevés et les plus bas de la clôture actuelle par rapport aux prix les plus élevés et les plus bas de N jours. La valeur D est la moyenne mobile simple de jours M de la valeur K. Les valeurs K et D supérieures à 80 sont des zones de survente et inférieures à 20 sont des zones de survente.
Cette stratégie consiste à combiner les doubles moyennes superposées et les stochastiques pour voir si les stochastiques affichent des zones de survente ou de survente et si elles sont conformes, choisir le point de revers pour capturer le point de basculement de la courte ligne.
Cette stratégie présente les avantages suivants:
La combinaison utilise des moyennes doubles et des stochastiques pour identifier simultanément les courts et les courts courts courts.
Utilisez les signaux de surachat et de survente de l’indicateur stochastique pour sélectionner des occasions de trading plus efficaces pour inverser les moyennes doubles.
Les règles de stratégie de trading sont claires et faciles à mettre en œuvre.
Paramètres de temps de transaction et de mois modifiables pour s’adapter à différentes variétés et périodes.
Le risque est contrôlé par la mise en place d’un stop-loss.
Cette stratégie comporte aussi des risques:
Les doubles moyennes peuvent produire de fausses ruptures, et les indicateurs stochastiques peuvent avoir une forme de ligne K asymétrique invalide, ce qui entraîne une erreur de signal de transaction. Les paramètres peuvent être ajustés de manière appropriée ou d’autres indicateurs peuvent être ajoutés pour la vérification de la combinaison.
Le risque d’échec en cas d’un événement économique majeur est basé uniquement sur des indicateurs techniques et ne prend pas en compte les facteurs fondamentaux.
Il est difficile de saisir le moment exact où la moyenne mobile est inversée, ce qui peut entraîner un arrêt trop petit ou trop grand. La stratégie d’arrêt doit être optimisée.
Une mauvaise configuration des paramètres peut entraîner une fréquence de transaction trop élevée ou une mauvaise efficacité du signal. Des tests d’optimisation des paramètres doivent être effectués pour différentes variétés et périodes.
Il convient uniquement pour les transactions à court terme et non pour les détentions à long terme. La taille de la position doit être contrôlée.
Cette stratégie peut être optimisée dans les domaines suivants:
Test d’autres combinaisons d’indicateurs, tels que KDJ, MACD, etc., pour améliorer l’efficacité du signal.
L’analyse des indicateurs de volume des transactions est intégrée pour éviter les faux-bénéfices.
Optimiser les paramètres de la moyenne binaire pour identifier des moments de retournement plus précis.
Optimiser les stratégies de stop-loss pour réduire la probabilité que le stop-loss soit déclenché.
Ajout d’un module de contrôle des risques liés aux événements économiques afin d’éviter l’impact des événements majeurs sur les transactions.
L’utilisation de l’apprentissage automatique pour optimiser les paramètres et améliorer leur adaptabilité.
Il est nécessaire de faire des essais de retour sur plus de variétés et de cycles pour trouver les meilleures directions d’application.
Cette stratégie utilise une combinaison de doubles moyennes superposées et de formes de lignes stochastiques incohérentes de K pour réaliser le but de la négociation à un tournant de tendance de la courte ligne moyenne. Comparée à l’utilisation d’un indicateur seul, cette stratégie améliore la rentabilité des trades et les règles de la stratégie sont claires et faciles à utiliser.
/*backtest
start: 2022-10-26 00:00:00
end: 2023-10-26 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=3
strategy(title="Intraday Stochiastic Strategy", shorttitle="Intraday Stochiastic Strategy", overlay=true, initial_capital = 1000)
//WORKS FOR BTCUSD M30
//OBVERVED GOOD PERFORMANCES FOR SELL MODE M15 : US30USD / UK100GBP / JP225USD / SPX500USD / BCOUSD / EURGBP
//Best Forex Hours are 7-21
//0 is Long Position
//1 is Short Position
//2 No position
mode=input(1, maxval=2, title="Mode")
lossLimit=input(10000, maxval=10000, title="Loss Limit")
hourStart=input(2, maxval=24, title="Hour Start")
hourStop=input(13, maxval=24, title="Hour Stop")
//Month selected for back testing. 0 is maximum number of months
monthSelected = input(0, maxval=12, title="Month Selected")
/////////////////////////////////////////////////
fast = 20, slow = 50, ultraSlow = 200
fastMA = sma(close, fast)
slowMA = sma(close, slow)
ultraSlowMA = sma(close, ultraSlow)
colorFast = red
colorSlow = black
colorUltraSlowMA = purple
if(timeframe.period == "1" or timeframe.period == "3" or timeframe.period == "5" or timeframe.period == "15" or timeframe.period == "30" or timeframe.period == "45" or timeframe.period == "60" or timeframe.period == "120" or timeframe.period == "180" or timeframe.period == "240")
fastMA := ema(close, fast)
slowMA := ema(close, slow)
ultraSlowMA := ema(close, ultraSlow)
colorFast := orange
colorSlow := gray
colorUltraSlowMA := blue
p1 = plot(fastMA, color=colorFast)
p2 = plot(slowMA, color=colorSlow, linewidth=2)
p3 = plot(ultraSlowMA, color=colorUltraSlowMA, linewidth=3)
fill(p1, p2, color = fastMA > slowMA ? green : red)
////////////////////////////////////////////////
ema150 = 200
ema150MA = ema(close, ema150)
smooth = input(3, minval=1), K = input(14, minval=1), D=input(3,minval=1)
hh=highest(high,K)
ll=lowest(low,K)
k = sma((close-ll)/(hh-ll)*100, smooth)
d = sma(k, 3)
//plot(k, color=blue)
//plot(d, color=red)
//h0 = hline(80)
//h1 = hline(20)
//fill(h0, h1, color=purple, transp=95)
//plot(hour*100, color=red, linewidth=2)
stochiasticHigh = 80
stochiasticLow = 20
data = close < ema150MA and k>stochiasticHigh and d>stochiasticHigh and close>open
plotshape(data, style=shape.triangledown, location=location.belowbar, color=red)
data2 = close > ema150MA and k<stochiasticLow and d<stochiasticLow and close<open
plotshape(data2, style=shape.triangleup, location=location.abovebar, color=green)
isData = 0
isData := isData[1]
if(isData == 0)
if(data)
if(mode==1 and hour>hourStart and hour<hourStop and (monthSelected==0 or month==monthSelected)) //DOW hours : 2-13
strategy.entry("SCALP SHORT", strategy.short)
isData := 1
else
if(k<stochiasticLow and d<stochiasticLow)
if(mode==1)
strategy.close_all(when = true)
isData := 0
isData2 = 0
isData2 := isData2[1]
if(isData2 == 0)
if(data2)
if(mode==0 and hour>hourStart and hour<hourStop and (monthSelected==0 or month==monthSelected))
strategy.entry("SCALP LONG", strategy.long)
isData2 := 1
else
if(k>stochiasticHigh and d>stochiasticHigh)
if(mode==0)
strategy.close_all(when = true)
isData2 := 0
strategy.exit("STOP LOSS", "SCALP LONG", loss=lossLimit)
strategy.exit("STOP LOSS", "SCALP SHORT", loss=lossLimit)