This recreates ewm(adjust=True).std() but I have no luck replicating the calculations in ewm(adjust=False).std(). Replicating ewm(False).mean() is easy but how is the bias corrected when the calculation for variance is recursive? From here the right formula seems to be: var = (1-alpha) * (var_t-1 + bias * alpha * (y-ema_t-1)**2) where bias=(2-alpha)/(1-alpha)/2. But how does it initialize, as the first values don't match up? Continue reading...