Open ryan-gunderson opened 3 years ago
I think lines 1140 to 1145 in Ema.cpp (https://github.com/rtosholdings/riptide_cpp/blob/ccf5c3c8901378d6ff08272863aa430f26965016/src/Ema.cpp) are at least partly to blame. Deleting these lines makes it similar to the implementation in rt_fastarraynumba which works correctly. Of course, these only get called when pIncludeMask != Null. I am not sure if it does anything with the filter if that is not the case, but maybe there is a reason why having a filter always implies pIncludeMask is not Null. Regardless, I would try deleting those lines and testing it out afterward. I think that might fix the problem.
Using version
1.5.2
:It appears that when supplying a a filter to
ema_decay
instead of using zero in the filtered positions it uses the last unfiltered value. While this might make sense forema_normal
it is incorrect forema_decay
.gives
The
EDS_Evens
column is consistent with it only ever seeing zeros and theEDS_Odds
column is consistent with it only ever seeing ones.