Merci de ne pas double poster ! Je répondrai donc au sujet le plus récent.
Pour la condition sur les MM, quelqu’un avait déjà répondu à cette même requête ici pour info : https://www.prorealcode.com/topic/screener-au-dessus-de-toutes-les-mm/#post-180435
Voici un code qui correspond à ta demande selon mon interprétation:
ma20 = average [ 20 ]
ma50 = average [ 50 ]
ma100 = average [ 100 ]
ma150 = average [ 150 ]
ma200 = average [ 200 ]
c1 = close > max (ma20,max (ma50,max (ma100,max (ma150,ma200))))
c2 = MACD [ 12 ,26 ,9 ] (close )> 0
c3 = BollingerBandWidth [ 20 ] (close )< average [ 20 ] (BollingerBandWidth [ 20 ] (close ))
c4 = rsi [ 14 ] > 50
screener [ c1 and c2 and c3 and c4]