
La stratégie de quantification des modèles de graphiques multidimensionnels est un système de négociation basé sur l’identification des formes graphiques classiques de l’analyse technique, axé principalement sur l’identification et la négociation de formes inversées telles que le haut des épaules / le bas et le double haut / bas. La stratégie définit et identifie de manière programmée ces formes clés qui apparaissent sur le marché, en combinaison avec l’indicateur ATR (Average True Range) pour définir des niveaux de stop loss et de stop, afin de construire un cadre de négociation complet.
Le principe de base de cette stratégie est d’identifier trois types de graphiques principaux:
Identification de la forme de la tête et des épaules: Identifier par une comparaison continue des hauts de prix. La stratégie détecte si un haut central (la tête) est supérieur aux hauts de ses deux côtés (les épaules).high[1] > high[2] && high[1] > high[0] && high[1] > high[3] && high[1] > high[4] && high[0] < high[2] && high[0] < high[3]Cette forme indique généralement la fin d’une tendance à la hausse et le début d’une éventuelle tendance à la baisse.
Reconnaissance de forme à deux sommets: Utilise une logique similaire à celle de la tête et des épaules, mais se concentre davantage sur deux hauts proches. Lorsque deux hauts proches sont formés et qu’il y a un bas évident au milieu, cela est considéré comme une forme de double sommet, ce qui est également un signal de revers à la baisse.
Reconnaissance de forme à double fond: par opposition aux deux sommets, déterminé par l’identification de deux bas prix proches et d’un sommet intermédiaire.low[1] < low[2] && low[1] < low[0] && low[1] < low[3] && low[1] < low[4] && low[0] > low[2] && low[0] > low[3]Les conditions de l’équilibre de l’axe sont déterminées par la forme double fond, qui est généralement un signal de retour de l’axe de l’axe.
Les signaux de transaction sont générés sur la base de l’identification de la forme associée au comportement des prix:
doubleBottomPattern && close > open)doubleTopPattern && close < open)La gestion des risques est réalisée par l’indicateur ATR (Average True Range):
stopLoss = atrValue * 1.5)takeProfit = atrValue * 3)Cette conception permet à la stratégie de s’adapter à la volatilité des différents marchés, offrant un arrêt plus large dans les marchés à forte volatilité et un arrêt relativement étroit dans les marchés à faible volatilité.
Basé sur l’analyse technique classiqueLa stratégie est basée sur l’analyse de formes de graphiques largement reconnues et appliquées, qui ont montré une certaine efficacité dans divers environnements de marché, avec une grande quantité de données de vérification historiques.
Gestion des risques adaptéeEn utilisant l’indicateur ATR pour définir les niveaux de stop-loss et de stop-loss, la stratégie est capable d’ajuster automatiquement les paramètres de gestion du risque en fonction de la volatilité réelle du marché, évitant ainsi les risques excessifs ou excessivement conservateurs que peuvent entraîner les stop-loss à points fixes.
Des règles claires pour entrer et sortirLa stratégie fournit des conditions claires d’entrée (confirmation de forme + confirmation de prix) et de sortie (arrêt/arrêt basé sur l’ATR) qui aident les traders à rester disciplinés et à réduire les transactions émotionnelles.
Signaux de négociation visualisésPar le passé:plotshapeLa fonction affiche la reconnaissance de formes et les signaux de négociation de manière intuitive sur le graphique, permettant aux traders de surveiller et d’analyser la performance de la stratégie en temps réel.
La souplesse et l’adaptabilité: Bien que la mise en œuvre actuelle se concentre principalement sur quelques formes de graphiques spécifiques, le cadre de la stratégie permet d’élargir facilement pour inclure plus de différents types de reconnaissance de formes, comme les triangles, les drapeaux, les arcs et autres.
Traitement simplifié de la reconnaissance de forme: La logique actuelle d’identification de la forme est relativement simplifiée, basée uniquement sur la comparaison de quelques points de prix, ce qui peut ne pas capturer la structure plus complexe du marché, ce qui entraîne des erreurs de jugement. Par exemple, la logique de jugement de la tête, des épaules et des deux sommets est la même, ce qui peut entraîner des erreurs de classification.
Manque de confirmation de la livraison: Dans l’analyse technique traditionnelle, les formes de graphiques nécessitent souvent une confirmation de la combinaison de la quantité de transaction, et les stratégies actuelles n’incluent pas les facteurs de transaction, ce qui peut conduire à un jugement insuffisamment complet de l’efficacité des formes.
Risques liés à la fixation du multiplicateur ATR: Bien que l’utilisation de l’ATR permette d’adapter le stop-loss/stop-loss à la volatilité, les paramètres fixes de 1,5x et 3x peuvent ne pas s’appliquer à tous les environnements de marché, en particulier dans des conditions extrêmes ou des événements inattendus.
Il n’y a pas de calendrier: La stratégie ne prend pas en compte les différences de reconnaissance de morphologie entre les différentes périodes, ce qui peut entraîner une surproduction de faux signaux sur des périodes plus courtes ou la perte d’importantes opportunités de trading sur des périodes plus longues.
Manque de filtrage des tendances: La stratégie n’a pas de filtrage de tendance, ce qui peut entraîner des signaux de revers fréquents dans les marchés en forte tendance, entraînant une série de transactions à perte.
Amélioration de l’algorithme de reconnaissance des formes:
Analyse intégrée du trafic:
Optimiser les stratégies de gestion des risques:
Ajouter un filtre de tendance:
Analyse de plusieurs périodes:
Ajout d’indicateurs de confirmation complémentaires:
La stratégie de quantification des modèles de graphiques multidimensionnels est un système de négociation basé sur la forme classique des graphiques d’analyse technique pour capturer les points de retournement de tendance potentiels en identifiant de manière programmée des structures de marché telles que le sommet / le bas et le double sommet / bas. La stratégie, combinée à l’indicateur ATR pour la gestion des risques, fournit un cadre de négociation relativement complet. Le principal avantage de la stratégie réside dans sa théorie d’analyse technique largement vérifiée, ses règles de négociation claires et son mécanisme de gestion des risques adaptatif.
Afin d’améliorer la robustesse et la performance de la stratégie, il est recommandé d’optimiser la stratégie en améliorant l’algorithme de reconnaissance de la forme, l’intégration de l’analyse du trafic, l’optimisation de la stratégie de gestion des risques, l’ajout d’un filtre de tendance, la mise en œuvre d’une analyse multi-châtres et l’ajout d’indicateurs de confirmation auxiliaires. Grâce à ces améliorations, la stratégie devrait améliorer considérablement la qualité des signaux de négociation et la rentabilité globale, tout en conservant ses avantages en matière d’analyse de la forme basée sur les graphiques classiques.
En fin de compte, toute stratégie de négociation doit être soigneusement testée et validée en temps réel. Elle doit être adaptée en fonction de l’évolution de l’environnement du marché, des caractéristiques de la variété de transactions et de la tolérance au risque des individus.
/*backtest
start: 2024-02-28 00:00:00
end: 2025-02-26 08:00:00
period: 2d
basePeriod: 2d
exchanges: [{"eid":"Futures_Binance","currency":"ETH_USDT"}]
*/
//@version=5
strategy("Chart Pattern Strategy - Head and Shoulders / Double Top/Bottom", overlay=true)
// Function to detect a simple Head and Shoulders pattern
isHeadAndShoulders() =>
high[1] > high[2] and high[1] > high[0] and high[1] > high[3] and high[1] > high[4] and high[0] < high[2] and high[0] < high[3]
// Function to detect a Double Top pattern
isDoubleTop() =>
high[1] > high[2] and high[1] > high[0] and high[1] > high[3] and high[1] > high[4] and high[0] < high[2] and high[0] < high[3]
// Function to detect a Double Bottom pattern
isDoubleBottom() =>
low[1] < low[2] and low[1] < low[0] and low[1] < low[3] and low[1] < low[4] and low[0] > low[2] and low[0] > low[3]
// Detecting Head and Shoulders, Double Top, and Double Bottom Patterns
headAndShouldersPattern = isHeadAndShoulders()
doubleTopPattern = isDoubleTop()
doubleBottomPattern = isDoubleBottom()
// Plotting Head and Shoulders, Double Top, and Double Bottom detections
plotshape(headAndShouldersPattern, title="Head and Shoulders", location=location.abovebar, color=color.red, style=shape.labelup, text="HS")
plotshape(doubleTopPattern, title="Double Top", location=location.abovebar, color=color.red, style=shape.labelup, text="DT")
plotshape(doubleBottomPattern, title="Double Bottom", location=location.belowbar, color=color.green, style=shape.labeldown, text="DB")
// Entry logic for Buy and Sell signals
longSignal = doubleBottomPattern and close > open
shortSignal = doubleTopPattern and close < open
// Take profit and stop loss based on ATR for simplicity
atrLength = input.int(14, title="ATR Length")
atrValue = ta.atr(atrLength)
stopLoss = atrValue * 1.5 // Stop loss 1.5 ATR
takeProfit = atrValue * 3 // Take profit 3 ATR
// Plot buy and sell signals
plotshape(longSignal, title="Buy Signal", location=location.belowbar, color=color.green, style=shape.labelup, text="BUY")
plotshape(shortSignal, title="Sell Signal", location=location.abovebar, color=color.red, style=shape.labeldown, text="SELL")
// Executing trades based on conditions
if (longSignal)
strategy.entry("Buy", strategy.long)
strategy.exit("Take Profit/Stop Loss", from_entry="Buy", stop=close - stopLoss, limit=close + takeProfit)
if (shortSignal)
strategy.entry("Sell", strategy.short)
strategy.exit("Take Profit/Stop Loss", from_entry="Sell", stop=close + stopLoss, limit=close - takeProfit)