データフレーム内の財務データから指数移動平均(EMA)を計算しようとすると、Pandasのewmアプローチが正しくないようです。パンダはewmを間違って計算しますか?
weighted_average[0] = arg[0];
weighted_average[i] = (1-alpha) * weighted_average[i-1] + alpha * arg[i]
:(Falseに「調整」パラメータを使用して)パンダの説明に行くとき http://stockcharts.com/school/doku.php?id=chart_school:technical_indicators:moving_averages
は、撮影したアプローチは次のとおりです。
基本はうまく次のリンクで説明されていますこれは私の見解では間違っています。しかし、arg [0]は最初の平均(すなわち選択された期間の長さの最初の一連のデータの単純平均)ですが、最初の終値ではありません。したがって、arg [0]とarg [i]は同じデータからなることはありません。 "min_periods"パラメータを使用してもこの問題は解決されないようです。
パンダを使ってデータのEMAを正しく計算する方法を教えてください。
:ここ
coeff = 2/(period + 1)
は、あなたが上記の式を計算するためにパンダを使用する方法である
((current_val - previous_val) * coeff) + previous_val
問題:https://github.com/pydata/pandas/issues/13638 – naught101