Stratégie d'entrées Ichimoku


Date de création: 2024-01-31 15:23:21 Dernière modification: 2024-01-31 15:23:21
Copier: 0 Nombre de clics: 665
1
Suivre
1617
Abonnés

Stratégie d’entrées Ichimoku

Aperçu

Les entrées Ichimoku sont une stratégie quantitative qui utilise l’indicateur de diagramme de nuage Ichimoku pour identifier la direction de la tendance et envoyer un signal de négociation en combinaison avec les bandes de Brin et les indicateurs RSI. La stratégie est principalement basée sur la ligne de dixième et la ligne de base de la fourche dorée, pour déterminer si le marché est actuellement en cours ou vide, ce qui génère des signaux d’entrée pour les positions longues et courtes.

Principe de stratégie

La stratégie utilise principalement les deux lignes importantes du diagramme de nuage d’Ichimoku, la ligne de dix et la ligne de base. La ligne de dix est la moyenne des plus hauts et des plus bas prix des 9 derniers jours, représentant une tendance à court terme. La ligne de base est la moyenne des plus hauts et des plus bas prix des 26 derniers jours, représentant une tendance à moyen et long terme.

Outre le nuage d’Ichimoku, la stratégie détecte les bandes de Boehringer et le RSI pour émettre des signaux de négociation. Seul le fait que le prix de clôture dépasse les bandes de Boehringer sur la voie ou en dessous de celle-ci indique une anomalie du prix. En combinaison avec l’indicateur RSI, il est possible de déterminer si le prix est dans une zone de survente et de survente et de filtrer certaines fausses brèches pour générer un signal d’entrée.

Sur la logique de sortie, la stratégie détermine si la rupture de la ceinture de Brin a été réussie et si l’indicateur de l’atmosphère de négociation TPO a été traversé par zéro axe pour déterminer une sortie à profit ou à perte.

Analyse des avantages

Le plus grand avantage de cette stratégie réside dans le fait qu’elle utilise à la fois le jugement de la tendance et les fluctuations anormales pour déterminer la direction des transactions. Le diagramme de nuage d’Ichimoku permet de juger clairement la tendance, tandis que la bande de Bryn capture les fluctuations anormales. L’indicateur RSI filtre efficacement les fausses ruptures.

Analyse des risques

Malgré l’avantage d’identifier les tendances et les fluctuations anormales, la stratégie comporte un certain risque. En raison de la tendance à suivre les transactions, il est susceptible d’afficher de faux signaux dans des situations de choc. En outre, une mauvaise configuration des paramètres peut également affecter la performance de la stratégie.

Direction d’optimisation

Cette stratégie peut être optimisée dans les domaines suivants:

  1. Les tests de différentes combinaisons de paramètres, comme le nombre de jours de Brin, le nombre de jours RSI, etc.
  2. l’ajout d’algorithmes d’apprentissage automatique qui génèrent des paramètres de sortie dynamiques basés sur des modèles de formation basés sur des données historiques;
  3. L’analyse de l’émotion du marché, combinée au flux d’informations, afin d’éviter de prendre de mauvaises décisions au moment crucial;
  4. Augmentation des arrêts, comme les arrêts qui se déplacent avec le prix, pour maintenir la rentabilité

Résumer

La stratégie Ichimoku Entries est une stratégie de suivi de tendance à combinaison de plusieurs indicateurs. Elle détermine à la fois la direction de la tendance et les anomalies de prix, capturant de manière plus fiable le rythme du marché. Bien qu’il y ait encore de la place pour l’amélioration, l’ensemble est une stratégie de trading quantifiée qui présente une performance stable et un risque contrôlable.

Code source de la stratégie
/*backtest
start: 2023-01-30 00:00:00
end: 2024-01-30 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("ichi strategy", overlay=true)

// Input parameters
rsiLength = input(14, title="RSI Length")
bbLength = input(20, title="Bollinger Bands Length")
bbMultiplier = input(2, title="Bollinger Bands Multiplier")
stopLossPct = input(1, title="Stop Loss Percentage")
takeProfitPct = input(2, title="Take Profit Percentage")

// Calculate Ichimoku Cloud components
tenkan = ta.sma(high + low, 9) / 2
kijun = ta.sma(high + low, 26) / 2
senkouA = (tenkan + kijun) / 2
senkouB = ta.sma(high + low, 52) / 2

// Bollinger Bands
basis = ta.sma(close, bbLength)
upperBB = basis + bbMultiplier * ta.stdev(close, bbLength)
lowerBB = basis - bbMultiplier * ta.stdev(close, bbLength)

// RSI
rsiValue = ta.rsi(close, rsiLength)

// Trade Proximity Oscillator
length = input(14, title="Channels Length")
multiplier = input(2, title="Channels Multiplier")
atr_length = input(14, title="ATR Length")
threshold_percentage = input(1.5, title="Threshold Percentage (%)")

ma = ta.sma(close, length)
std_dev = ta.stdev(close, length)
upper_band = ma + multiplier * std_dev
lower_band = ma - multiplier * std_dev
distance_upper = close - upper_band
distance_lower = lower_band - close
atr_value = ta.atr(atr_length)
threshold = atr_value * threshold_percentage
oscillator = distance_upper - distance_lower

// Strategy logic
longCondition = close > upperBB and tenkan > kijun and ta.crossover(close, basis) and rsiValue < 70
shortCondition = close < lowerBB and tenkan < kijun and ta.crossunder(close, basis) and rsiValue > 30

strategy.entry("Long", strategy.long, when = longCondition)
strategy.entry("Short", strategy.short, when = shortCondition)

// Exit logic
longExitCondition = close < upperBB and ta.crossover(oscillator, 0)
shortExitCondition = close > lowerBB and ta.crossunder(oscillator, 0)

strategy.exit("Take Profit/Stop Loss", from_entry="Long", loss=close - close * stopLossPct / 100, profit=close + close * takeProfitPct / 100, when = longExitCondition)
strategy.exit("Take Profit/Stop Loss", from_entry="Short", loss=close + close * stopLossPct / 100, profit=close - close * takeProfitPct / 100, when = shortExitCondition)

// Plotting
plot(senkouA, color=color.green, title="Senkou A")
plot(senkouB, color=color.red, title="Senkou B")
plot(upperBB, color=color.blue, title="Upper Bollinger Band")
plot(lowerBB, color=color.blue, title="Lower Bollinger Band")

// Additional Plots
plot(tenkan, color=color.orange, title="Tenkan")
plot(kijun, color=color.purple, title="Kijun")