Bonjour,
J’essaye sans succès de créer un screener pour prorealtime.
Pouvez-vous m’aider ?
Le screener doit fonctionner en UT daily et doit respecter toutes les conditions suivantes :
c1 : Valeur MACD d’hier < valeur MACD d’il y a 2 jours
c2 : Valeur MACD d’hier < valeur MACD d’aujourd’hui
c3 : Valeur MACD d’hier négative
c4 : MACD d’aujourd’hui en accéleration par rapport à hier : momentum > 0
c5 : Valeur RSI d’hier < valeur RSI d’il y a 2 jours
c6 : Valeur RSI d’hier < valeur RSI d’aujourd’hui
c7 : Valeur RSI d’hier < 30
c8 : RSI d’aujourd’hui en accéleration par rapport à hier : momentum > 0
c9 : Valeur Money Flow Index (MFI) d’hier < valeur MFI d’il y a 2 jours
c10 : Valeur MFI d’hier < valeur MFI d’aujourd’hui
c11 : Valeur MFI d’hier < 20
c12 : MFI d’aujourd’hui en accéleration par rapport à hier : momentum > 0
c13 : Valeur Stochastic d’hier < valeur Stochastic d’il y a 2 jours
c14 : Valeur Stochastic d’hier < valeur Stochastic d’aujourd’hui
c15 : Valeur Stochastic d’hier < 20
c16 : Stochastic d’aujourd’hui en accéleration par rapport à hier : momentum > 0
Ce screener doit me laisser la possibilité de changer les réglages des indicateurs MACD, RSI, MFI et Stochastic.
J’ai commencé à développer ce screener mais pour une raison inconnue il me renvoie des résultats qui ne respectent pas certaines conditions (pas toutes).
Merci de votre aide
Je vous joins ici le code de mon screener “en l’état” (qui ne fonctionne pas)
valMomentum = 0.5
myMACD = MACD[5,9,4](close)
c1a = myMACD[1] < myMACD[2] // Valeur MACD d'hier < valeur MACD d'avant hier
c1b = myMACD[1] < myMACD[0] // Valeur MACD d'hier < valeur MACD d'aujourd'hui
c1c = myMACD[1] < 0 // Valeur MACD d'hier négative
c1d = Momentum[1](myMACD[1]) > valMomentum // MACD d'aujourd'hui en accéleration par rapport à hier
myRSI = RSI[12](close)
c2a = myRSI[1] < myRSI[2] // Valeur RSI d'hier < valeur RSI d'avant hier
c2b = myRSI[1] < myRSI[0] // Valeur RSI d'hier < valeur RSI d'aujourd'hui
c2c = myRSI[1] < 30 // Valeur RSI d'hier < 30
c2d = Momentum[1](myRSI[1]) > valMomentum // RSI d'aujourd'hui en accéleration par rapport à hier
myMFI = MoneyFlowIndex[12]
c3a = myMFI[1] < myMFI[2] // Valeur MFI d'hier < valeur MFI d'avant hier
c3b = myMFI[1] < myMFI[0] // Valeur MFI d'hier < valeur MFI d'aujourd'hui
c3c = myMFI[1] < 20 // Valeur MFI d'hier < 20
c3d = Momentum[1](myMFI[1]) > valMomentum // MFI d'aujourd'hui en accéleration par rapport à hier
mySTO = Stochastic[12,3](close)
c4a = mySTO[1] < mySTO[2] // Valeur Stochastic d'hier < valeur Stochastic d'avant hier
c4b = mySTO[1] < mySTO[0] // Valeur Stochastic d'hier < valeur Stochastic d'aujourd'hui
c4c = mySTO[1] < 20 // Valeur Stochastic d'hier < 20
c4d = Momentum[1](mySTO[1]) > valMomentum // Stochastic d'aujourd'hui en accéleration par rapport à hier
SCREENER(c1a AND c1b AND c1c AND c1d AND c2a AND c2b AND c2c AND c2d AND c3a AND c3b AND c3c AND c3d AND c4a AND c4b AND c4c AND c4d)
Les conditions d’un screener doivent être comprises entre crochets et non entre parenthèses, qui ne servent qu’à classer les résultats.
Dans le cas du code présent, il faudrait utiliser l’instruction SCREENER de cette manière :
SCREENER[c1a AND c1b AND c1c AND c1d AND c2a AND c2b AND c2c AND c2d AND c3a AND c3b AND c3c AND c3d AND c4a AND c4b AND c4c AND c4d]
(je n’ai pas testé si toutes ces conditions sont correctes vis à vis des critères que tu souhaites).
Bonjour,
Ce code mis en indicateur ne retourne rien.
Génial !
Merci Nicolas, c’est exactement le conseil dont j’avais besoin.
Mon screener marche comme je le souhaitais 😉