Description
Le problème avec les indicateurs de régime : ils changent d'avis.
La plupart des indicateurs de régime "apprennent" des données pendant leur fonctionnement. Vous connaissez le résultat : l'historique semble parfait, car les étiquettes des barres passées ont été silencieusement réécrites après l'arrivée du futur. Cela a un nom — le repainting — et c'est le péché capital de tout outil d'analyse : il semble fiable précisément parce qu'il efface ses propres erreurs.
Regime Visualizer fait une seule promesse : il ne repeint jamais.
Chaque barre est classée dans l'un des trois régimes de volatilité — Calme, Normal ou Élevé — au moment de sa clôture. Cette étiquette est définitive. Elle n'est jamais recalculée, lissée ou corrigée rétroactivement. La capture d'écran que vous prenez aujourd'hui montre exactement ce qui était affiché en direct, barre par barre. Déterministe : mêmes données, même image, à chaque exécution.
Ce que vous voyez sur le graphique :
- 🎨 Fond coloré par segment de régime, directement sur le graphique des prix
- 📊 Histogramme de confiance (0–1) dans un panneau séparé — la probabilité filtrée du régime actif, dans la couleur du régime
- 🔷 Marqueur de transition — icône + étiquette sur la barre où le régime change
- Chaque couche s'active/désactive indépendamment, avec des couleurs configurables
Ce que ce n'est PAS (lisez avant d'installer) :
- ❌ Pas un signal de trading. Il ne vous dit jamais d'acheter ou de vendre.
- ❌ Pas de promesse de performance. Le régime de volatilité ne prédit pas le profit — cet indicateur rend le contexte lisible, rien de plus. Ce que vous en faites est votre responsabilité.
- ❌ Pas adaptatif. Il n'y a pas d'apprentissage en ligne — volontairement : "apprendre en cours d'exécution" est précisément ce qui fait que les indicateurs de régime repeignent.
Comment ça marche (pour ceux qui veulent savoir) :
Un modèle de Markov caché à 3 états (HMM) avec paramètres fixes fonctionne sur un ATR normalisé (ATR(14) / moyenne ATR sur 100 barres — sans dimension, donc il fonctionne sur n'importe quel instrument et intervalle). L'inférence est uniquement un filtrage avant — elle utilise uniquement les données jusqu'à la clôture de la barre en cours, sans Viterbi ni lissage arrière (les sources classiques du repainting). Une couche de hystérésis avec seuils et temps minimum de maintien transforme l'argmax vacillant en une lecture stable.
Honnête sur ses limites :
- Les 300 premières barres (phase de chauffe) restent non étiquetées — l'indicateur ne prétend pas savoir ce qu'il ne sait pas encore.
- La barre en formation n'a aucune étiquette — elle est classée à sa clôture. C'est le prix à payer pour ne jamais repeindre, et nous le payons devant vous.
Pour les développeurs cBot :
L'indicateur expose la série publique RegimeCode (0 = Calme, 1 = Normal, 2 = Élevé, −1 = phase de chauffe) pour consommation via Indicators.GetIndicator<RegimeVisualizer>(). Contexte de volatilité non repeint, prêt à être intégré dans votre logique.
Validation (testé, non revendiqué) :
La propriété de non-repainting a été vérifiée par un dispositif qui a retraité 100 000 barres réelles sur 201 fenêtres incrémentales — 10,1 millions de comparaisons d'étiquettes, zéro divergence — plus un déterminisme identique au bit près entre les exécutions.
Gratuit. Contexte — pas un signal.
