Bonjour ,
suite à la création d’un simple programme, son fonctionnement dans ProScreener est impossible. J’ai réalisé des essais en passant par une boucle de type for i = … Même constat.
Etapes :
- si l’indicateur RSI à 2 périodes croise à la baisse la borne des 90 => initialisation du compteur
- si le compteur est inférieur ou égal à 3 périodes et que l’indicateur Rsi à 2 périodes croise à la baisse les 50 => signal sinon nok
Merci pour votre aide sur le sujet
Ozons
//////////////////////////////////////
ALERTE =0
REM INDICATEUR RSI
IRSI= RSI[2](CLOSE)
// DEMARRAGE DU COMPTEUR
IF IRSI crosses under 90 THEN
COUNT=COUNT+1
ELSE
COUNT=0
ENDIF
// SIGNAL : CROISEMENT A LA BAISSE DE L'INDICATEUR RSI ET DE LA BORNE DES 50 SI LE NOMBRE DE PERIODES EST INFERIEUR A 3
CROISEMENT = IRSI CROSSES UNDER 50
//
LOOKBACK = 3
X = summation[LOOKBACK](COUNT)
//
IF CROISEMENT=1 AND X>=1 AND X<=3 THEN
ALERTE=1
ENDIF
RETURN ALERTE coloured(242,115,15,255) style(histogram,1) AS "CROISEMENT RSI"
Le code de cet indicateur est-il correct ? Si je comprends bien le but est d’utiliser ce code dans un screener n’est-ce pas ?
Bonjour Nicolas,
le code fonctionne et l’objectif est effectivement de l’utiliser dans un screener. J’avais fait une proposition à l’assistance pour créer une fonction identique au logiciel Metastock qui a pour objectif de laisser valide une première condition pendant X périodes et délivre un signal lorsqu’une autre condition est déclenchée. Fonction que nous retrouvons également sur d’autres logiciels Amibroker, TS, etc …
Existe-t-il une manière de coder différente avec les fonctions de summation, lowest, highest, for i … lorsque l’on souhaite intégrer son programme à un explorateur ?
Merci Nicolas
D’accord, donc si l’indicateur fonctionne, question bête, pourquoi ne pas remplacer la dernière ligne par [scode] screener[alerte] [/scode] ?
Lorsque je lance l’explorateur, il me ressort aucune valeur alors que le signal est présent sur certains titres. D’où mon incompréhension…. et ma question
Merci Nicolas
Sur Euronext, ce jour, j’ai les mêmes résultats que pour l’indicateur, avec ce code:
//////////////////////////////////////
ALERTE =0
REM INDICATEUR RSI
IRSI= RSI[2](CLOSE)
// DEMARRAGE DU COMPTEUR
IF IRSI crosses under 90 THEN
COUNT=COUNT+1
ELSE
COUNT=0
ENDIF
// SIGNAL : CROISEMENT A LA BAISSE DE L'INDICATEUR RSI ET DE LA BORNE DES 50 SI LE NOMBRE DE PERIODES EST INFERIEUR A 3
CROISEMENT = IRSI CROSSES UNDER 50
//
LOOKBACK = 3
X = summation[LOOKBACK](COUNT)
//
IF CROISEMENT=1 AND X>=1 AND X<=3 THEN
ALERTE=1
ENDIF
screener[alerte]