Формула представляет собой скользящее среднее по абсолютной разнице между H_former
и H_latter
.
Если вы не возражаете против панд, вот пример:
import numpy as np
import pandas as pd
# H_diff = H_former - H_latter
H_diff = np.arange(10, dtype=int)
# H_diff = array([0, 1, 2, 3, 4, 5, 6, 7, 8, 9])
q = 2
# this line actually computes the MA
R = pd.Series(H_diff).abs().rolling(2*q+1, center=True).mean().values
# now R = array([nan, nan, 2., 3., 4., 5., 6., 7., nan, nan])
Если выпредпочитаю придерживаться только NumPy, в этом вопросе есть пример: Как рассчитать скользящее среднее с использованием NumPy?