Why does FFT not have an effect on my smoothed signal?
The answer is that the resulting vector from 

x_smooth = pd.rolling_mean(pd.DataFrame(x), 14).replace(np.nan, 0.0).as_matrix()


was not flat.

I just had to change

x_smooth = x_smooth - np.mean(x_smooth)


to

x_smooth = (x_smooth - np.mean(x_smooth)).flatten()


which changes a vector from

[...
 [  3.53890989e-01]
 [  1.21347337e-01]
 [ -3.39968386e-01]
 [ -5.37617124e-01]
 [ -5.20015023e-01]
 [ -5.57602781e-01]
 [ -5.89304486e-01]
 [ -6.27991220e-01]
 [ -7.61544946e-01]
 ...]


to something like:

[...
 -0.56731051 -0.59901221 -0.63769895 -0.77125267 -0.89067055 -1.28890512
 -1.49325225 -1.59707353 -1.6298505  -1.42489726 -1.296161   -1.01562861
 -0.76996748 -0.75370003 -0.80788025 -0.8353555  -0.78678532 ...]


and we finally get