
La stratégie de croisement de la ligne moyenne d’Ichimoku consiste à effectuer des opérations de courte ou de longue durée en calculant une série de lignes moyennes et en identifiant les signaux de croisement des cours. La stratégie, qui combine plusieurs indicateurs techniques, est solide et fiable et convient aux opérations sur les lignes longues et moyennes.
La stratégie de croisement de la ligne de parité Ichimoku utilise un système d’indicateurs spécialisé composé de 5 lignes de parité. Plus précisément, il contient les lignes de parité de la ligne de change, de la ligne de référence, de la ligne de priorité 1, de la ligne de priorité 2 et de la ligne de retard.
La stratégie Ichimoku est un ensemble d’indicateurs techniques qui combine plusieurs idées stratégiques telles que les moyennes mobiles, les canaux de prix et la confirmation des prix, pour former un système méthodologique systématique. Cela garantit l’exactitude et la direction des signaux de négociation. Comparée à une seule stratégie d’indicateur, la stratégie réduit considérablement la probabilité de faux signaux et augmente le facteur de profit.
La stratégie de croisement de la ligne de parité Ichimoku est utilisée comme stratégie de suivi de la tendance. L’intervalle de négociation est long. Cela signifie que la stratégie ne peut pas capturer les fluctuations de prix à court terme.
Les stratégies de croisement de la ligne moyenne d’Ichimoku peuvent être optimisées dans les directions suivantes: 1) ajuster les paramètres de la ligne moyenne pour s’adapter à différents cycles et variétés; 2) combiner les indicateurs d’énergie, confirmer les relations entre les prix et le volume des transactions; 3) introduire des modèles d’apprentissage automatique, améliorer la perception des signaux; 4) ajouter plus de conditions et de filtres, réduire la probabilité de transactions erronées.
La stratégie de croisement linéaire Ichimoku est stable et fiable. Elle est adaptée pour être utilisée comme stratégie de base et en combinaison avec d’autres algorithmes. Elle fournit une direction de trading claire sur les tendances, tandis que l’ajustement des paramètres et l’optimisation multi-indicateurs rendent la stratégie plus intelligente et plus flexible.
/*backtest
start: 2023-11-18 00:00:00
end: 2023-12-18 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//Noro
//2018
//@version=3
strategy(title = "Noro's Ichimoku Strategy v1.0", shorttitle = "Ichimoku str 1.0", overlay = true, default_qty_type = strategy.percent_of_equity, default_qty_value = 100, pyramiding = 0)
//Settings
needlong = input(true, defval = true, title = "Long")
needshort = input(true, defval = true, title = "Short")
conversionPeriods = input(9, minval = 1, title = "Conversion Periods")
basePeriods = input(26, minval = 1, title = "Base Periods")
laggingSpan2Periods = input(52, minval = 1, title = "Lagging Span")
usebf = input(true, defval = true, title = "Use body filter")
usecf = input(true, defval = true, title = "Use color filter")
fromyear = input(1900, defval = 1900, minval = 1900, maxval = 2100, title = "From Year")
toyear = input(2100, defval = 2100, minval = 1900, maxval = 2100, title = "To Year")
frommonth = input(01, defval = 01, minval = 01, maxval = 12, title = "From Month")
tomonth = input(12, defval = 12, minval = 01, maxval = 12, title = "To Month")
fromday = input(01, defval = 01, minval = 01, maxval = 31, title = "From day")
today = input(31, defval = 31, minval = 01, maxval = 31, title = "To day")
//Ichimoku
donchian(len) => avg(lowest(len), highest(len))
conversionLine = donchian(conversionPeriods)
baseLine = donchian(basePeriods)
leadLine1 = avg(conversionLine, baseLine)
leadLine2 = donchian(laggingSpan2Periods)
//Lines
plot(conversionLine, color=red, title="Conversion Line")
plot(baseLine, color=blue, title="Base Line")
plot(close, offset = -basePeriods, color=green, title="Lagging Span")
p1 = plot(leadLine1, offset = basePeriods, color=green, title="Lead 1")
p2 = plot(leadLine2, offset = basePeriods, color=red, title="Lead 2")
fill(p1, p2)
//Body Filter
nbody = abs(close - open)
abody = sma(nbody, 10)
body = nbody > abody / 3 or usebf == false
//Color Filter
bar = close > open ? 1 : close < open ? -1 : 0
gb = bar == 1 or usecf == false
rb = bar == -1 or usecf == false
//Signals
up = low > baseLine and rb and body
dn = high < baseLine and gb and body
//Trading
if up
//if strategy.position_size < 0
// strategy.close_all()
strategy.entry("Long", strategy.long, needlong == false ? 0 : na, when=(time > timestamp(fromyear, frommonth, fromday, 00, 00) and time < timestamp(toyear, tomonth, today, 23, 59)))
if dn
//if strategy.position_size > 0
// strategy.close_all()
strategy.entry("Short", strategy.short, needshort == false ? 0 : na, when=(time > timestamp(fromyear, frommonth, fromday, 00, 00) and time < timestamp(toyear, tomonth, today, 23, 59)))
if time > timestamp(toyear, tomonth, today, 23, 59)
strategy.close_all()