5

株価の時系列があり、10分間の移動平均を計算したいと思います(下の図を参照)。価格ティックは散発的に発生するため(つまり、定期的ではないため)、時間加重移動平均を計算するのが最も公平であるように思われます。

時系列

この図では、A、B、C、Dの4つの価格変更があり、後者の3つはウィンドウ内で発生します。Bはウィンドウ内のある時間(たとえば3分)にしか発生しないため、Aの値は依然として計算に寄与することに注意してください。

実際、私が知る限り、計算はA、B、C( Dではなく)の値と、それらと次のポイントの間の期間(または、Aの場合:開始から開始までの期間)のみに基づく必要があります。時間枠とB)の。時間の重み付けがゼロになるため、最初はDは効果がありません。 これは正しいです?

これが正しいと仮定すると、私の懸念は、移動平均が非加重計算(Dの値をすぐに説明する)よりも「遅れる」ことです。ただし、非加重計算には独自の欠点があります。

  • 「A」は、時間枠外であっても、他の価格と同じくらい結果に影響を与えます。
  • 急な高値の急上昇は移動平均に大きなバイアスをかけます(おそらくこれは望ましいですか?)

どのアプローチが最適と思われるか、または検討する価値のある代替(またはハイブリッド)アプローチがあるかどうかについて、誰かがアドバイスを提供できますか?

4

4 に答える 4

9

2つの提案は個別の世界からのものですが、特定のケースのインスピレーションを見つけることができます。

指数平滑法を見てください。このアプローチでは、「予測」値に対する最近の要素の影響を変更できる平滑化係数(α∈[0; 1])を導入します(古い要素には指数関数的に減少する重みが割り当てられます)。

s t =αxt -1 +(1 +α)s t-1 ; s 1 = x 0

x=[1 1 1 1 3 3 2 2 2 1]指数平滑法が3つの異なるα={0.3、0.6、0.9}で均一な時系列を追跡する方法の簡単なアニメーションを作成しました。

ここに画像の説明を入力してください

TD学習Q学習など、強化学習手法のいくつかもご覧ください(さまざまな割引方法をご覧ください)。

于 2012-04-14T21:57:36.567 に答える
4

あなたの推論は正しいです。しかし、平均を何に使用したいですか?アドバイスをするのは難しいことを知らずに。

おそらく別の方法は、移動平均Aを検討し、新しい値Vが入ったときに、新しい平均A'を(1-c)* A + c * Vと計算します。ここで、cは0から1の間です。最近のダニはより強い影響力を持ち、古いダニの影響は時間とともに消えていきます。前の目盛りからの時間に応じてcを設定することもできます(目盛りが近づくにつれてcは小さくなります)。

最初のモデル(重み付け)では、平均は毎秒異なります(古い読み取り値は重みが低くなり、新しい読み取り値は高くなるため)。したがって、常に変化しますが、これは望ましくない場合があります。2番目のアプローチでは、新しい価格が導入され、古い価格がウィンドウから消えると、価格が急上昇します。

于 2012-04-14T21:50:38.270 に答える
4

トムの答えを拡張する際に、ティック間の間隔を考慮するための式を形式化することができます(近いティックは比例して低い重みを持ちます)。

ema n = u * ema n-1 +(v --u)* x n-1 +(1- v)* x n

どこ:

a =(t n --t n-1)/ T
つまり、aは平均化間隔に対する到着時間のデルタの比率です。

u = e -a

v = 1(前のポイントを使用)、または
v =(1-u)/ a(線形補間>、または
v = u(次のポイント)

詳細については、 『高周波ファイナンス入門』の59ページを参照してください。

于 2013-12-22T23:25:09.387 に答える
3

はい、移動平均はもちろん遅れます。これは、その値が履歴情報であるためです。過去10分間の価格のサンプルを要約します。この種の平均は本質的に「遅れ」です。5分のオフセットが組み込まれています(オフセットのないボックス平均は、サンプルを中心とした+/- 5分に基づくため)。価格が長期間Aにあり、その後1回Bに変更された場合、平均が(A + B)/2に達するまでに5分かかります。

ドメインをシフトせずに関数を平均化/平滑化する場合は、重みをサンプルポイントの周囲に均等に分散させる必要があります。しかし、将来のデータが利用できないため、リアルタイムで発生する価格に対してこれを行うことは不可能です。

Dのような最近の変更に大きな影響を与えたい場合は、最近のデータに大きな重みを与える平均、または短い期間、あるいはその両方を使用します。

データを平滑化する1つの方法は、単一のアキュムレータ(「平滑化された推定量」)を使用してE、データの定期的なサンプルを取得することSです。 E次のように更新されます。

E = E + K(S - E)

つまり、現在の価格サンプルSと推定量Eの差の端数K(0と1の間)がEに追加されます。価格がAに長期間存在していたため、EがAになり、その後突然に発生したとします。 Bに変更されます。推定器は指数関数的にBに向かって移動し始めます(加熱/冷却、コンデンサの充電/放電など)。最初は大きくジャンプし、次に少しずつ増加します。移動速度はKによって異なります。Kが0の場合、推定器はまったく移動せず、Kが1の場合、瞬時に移動します。Kを使用すると、新しいサンプルに対して推定量に与える重みを調整できます。より最近のサンプルにより多くの重みが暗黙的に与えられ、サンプルウィンドウは基本的に無限大に拡張されます。Eはこれまでに発生したすべての値サンプルに基づいています。もちろん、非常に古いものは現在の値にほとんど影響を与えませんが。とてもシンプルで美しい方法です。

于 2012-04-14T21:50:50.843 に答える