I'm trying to detect outliers within a financial time series which represents the ratio of cash distributions to equity holders as a percentage operating earnings for the period. Visual inspection indicates several large outliers, mostly associated around the crisis periods in '08-'09. I believe the series should likely be trend stationary as the process shouldn't have a zero mean and a time trend does not make economic sense. KPSS testing indicates stationarity around a non-zero mean which makes sense. However, I believe the indicated level is too low because of the outliers mentioned. The TSO() function, which I've used before, kicks back an error that the value supplied by optim is non-finite. I've never encountered this before and am unsure how to proceed.
To clarify, I did run auto.arima long with examining the ACF/PACF plots and no autoregressive structure was found (0,0,0). I also tinkered with the innovation types with TSO, setting to "AO" only as I think these are actually the only appropriate ones when the nature of the data is considered. This returned an error as well, I believe it implied that an invertible matrix was found somewhere.
I tried altering the CVAL parameter as well, this did not seem to make a difference. Interestingly, I did discover that changing the remove.method to "bottom-up" rather than the default setting did allow for the function to run - I think I need to better understand what is actually going on by doing that however because the auto.arima function returns ARIMA(0,1,0) with a zero mean whereas auto.arima on the original series returns arma(0,0,0) - it seems that the bottom-up outlier removal results in a difference stationary series and I believe that given the fundamentals of the series it is actually likely to be stationary around a non-zero mean but the mean value is skewed due to outliers.