Voici la version avec la “vrai” force relative calculé avec la comparaison sur un indice à choisir dans le code, voir explications ci-dessous.
// ============================================================
// SCREENER - MOMENTUM ACCELERATION + FORCE RELATIVE REELLE
// Valeurs fortes qui continuent d'accélérer
// ============================================================
// CONFIGURATION OBLIGATOIRE :
// Ligne EQUITYFRAME : remplacez le marché et le ticker de l'indice
// selon votre liste de screening (voir guide ci-dessous)
// ============================================================
// --- Paramètres ajustables ---
emaFastP = 20
emaMidP = 50
emaSlowP = 200
rsiPeriod = 14
adxPeriod = 14
volPeriod = 20
breakoutP = 20
frPeriod = 20
// ============================================================
// BLOC FORCE RELATIVE - EQUITYFRAME
// Capturez le close du titre AVANT de charger l'indice
// ============================================================
closeTitre = close
// >>> ADAPTEZ CES DEUX LIGNES A VOTRE MARCHE <<<
// Exemples : ("Indices Euronext","PXI") pour CAC/Euronext
// ("Indices - European","DAX") pour DAX
// ("Indices - US","SPX") pour S&P500
EQUITYFRAME("Indices Euronext","PXI")
closeIndice = close
EQUITYFRAME(default)
// Ratio titre/indice normalisé
ratio = (closeTitre / closeIndice) * 100
// Force relative : variation du ratio sur frPeriod séances
forceRelative = ratio - ratio[frPeriod]
// Condition : force relative positive ET en progression
avgFR = Average[10](forceRelative)
condFR = forceRelative > 0 AND forceRelative > avgFR
// ============================================================
// CONDITION 1 - Alignement EMA (structure haussière)
// ============================================================
ema20 = ExponentialAverage[emaFastP](closeTitre)
ema50 = ExponentialAverage[emaMidP](closeTitre)
ema200 = ExponentialAverage[emaSlowP](closeTitre)
condEma = (ema20 > ema50) AND (ema50 > ema200)
// ============================================================
// CONDITION 2 - RSI > 55 (momentum positif établi)
// ============================================================
myRSI = RSI[rsiPeriod](closeTitre)
condRSI = myRSI > 55
// ============================================================
// CONDITION 3 - MACD Line > 0 (EMA rapide domine EMA lente)
// ============================================================
myMacdLine = MACDLine[12,26,9](closeTitre)
condMACD = myMacdLine > 0
// ============================================================
// CONDITION 4 - ADX > 20 (tendance directionnelle active)
// ============================================================
myADX = ADX[adxPeriod]
condADX = myADX > 20
// ============================================================
// CONDITION 5 - Volume en accélération
// ============================================================
avgVol = Average[volPeriod](volume)
condVol = (volume > avgVol) AND (volume > volume[1])
// ============================================================
// CONDITION 6 - Cassure du plus haut des 20 séances précédentes
// ============================================================
prevHigh20 = Highest[breakoutP](high[1])
condBreak = high > prevHigh20
// ============================================================
// CONDITION GLOBALE
// ============================================================
condAll = condEma AND condRSI AND condMACD AND condADX AND condVol AND condBreak AND condFR
// ============================================================
// SORTIE SCREENER
// ============================================================
SCREENER[condAll](myRSI AS "RSI14", myMacdLine AS "MACD Line", myADX AS "ADX14", volume/avgVol AS "Vol Ratio", forceRelative AS "Force Relative")
GUIDE DE CONFIGURATION ET D’UTILISATION
ETAPE 1 – Choisir le bon indice de référence avec EQUITYFRAME
C’est la seule ligne que vous devrez adapter à chaque usage. La contrainte de ProRealTime est que l’indice de référence doit appartenir au même marché que la liste scannée. Voici les combinaisons les plus courantes :
- Actions françaises (SRD, CAC) : EQUITYFRAME(“Indices Euronext”,”PXI”) – PXI est le code PRT du CAC 40
- Actions européennes larges : EQUITYFRAME(“Indices – European”,”STOXX50E”)
- Actions allemandes : EQUITYFRAME(“Indices – European”,”DAX”)
- Actions US (S&P500) : EQUITYFRAME(“Indices – US”,”SPX”)
- Actions US (Nasdaq) : EQUITYFRAME(“Indices – US”,”CCMP”)
Pour trouver le bon ticker d’un indice dans PRT : ouvrez un graphique, tapez le nom de l’indice dans la barre de recherche, notez le code exact qui s’affiche, et utilisez-le tel quel entre guillemets.
ETAPE 2 – Choisir la bonne liste dans le ProScreener
Dans l’interface du ProScreener, le champ “Liste d’instruments” doit correspondre au marché de l’EQUITYFRAME. Si vous scannez “Actions France SRD”, l’indice doit être sur “Indices Euronext”. Si vous scannez une watchlist personnelle, vérifiez que tous les titres appartiennent au même marché que l’indice choisi : EQUITYFRAME ne permet pas de comparaisons cross-marché.
ETAPE 3 – Régler la périodicité
Le screener est conçu pour fonctionner en données journalières (Daily). C’est la périodicité à sélectionner dans le menu de votre ProScreener. En intraday, les EMA200 et les cassures 20 jours n’auraient pas de sens. En hebdomadaire, vous pouvez l’utiliser mais il faudrait alors adapter breakoutP à 4 (4 semaines au lieu de 20 jours).
ETAPE 4 – Comprendre les colonnes de résultat
Le screener affiche 5 colonnes pour chaque valeur retenue :
- RSI14 : la valeur du RSI. Idéalement entre 55 et 70. Au-dessus de 70, la valeur est techniquement suracheté à court terme, à surveiller.
- MACD Line : la valeur de la ligne MACD. Plus elle est haute et positive, plus le momentum est fort.
- ADX14 : la force de la tendance. Entre 20 et 25 = tendance naissante. Au-dessus de 30 = tendance forte. Au-dessus de 40 = tendance très puissante.
- Vol Ratio : le rapport volume du jour / moyenne 20 jours. Une valeur de 1.5 signifie que le volume est 50% au-dessus de la moyenne. Privilégiez les valeurs > 1.3 au minimum.
- Force Relative : la variation du ratio titre/indice sur 20 séances. Une valeur positive et croissante confirme que le titre surperforme son indice de référence. C’est le filtre qualité final.
ETAPE 5 – Trier et prioriser les résultats
Une fois le screener lancé, cliquez sur l’en-tête de colonne “Force Relative” pour trier par ordre décroissant : vous obtenez en tête les valeurs qui surperforment le plus leur indice tout en cochant toutes les conditions de momentum. Vous pouvez également trier par “ADX14” pour mettre en avant les tendances les plus directionnelles, ou par “Vol Ratio” pour repérer les accélérations volumétriques les plus significatives.
ETAPE 6 – Ajustements fins selon votre style
- Le screener est délibérément strict (7 conditions simultanées). En marché peu directionnel ou en phase de consolidation, il peut renvoyer peu de résultats. C’est normal : il est calibré pour ne ressortir que les valeurs les plus convaincantes.
- Pour l’élargir : abaissez le RSI à 52, l’ADX à 18, ou supprimez condBreak si vous voulez capturer des valeurs encore proches du sommet sans l’avoir cassé.
- Pour le resserrer davantage : montez le RSI à 60, l’ADX à 25, et augmentez frPeriod à 30 pour une force relative calculée sur 6 semaines au lieu de 4.