
Aperçu
La stratégie est un système de suivi de tendance combinant des indicateurs techniques et des méthodes d’apprentissage automatique. La stratégie intègre des indicateurs de force relative (RSI), des indicateurs de tendance moyenne (ADX) et des modèles de prévision de régression linéaire pour déterminer les tendances du marché et les opportunités de négociation grâce à une analyse multidimensionnelle.
Principe de stratégie
La stratégie utilise un mécanisme de filtrage à trois niveaux pour identifier les signaux de transaction:
- L’indicateur RSI est utilisé pour identifier les conditions de survente et de survente. Lorsqu’il atteint 30 (survente), il génère un signal de survente, et 70 (survente) un signal de sous-évaluation.
- L’indicateur ADX est utilisé pour confirmer la force de la tendance, ne permettant la négociation que lorsque l’ADX est supérieur à 25, garantissant une opération dans un environnement de forte tendance
- Module de prévision par régression linéaire qui permet de prédire le prochain niveau de prix en analysant les données des 20 derniers cycles de prix et en calculant la pente et la coupe de la tendance des prix
La stratégie n’émettra un signal de transaction que si les trois conditions sont réunies (en direction de la même direction).
Avantages stratégiques
- Vérification multidimensionnelle: des indicateurs techniques combinés à des méthodes de prévision statistique pour fournir des signaux de transaction plus fiables
- Confirmation de tendance: filtrage ADX pour s’assurer que les transactions sont effectuées uniquement dans les marchés à forte tendance et éviter les faux signaux de choc
- Prévisibilité: introduit un modèle de prévision de régression linéaire permettant une analyse prospective des mouvements de prix
- Flexibilité: les principaux paramètres peuvent être ajustés en fonction des conditions du marché
- La clarté d’exécution: les règles de négociation sont claires et les conditions de génération de signaux sont strictes, ce qui réduit l’influence du jugement subjectif
Risque stratégique
- Sensibilité aux paramètres: l’efficacité de la stratégie dépend fortement des paramètres RSI, ADX et des cycles de régression
- Risque de retard: les indicateurs techniques sont eux-mêmes retardés, ce qui peut entraîner un léger retard dans le temps d’entrée
- Risque d’inversion de tendance: lorsque la tendance est soudainement inversée, des pertes peuvent survenir en raison d’une réaction tardive du système
- Risque de surcorrespondance: les prévisions de régression linéaire peuvent surcorrespondre aux données historiques, ce qui affecte l’exactitude des prévisions
- La dépendance aux conditions du marché: des stratégies qui peuvent être défectueuses dans un marché volatile
Orientation de l’optimisation de la stratégie
- Ajustement des paramètres dynamiques: introduction d’un mécanisme d’ajustement des paramètres adaptatifs qui ajuste automatiquement les paramètres du RSI et de l’ADX en fonction des fluctuations du marché
- Augmentation des filtres de conditions de marché: ajout d’indicateurs de volatilité, ajustement des paramètres de stratégie ou suspension des transactions dans différentes conditions de marché
- Optimiser les modèles de prévision: envisager d’utiliser des modèles d’apprentissage automatique plus complexes, tels que les LSTM ou les forêts aléatoires, pour améliorer la précision des prévisions
- Amélioration de la gestion des risques: augmentation des mécanismes d’arrêt dynamiques et adaptation des positions d’arrêt en fonction des fluctuations du marché
- Augmenter le filtrage des heures de transaction: éviter les périodes de faible liquidité et les périodes de communiqués importants
Résumer
La stratégie a été construite en combinant l’analyse technique traditionnelle et les méthodes de prévision modernes pour construire un système de négociation relativement complet. L’avantage central de la stratégie réside dans le mécanisme de confirmation de signal multidimensionnel, capable de réduire efficacement l’impact des faux signaux.
Code source de la stratégie
/*backtest
start: 2025-01-20 00:00:00
end: 2025-02-19 08:00:00
period: 1h
basePeriod: 1h
exchanges: [{"eid":"Binance","currency":"SOL_USDT"}]
*/
//@version=5
strategy("RSI + ADX + ML-like Strategy (5min)", overlay=true)
// ———— 1. Inputs ————
rsiLength = input(14, "RSI Length")
adxLength = input(14, "ADX Length")
mlLookback = input(20, "ML Lookback (Bars)")
// ———— 2. Calculate Indicators ————
// RSI
rsi = ta.rsi(close, rsiLength)
// ADX
[diPlus, diMinus, adx] = ta.dmi(adxLength, adxLength)
// ———— 3. Simplified ML-like Component (Linear Regression) ————
var float predictedClose = na
sumX = math.sum(bar_index, mlLookback) // FIXED: Using math.sum()
sumY = math.sum(close, mlLookback) // FIXED: Using math.sum()
sumXY = math.sum(bar_index * close, mlLookback) // FIXED: Using math.sum()
sumX2 = math.sum(bar_index * bar_index, mlLookback)
slope = (mlLookback * sumXY - sumX * sumY) / (mlLookback * sumX2 - sumX * sumX)
intercept = (sumY - slope * sumX) / mlLookback
predictedClose := slope * bar_index + intercept
// ———— 4. Strategy Logic ————
mlBullish = predictedClose > close
mlBearish = predictedClose < close
enterLong = ta.crossover(rsi, 30) and adx > 25 and mlBullish
enterShort = ta.crossunder(rsi, 70) and adx > 25 and mlBearish
// ———— 5. Execute Orders ————
strategy.entry("Long", strategy.long, when=enterLong)
strategy.entry("Short", strategy.short, when=enterShort)
// ———— 6. Plotting ————
plot(predictedClose, "Predicted Close", color=color.purple)
plotshape(enterLong, "Buy", shape.triangleup, location.belowbar, color=color.green)
plotshape(enterShort, "Sell", shape.triangledown, location.abovebar, color=color.red)