Cette stratégie utilise deux ensembles de paramètres différents pour déterminer les conditions de polyvalence. Il s’agit d’un système de croisement homogène typique. L’indicateur rapide est utilisé pour déterminer les tendances à court terme et le moment d’entrée, et l’indicateur lent pour déterminer la direction de la tendance majeure, qui se combinent pour former un signal de négociation.
Les valeurs K de l’indicateur rapide aléatoire indiquent la direction de la tendance à court terme, la ligne K traversant sa moyenne mobile SM1 constituant le signal d’entrée.
Les valeurs K de l’indicateur aléatoire lent reflètent la situation de la tendance générale. Lorsque l’indicateur rapide affiche un signal de retour, vérifiez la rationalité de l’indicateur lent pour déterminer la direction générale.
Le K rapide est considéré comme un signal positif quand il traverse le SM1; le K lent est considéré comme un signal positif quand il est supérieur à 50.
K est considéré comme un signal baissier lorsqu’il traverse SM1 rapidement; K est considéré comme un signal baissier lorsqu’il est inférieur à 50, indiquant que la tendance est à la baisse et que les conditions de couverture sont remplies.
Réglez le point d’arrêt de la perte d’arrêt avec un arrêt de la perte d’arrêt à proportion fixe.
Les deux indicateurs aléatoires permettent de filtrer le bruit et d’améliorer le taux de réussite.
Le SM1 est plus petit et le K est plus sensible, ce qui lui permet de capturer les opportunités de courte ligne.
Le grand cycle détermine la grande tendance, le petit cycle capture le renversement. La stratégie de la pluralité d’espaces est conforme à la plupart des conditions du marché.
Le point d’arrêt fixe, le risque et le bénéfice sont contrôlables, il n’y a pas de grandes fluctuations.
Les déviations entre les indicateurs peuvent entraîner des opportunités de trading manquées ou des signaux erronés.
Les points de stop-loss fixes ne sont pas assez flexibles pour s’adapter aux changements du marché.
Les paramètres de l’indicateur lbl nécessitent des tests d’optimisation répétés, et s’ils ne sont pas utilisés correctement, ils peuvent être invalidés.
Les transactions à cycle court nécessitent une fréquence de transaction plus élevée, ce qui augmente les coûts de transaction.
Ajout d’autres indicateurs ou conditions de filtrage pour assurer la qualité du signal de l’indicateur.
Testez différentes combinaisons de paramètres pour trouver la meilleure configuration.
Il est possible d’ajuster la dynamique des niveaux de stop loss et de stop loss en combinant les indicateurs de volatilité.
Le filtrage des périodes permet d’éviter les événements critiques et de contrôler les fluctuations irrationnelles.
Optimiser les stratégies de gestion des fonds, augmenter ou réduire les positions, améliorer l’efficacité de l’utilisation des fonds.
Cette stratégie intègre des indicateurs aléatoires rapides pour former un système de négociation à plusieurs niveaux. Cependant, des paramètres d’optimisation supplémentaires doivent être définis et des indicateurs tels que la tendance et la volatilité doivent être utilisés comme conditions de filtrage.
/*backtest
start: 2023-08-17 00:00:00
end: 2023-09-16 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=4
strategy("Double Stochastic", overlay=true)
//-----------------------Stochastics------------------------//
c= security(syminfo.tickerid,timeframe.period , close)
h= security(syminfo.tickerid, timeframe.period, high)
l= security(syminfo.tickerid, timeframe.period, low)
c1= security(syminfo.tickerid, timeframe.period, close)
h2= security(syminfo.tickerid, timeframe.period, high)
l1= security(syminfo.tickerid, timeframe.period, low)
K1 = input(5, title="K", minval=1, title="Leading K")
SM1 = input(2, title="Smooth", minval=1, title="Leading Smooth ")
k = ema(stoch(c, h, l, K1), SM1)
K2 = input(97, title="K", minval=1, title="Lagging K")
D2 = input(3, title="D", minval=1, title="Lagging D")
SM2 = input(1, title="Smooth", minval=1, title="Lagging Smooth")
k1 = ema(stoch(c1, h2, l1, K2), SM2)
// buy ((k[2] < 40 and k > 40) and bars_up > 0 and k1 > 50)
// sell (k[2] > 60 and k < 60) and bars_down > 0 and k1 < 50
//-----------------------Mechanics------------------------//
buy = k1 > 50 and k < 30 and k > k[1] ? 1 : 0
sell = k1 < 50 and k > 70 and k < k[1] ? 1 : 0
buy_val = valuewhen(buy == 1, close, 1)
sell_val = valuewhen(sell == 1, close, 1)
buy_close = buy_val * input(1.20, minval=0.1)
sell_close = sell_val / input(1.20, minval=0.1)
//------------------------Buy/Sell-------------------------//
longCondition = buy == 1
if (longCondition)
strategy.entry("My Long Entry Id", strategy.long)
close_long = close >= buy_close
if (close_long)
strategy.close("My Long Entry Id")
sellCondition = sell == 1
if (sellCondition)
strategy.entry("My Short Entry Id", strategy.short)
close_short = close <= sell_close
if (close_short)
strategy.close("My Short Entry Id")