Cette stratégie de trading génère des signaux de trading basés sur un indicateur appelé Ichimoku Kinko Hyo.
La stratégie utilise les lignes composantes d'Ichimoku pour déterminer la direction et la force de la tendance. Les signaux de trading sont générés lorsque le prix franchit le haut ou le bas du Cloud.
La stratégie utilise cinq lignes du système Ichimoku Kinko Hyo:
Le nuage est la zone située entre Senkou Span A et Senkou Span B, représentant la fourchette de tendance actuelle en général.
Les signaux de négociation sont générés sur la base des scénarios suivants:
En outre, la stratégie utilise le croisement Tenkan/Kijun pour déterminer les niveaux de prise de profit et de stop-loss.
La plus grande force de cette stratégie réside dans la capacité d'Ichimoku
En outre, la stratégie intègre un croisement Tenkan/Kijun pour une prise partielle de bénéfices et un contrôle des risques.
Le principal risque provient de failles potentielles dans les lignes Ichimoku provoquant une fausse rupture.
Les solutions comprennent l'optimisation des paramètres pour réduire les intervalles de la ligne descendante ou l'ajout de filtres pour éviter de négocier dans des zones variables.
Plusieurs aspects de la stratégie peuvent être améliorés:
Optimisez les paramètres Ichimoku et ajustez les périodes moyennes mobiles pour s'adapter à plus de symboles et de délais.
Incorporer une confirmation de volume pour éviter les lacunes provoquant de faux signaux.
Ajouter d'autres indicateurs tels que le MACD, le RSI pour les tendances supplémentaires et les filtres d'oscillateur.
Améliorer les règles d'arrêt des pertes et de prise de bénéfices, par exemple arrêt de suivi, dimensionnement des positions, etc.
En résumé, ce système Ichimoku identifie la direction de la tendance et les chances de trading avec le Cloud et les lignes composantes.
/*backtest start: 2022-12-08 00:00:00 end: 2023-12-14 00:00:00 period: 1d basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy("Ichimoku Cloud", shorttitle="Ichimoku", overlay=true) previous_close = close[1] conversionPeriods = input.int(20, minval=1, title="Conversion Line Periods"), basePeriods = input.int(60, minval=1, title="Base Line Periods") laggingSpan2Periods = input.int(120, minval=1, title="Lagging Span 2 Periods"), displacement = input.int(30, minval=1, title="Displacement") long_entry = input.bool(true, title="Long Entry") short_entry = input.bool(true, title="Short Entry") e2e_entry = input.bool(true, title="E2E Entry") donchian(len) => math.avg(ta.lowest(len), ta.highest(len)) tenkan = donchian(conversionPeriods) kijun = donchian(basePeriods) spanA = math.avg(tenkan, kijun) spanB = donchian(laggingSpan2Periods) plot(tenkan, color=#0496ff, title="Conversion Line") plot(kijun, color=#991515, title="Base Line") plot(close, offset = -displacement, color=#459915, title="Lagging Span") p1 = plot(spanA, offset = displacement, color=#459915, title="Lead 1") p2 = plot(spanB, offset = displacement, color=#991515, title="Lead 2") fill(p1, p2, color = spanA > spanB ? #459915 : #991515) ss_high = math.max(spanA[displacement - 1], spanB[displacement - 1]) ss_low = math.min(spanA[displacement - 1], spanB[displacement - 1]) // Entry/Exit Signals tk_cross_bull = tenkan > kijun tk_cross_bear = tenkan < kijun kumo_twist_bull = ta.mom(close, displacement) > 0 kumo_twist_bear = ta.mom(close, displacement) < 0 price_above_kumo = close > ss_high price_below_kumo = close < ss_low price_enters_kumo_top = previous_close > ss_high[1] and close < ss_high price_enters_kumo_bottom = previous_close < ss_low[1] and close > ss_low bullish = tk_cross_bull and kumo_twist_bull and price_above_kumo bearish = tk_cross_bear and kumo_twist_bear and price_below_kumo bullishe2e = price_enters_kumo_bottom // and tk_cross_bull bearishe2e = price_enters_kumo_top // and tk_cross_bear price_touches_kumo_top = ta.cross(close, ss_high) price_touches_kumo_bottom = ta.cross(close, ss_low) strategy.entry("Long", strategy.long, when=bullish and long_entry) strategy.close("Long", when=tk_cross_bear) strategy.close("Long", when=price_enters_kumo_top) strategy.entry("Long e2e", strategy.long, when=bullishe2e and e2e_entry) strategy.close("Long e2e", when=price_touches_kumo_top) strategy.close("Long e2e", when=price_below_kumo, qty_percent = 100) // strategy.close("Long e2e", when=ta.cross(close, kijun), qty_percent = 50) strategy.entry("Short", strategy.short, when=bearish and short_entry) strategy.close("Short", when=tk_cross_bull) strategy.close("Short", when=price_enters_kumo_bottom) strategy.entry("Short e2e", strategy.short, when=bearishe2e and e2e_entry) strategy.close("Short e2e", when=price_touches_kumo_bottom) strategy.close("Short e2e", when=price_above_kumo, qty_percent = 100) // strategy.close("Long e2e", when=ta.cross(close, kijun), qty_percent = 50)