Cette stratégie utilise le principe de la croisée des deux courbes, combiné à des indicateurs de suivi de la tendance, pour permettre le jugement et le suivi de la tendance. L’idée principale est de faire plus lorsque la courbe moyenne à court terme traverse la courbe moyenne à long terme et de faire moins lorsque la courbe moyenne à court terme traverse la courbe moyenne à long terme.
Cette stratégie est principalement composée d’un système de croisement bi-homogène et d’un système de suivi des tendances.
Un système de croisement bi-homogène comprend les lignes rapides EMA1 et les lignes lentes EMA2. Par défaut, EMA1 considère la ligne 10 et EMA2 considère la ligne 20 par défaut. Un signal d’achat est généré lorsque la ligne rapide traverse la ligne lente et un signal de vente est généré lorsque la ligne rapide traverse la ligne lente.
Ajouter l’EMA100 à la ligne de 100 jours pour déterminer la direction de la tendance globale. Un signal d’achat est généré uniquement lorsque le prix est en tendance à la hausse (le prix est supérieur à la ligne de 100 jours) et que la ligne lente est traversée sur la ligne rapide. Un signal de vente est généré uniquement lorsque le prix est en tendance à la baisse (le prix est inférieur à la ligne moyenne de 100 jours) et que la ligne lente est traversée sous la ligne rapide.
En outre, les flèches d’achat et de vente sont marquées sur la ligne K pour afficher visuellement les signaux de transaction.
Les systèmes de suivi des tendances utilisent les courbes de jour et de cycle pour confirmer à nouveau la direction de la tendance. Les courbes de Heikin-Ashi utilisent les courbes de 5 minutes et de 60 minutes dans la journée et les courbes de 8 et 12 jours dans la période.
Un véritable signal de négociation n’est émis que lorsque les jugements sont cohérents au cours de la journée et de la période. Cela permet de filtrer davantage le bruit de la plupart des directions non dominantes.
Le plus grand avantage de cette stratégie est qu’elle intègre à la fois le suivi des tendances et le système de croisement linéaire uniforme, ce qui permet de filtrer efficacement les faux signaux et de contrôler les retraits dans des limites acceptables.
Plus précisément, les avantages d’un système de croisement bi-homogène sont les suivants:
Le système est simple à utiliser, facile à comprendre et adapté aux débutants.
Le gouvernement a décidé d’envoyer des troupes à l’étranger pour lutter contre le terrorisme.
Les paramètres de la ligne rapide et de la ligne lente sont réglables et peuvent s’adapter à différentes périodes;
Les résultats de l’étude ont été très positifs, et les tendances sont positives.
Les avantages de rejoindre l’EMA100:
Les opérations de filtrage de la contrepartie pour réduire les pertes;
Les retraits sont contrôlables en fonction de la tendance.
Les avantages d’un système de suivi des tendances:
La plupart des utilisateurs de la plate-forme ont une approche différente de celle de l’ordinateur: ils utilisent un système d’exploitation de la téléphonie mobile.
Assurez-vous que la direction des transactions est conforme à la tendance générale et réduisez les retraits.
Heikin-Ashi est une plateforme qui permet de filtrer le bruit et de ne capturer que les tendances.
Cette stratégie comporte également des risques à prendre en compte:
Dans le calcul à long terme, le croisement des valeurs est fréquent, ce qui entraîne des opportunités de transactions excessives et des coûts de transaction excessifs.
Les signaux de transaction peuvent être retardés et manquer les premiers stades de la tendance.
Le changement de tendance à grande échelle pourrait entraîner des pertes importantes.
Les paramètres doivent être optimisés, et ne pas être adaptés affectera la performance de la stratégie.
La réponse:
Réduire la fréquence des opérations lors de la liquidation afin d’éviter des transactions invalides.
Le raccourcissement approprié du cycle de la moyenne pour obtenir des signaux précoces de tendance.
Il s’agit d’un système qui permet de régler les pertes ponctuelles.
Optimisation des paramètres, adaptation aux différentes variétés et aux différents environnements.
Cette stratégie peut être optimisée dans les domaines suivants:
Optimisation de la période moyenne. Vous pouvez tester plus de combinaisons de paramètres pour trouver la période optimale.
Ajouter plus de jugement de périodes. Par exemple, ajouter l’indicateur de ligne lunaire ou de ligne trimestrielle.
Augmentation du mécanisme d’arrêt des pertes. Mise en place d’un arrêt mobile ou d’un arrêt indexé.
Combinaison d’indicateurs de volume de transactions, tels que le flux d’énergie avec des indicateurs tels que le KDJ.
Optimiser l’heure d’entrée. Vous pouvez envisager l’aide d’indicateurs plus sensibles tels que le MACD.
Optimisation de l’adaptation à plusieurs variétés. Adaptation des paramètres à plus de variétés.
Cette stratégie intègre un système de suivi de tendances et de croisement de deux lignes homogènes, ce qui permet de tirer parti de leurs avantages respectifs et d’éviter les problèmes d’un seul système. Le jugement multidimensionnel garantit la bonne orientation des transactions et un bon contrôle des retraits.
/*backtest
start: 2023-09-20 00:00:00
end: 2023-09-27 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © askkuldeeprandhawa
//@version=4
strategy("KSR Strategy", overlay=true)
par1=input(10)
par2=input(20)
ema1=ema(close,par1)
ema2=ema(close,par2)
buy=ema1>ema2
sell=ema2<ema1
mycolor= iff(buy,color.green,iff(sell,color.blue,color.red))
barcolor(color=mycolor)
ema100=ema(close,100)
ibuy=crossover(ema1,ema2)
iSell=crossunder(ema1,ema2)
varp=tostring(close[1])
plotshape(ibuy, "Up Arrow", shape.triangleup, location.belowbar, color.green, 0, 0,"Buy" , color.green, true, size.tiny)
plotshape(iSell, "Down Arrow", shape.triangledown, location.abovebar, color.red, 0, 0, "Sell", color.red, true, size.tiny)
crossed =crossover(ema(close,par1), ema(close,par2))
// if crossed
// l = label.new(bar_index, na, tostring(close),
// color=color.green,
// textcolor=color.white,
// style=label.style_labelup, yloc=yloc.belowbar)
crossed2 =crossunder(ema(close,par1), ema(close,par2))
// if crossed2
// l = label.new(bar_index, na, tostring(close),
// color=color.red,
// textcolor=color.white,
// style=label.style_labeldown, yloc=yloc.abovebar)
plot(ema(close,par1),"EMA Short",color=color.white)
plot(ema(close,par2),"EMA Long",color=color.orange)
longCondition = crossover(ema(close, par1), ema(close, par2))
if (longCondition)
strategy.entry("My Long Entry Id", strategy.long)
shortCondition = crossunder(ema(close, par1), ema(close, par2))
if (shortCondition)
strategy.entry("My Short Entry Id", strategy.short)
ma1_len = input(title="MA1", type=input.integer, defval=8, minval=1, maxval=100, step=1)
ma2_len = input(title="MA2", type=input.integer, defval=12, minval=1, maxval=100, step=1)
o = ema(open, ma1_len)
c = ema(close, ma1_len)
h = ema(high, ma1_len)
l = ema(low, ma1_len)
tim1=input('D',"Short Time")
tim2=input('W',"Long Time")
ema_p=input(title="EMA Period", type=input.integer, defval=16, minval=1, maxval=100, step=1)
refma = ema(close, ema_p)
plot(refma, title="EMA" , linewidth=1, color=close < refma ? color.orange : color.blue)
ha_t = heikinashi(syminfo.tickerid)
ha_o = security(ha_t, tim2, o)
ha_c = security(ha_t, tim2, c)
ha_h = security(ha_t, tim2, h)
ha_l = security(ha_t, tim2, l)
o2 = ema(ha_o, ma2_len)
c2 = ema(ha_c, ma2_len)
h2 = ema(ha_h, ma2_len)
l2 = ema(ha_l, ma2_len)
ha_col = ha_c > ha_o ? color.red : color.green
plotshape(true, style=shape.circle, color=ha_c > ha_o ? color.green : color.red, location=location.bottom)
ha_t1 = heikinashi(syminfo.tickerid)
ha_o1 = security(ha_t1, tim1, o)
ha_c1 = security(ha_t1, tim1, c)
ha_h1 = security(ha_t1, tim1, h)
ha_l1 = security(ha_t1, tim1, l)
o3 = ema(ha_o1, ma2_len)
c3 = ema(ha_c1, ma2_len)
h3 = ema(ha_h1, ma2_len)
l3 = ema(ha_l1, ma2_len)
ha_col1 = ha_c1 > ha_o1 ? color.red : color.green
plotshape(true, style=shape.circle, color=ha_c1 > ha_o1 ? color.green : color.red, location=location.top)