This function supports 7 different complex moving averages. These involve multiple steps beyond simple, exponential, etc. In many (but not all) cases results were reconciled against known standards. Included indicators include DEMA (Mulloy double EMA), TEMA (Mulloy triple EMA), EHMA (Hull EMA), WHMA (Hull WMA), TRIX (3-times EMA with rate of change indicator), T3 (Tillson MA), and KMA (Kaufman adaptive MA). The function attempts to remove intervening NaNs before computing specified MA series and then reinsert NaNs into proper place afterwards.
Expanded to 7 different MA types.