Programmation des Indicateurs

1 - Généralités

Un indicateur (ou indicateur technique) définit l'évolution au cours du temps d'une variable caractérisant l'état d'une valeur boursière ou d'un marché.
Il existe de nombreux indicateurs mis au point par les analystes, généralement classés selon les catégories suivantes :

mais chaque utilisateur peut être amené à concevoir un nouvel indicateur pour l'utiliser dans une stratégie.

Trader Level Pro 2 est fourni avec une bibliothèque d'environ 80 indicateurs, et permet également de programmer de nouveaux indicateurs appelés dans ce manuel indicateurs personnels.

2 - Bibliothèque des indicateurs disponibles

Indicateurs issus de l'analyse technique :

Code Nom Script
AROdown
AROup
AROosc
ADI
ADWP
ASI
ADX
ATR
BBB
BBH
CMF
COS
CVO
CMO
CRP
CCI
CSI
PRX
CLO
OPEN
HIGH
LOW
DPO
DXm
DXp
DEMA
EOM
FIX
KLO
MACD
MASI
MINL
MAXH
MOM
MFI
MMAR
MMEX
MMPD
MMTR
MMVA
MMVR
MMVH
NVI
OBV
OCV
ORP
OSC
ORL
PCRW
PRF
PVI
POSC
PROC
PVT
QSI
RWIhigh
RWIlow
RVO
RMI
RSI
RVI
SWR
SPR
STD
STOD
STOK
SWI
TREND
TVI
TEMA
TRIX
VHF
VOR
VOL
VOS
VROC
WUO

LVLR
LVLS
Aaron Indicator down
Aaron Indicator up
Aaron Oscillator
Accumulation Distribution Index
Accumulation Distribution Williams
Accumulation Swing Index
Average Directional Index
Average True Range
Bande de Bollinger Basse
Bande de Bollinger Haute
Chaikin Money Flow
Chaikin Oscillator
Chaikin Volatility
Chande Momentum Oscillator
Close Range Position Index
Commodity Channel Index
Commodity Selection Index
Cours
Cours de clôture
Cours d'ouverture
Cours le plus haut
Cours le plus bas
Detrended Price Oscillator
Directional Indicator Minus
Directional Indicator Positive
Double EMA
Ease Of Movement
Force Index
Klinger Oscillator
Histogramme MACD
Mass Index
Maximum Plus Bas
Maximum Plus Haut
Momentum
Money Flow Index
Moyenne Mobile Arithmétique
Moyenne Mobile Exponentielle
Moyenne Mobile Pondérée
Moyenne Mobile Triangulaire
Moyenne Mobile Volume Ajusté
Moyenne Mobile Variable
Moyenne Mobile des Volumes
Negative Volume Index
On Balance Volume
Open-Close Volatility Index
Open-Range Position Index
Oscillateur de Moyenne Mobile
Oscillateur de Régression Linéaire
%R Williams
Performance Index
Positive Volume Index
Price Oscillator
Price Rate Of Change
Price and Volume Trend
Q-Stick Indicator
Random Walk Index High
Random Walk Index Low
Range Volatility Index
Relative Momentum Index
Relative Strength Index
Relative Volatility Index
Schwager Volatility Ratio
Spread
Standard Deviation
Stochastics %D
Stochastics %K
Swing Index
Tendance Ratio
Trade Volume Index
Triple EMA
TRIX Indicator
Vertical Horizontal Filter
Volatility Ratio
Volume en clôture
Volume Oscillator
Volume Rate Of Change
Ultimate Oscillator

Niveau Resistance
Niveau Support
AROdown(n, Periode)
AROup(n, Periode)
AROosc(n, Periode)
ADI(n)
ADWP(n)
ASI(n)
ADX(n, Periode)
ATR(n, Periode)
BBB(n, Periode, StDev, Type)
BBH(n, Periode, StDev, Type)
CMF(n, Periode)
COS(n, PeriodeCt, PeriodeLt)
CVO(n, Periode)
CMO(n, Periode)
CRP(n, Periode)
CCI(n, Periode)
CSI(n, Periode)
PRX(n, Type)
CLO(n)
OPEN(n)
HIGH(n)
LOW(n)
DPO(n, Periode)
DXm(n, Periode)
DXp(n, Periode)
DEMA(n, Periode)
EOM(n)
FIX(n, Periode)
KLO(n, PeriodeCt, PeriodeLt, PeriodeTr)
MACD(n, PeriodeCt, PeriodeLt, PeriodeTr)
MASI(n, Periode, PeriodeEMA)
MINL(n, Periode)
MAXH(n, Periode)
MOM(n, Periode)
MFI(n, Periode)
MMAR(n, Periode, Type)
MMEX(n, Periode, Type)
MMPD(n, Periode, Type)
MMTR(n, Periode, Type)
MMVA(n, Periode, Type)
MMVR(n, Periode, Type)
MMVH(n, Periode)
NVI(n)
OBV(n)
OCV(n, Periode)
ORP(n, Periode)
OSC(n, Periode1, Periode2, Type)
ORL(n, Periode, Type)
PCRW(n, Periode)
PRF(n, Type)
PVI(n)
POSC(n, PeriodeCt, PeriodeLt)
PROC(n, Periode)
PVT(n)
QSI(n, Periode)
RWIhigh(n, Periode)
RWIlow(n, Periode)
RVO(n, Periode)
RMI(n, Periode, Ecart)
RSI(n, Periode)
RVI(n, Periode)
SWR(n, Periode)
SPR(n, Valeur, Ratio)
STD(n, Periode)
STOD(n, Periode, PeriodeK, PeriodeD)
STOK(n, Periode, PeriodeK)
SWI(n)
TREND(n, Periode, Type)
TVI(n, Mindev)
TEMA(n, Periode)
TRIX(n, Periode)
VHF(n, Periode)
VOR(n, Periode)
VOL(n)
VOS(n, PeriodeCt, PeriodeLt)
VROC(n, Periode)
WUO(n, PeriodeCt, PeriodeMt, PeriodeLt)

LVLR(n, Rang)
LVLS(n, Rang)

Indicateurs de datation :

Code Nom Script
YEAR
HOUR
DAYW
DAYM
MONTH
Année
Heure
Jour de la semaine
Jour du mois
Mois de l'année
YEAR(n)
HOUR(n)
DAYW(n)
DAYM(n)
MONTH(n)

Indicateurs relatifs aux positions des stratégies :

Code Nom Script
DOP
DCP
POP(n)
Durée d'ouverture
Durée de fermeture
Prix d'ouverture
DOP(n)
DCP(n)
POP(n)
Ces indicateurs s'utilisent uniquement pour la programmation des règles d'ouverture et de fermeture de positions d'une stratégie.
  • L'indicateur DOP compte le nombre de périodes (ou barres) depuis l'ouverture d'une position.
  • L'indicateur DCP compte le nombre de périodes (ou barres) depuis la fermeture d'une position.
  • L'indicateur POP mémorise le prix d'ouverture de la position.

Chaque indicateur est défini par un code unique utilisé lors de la programmation des indicateurs et signaux personnels.

Pour accéder à la bibliothèque des indicateurs, choisir Trading System dans le menu général puis l'option Editer Indicateurs et Signaux. La fenêtre ci-dessous s'ouvre :

Chaque indicateur est défini par son code, son nom, son "Script" ses paramètres variables et une zone de commentaire.

3 - Programmation d'un indicateur personnel

Pour programmer un nouvel indicateur personnel, ouvrir la fenêtre ci-dessus puis cliquer sur le bouton Nouveau pour ouvrir la fenêtre de saisie ci dessous.

Ensuite :

  1. Saisir le code de l'indicateur. Ce code est unique et sera utilisé pour référencer cet indicateur dans la formule d'un signal.
    Ce code doit comprendre au moins 4 caractères, des lettres ou des chiffres uniquement.
    Trader Level Pro 2 refusera la saisie si ce code est déjà utilisé par ailleurs ou si la saisie n'est pas conforme.
    NOTA : Ce code ne pourra pas être modifié par la suite. En cas de besoin, il conviendra d'abord d'annuler l'indicateur puis de le reprogrammer avec un autre code.
  2. Saisir le nom de l'indicateur.
  3. Entrer dans la zone Saisie du script de l'indicateur le programme en langage JavaScript définissant l'indicateur.
    Pour inclure dans le script un Indicateur ou une fonction mathématique de la bibliothèque, il suffit de double-cliquer sur le nom de cet élément dans la bibliothèque après avoir placé le curseur dans le script à l'endroit précis ou cet élément doit être mis.
  4. Le script comprend deux types de variables, celles internes au script et celles externes que l'utilisateur aura la possibilité de faire varier ultérieurement (par exemple la période de l'indicateur).
  5. Par convention, la dernière ligne du script doit donner le résultat de l'évaluation de l'indicateur lors de l'exécution. Dans le cas du script d'un indicateur, ce résultat doit être la valeur numérique de l'indicateur.
  6. Pour vérifier si le script est correct au sens du langage JavaScript, cliquer sur le bouton Vérifier. En cas d'erreur de programmation, un message indiquera la ligne erronée du script.
  7. Cliquer sur le bouton OK pour enregistrer cet indicateur personnel dans la bibliothèque. Il y apparaîtra avec le symbole
  8. Pour modifier un indicateur personnel, le sélectionner dans la fenêtre Edition des Indicateurs et cliquer sur le bouton Modifier.
    Seul le code de l'indicateur ne pourra pas être modifié.
  9. Pour supprimer un indicateur personnel, le sélectionner dans la fenêtre d'"Edition des Indicateurs" et cliquer sur le bouton Supprimer.
    NOTA : La suppression sera refusée si cet indicateur personnel est présent dans un signal ou une stratégie.

4 - Représentation graphique d'un indicateur personnel

Lors de la programmation d'un indicateur personnel, l'utilisateur peut préciser la forme graphique de son affichage.
Dans la fenêtre de programmation, en dessous du cadre de saisie des "Paramètres variables de l'indicateur", les possibilités suivantes sont disponibles :

5 - Fonctions mathématiques

Une bibliothèque de fonctions mathématiques est disponible pour la programmation des indicateurs.
Elle comprend les fonctions suivantes :


ABS(n)
ACOSINE(n)
ASINE(n)
ATANG(n)
CEIL(n)
CONST(n)
COSINE(n)
EXP(n)
FLOOR(n)
LOG(n)
LOG10(n)
MAX(f,g)

Valeur absolue de n
ArcCosinus de n
ArcSinus de n
ArcTangente de n
Arrondi supérieur de n
Contante = n
Cosinus de n
Exponentielle de n
Arrondi inférieur de n
Logarithme népérien de n
Logarithme base 10 de n
Maximum de f et g

MIN(f, g)
MOVA(FCT,n,p,q,r,t)
MOVE(FCT,n,p,q,r,t)
MOVP(FCT,n,p,q,r,t)
PI()
POW(a,p)
RAND()
ROUND(n)
SINE(n)
SLOPE(FCT,n,p,q,r,t)
SQRT(n)
TANG(n)

Minimum de f et g
Moyenne Mobile Aritmétique (voir nota 1)
Moyenne Mobile Exponentielle (voir nota 1)
Moyenne Mobile Pondérée (voir nota 1)
Constante PI
Nombre a à la puissance p
Nombre aléatoire >= 0 et < 1
Valeur arrondie de n
Sinus de n
Pente Droite de régression linéaire (voir nota 2)
Racine carrée de n
Tangente de n

Nota 1 : Dans la fonction Moyenne Mobile, la signification des paramètres est la suivante

Nota 2 : : Dans la fonction SLOPE, la signification des paramètres est la suivante