The built in factor for RSI does not match talib RSI. This is most evident for short look back periods.
I believe this is because the built in RSI factor uses a simple moving average of gains and losses, while the talib RSI implementation likely uses an exponential moving average of gains and losses.
For short look back periods, you can easily get values of 0 or 100 for for RSI using SMA while it is not possible (or very unlikely I would think) to get such extreme values with an EMA implementation like talib.RSI.
Would it be possible to add a parameter to the built in RSI to select SMA or EMA? To make it back compatible, the default could be set to SMA.
Otherwise I find myself adding the RSI factor outside of the pipeline which really slows down the back test. I did see a post that talks about how to use talib with pipeline but it seems very complicated to implement and more than I care to take on. Also I don't really care to program my own version of RSI from scratch as a custom factor. RSI is a complicated function as it deal with streaks and uses EMAs ; I would probably get it wrong.