財務時系列における堅牢な異常値検出


16

金融の時系列データ(つまりtickdata)から外れ値とエラー(原因が何であれ)を除去するための堅牢な手法を探しています。

ティックごとの財務時系列データは非常に乱雑です。これには、取引所が閉じられたときに大きな(時間)ギャップが含まれ、取引所が再び開かれたときに大きなジャンプが行われます。取引所が開いているとき、あらゆる種類の要因が間違った(発生しなかった)価格レベルでの取引を引き起こします、および/または市場を代表しません(例えば、誤って入力された入札または売値によるスパイク)。tickdata.com(PDF)によるこの論文は、問題の概要を説明するのに適していますが、具体的な解決策はほとんどありません。

この問題について言及している私がオンラインで見つけることができるほとんどの論文は、それを無視するか(tickdataがフィルターされていると想定されます)、または便利なフィルター手順を隠す巨大な取引モデルの一部としてフィルターを含めます。

この分野でより詳細な作業を知っている人はいますか?

更新: この質問は表面上は似ているように見えますが:

  • 財務時系列は(少なくともティックレベルで)非周期的です。
  • 開封効果は大きな問題です。なぜなら、本当にしたいのに、それ以外の場合は何も持っていないので、最終日のデータを初期化として単純に使用できないからです。外部の出来事により、新しい日のオープンは、絶対レベルと前日のボラティリティの両方で劇的に異なる場合があります。
  • 着信データの非常に不規則な頻度。1日のほぼ開いた状態と閉じた状態では、1秒あたりのデータポイントの量は、1日の平均の10倍になります。もう1つの質問は、定期的にサンプリングされたデータに関するものです。
  • 金融データの「外れ値」は、他のドメインでは適用できない特定の手法で検出できる特定のパターンを示しており、その特定の手法を部分的に探しています。
  • より極端な場合(フラッシュクラッシュなど)、外れ値は長い間隔(> 10分)でデータの75%を超える可能性があります。さらに、着信データの(高)頻度には、状況の異常値の側面に関する情報が含まれています。

1
データの性質上、これが重複しているとは思わない。関係する他の質問で議論された問題は、時折異常値を伴う時系列を定期的に観察しました(少なくともそれは私がそれを解釈した方法です)。ティックごとのデータの性質は、取引所の開放効果により異なるソリューションにつながります。
ロブハインドマン

一般的な時系列のオンライン異常値検出のため単純なアルゴリズムの可能な重複この質問は、重複として閉じられることが提案されています。あなたのコンテキストが私がリンクした質問とどう違うのか、メタスレッドでお知らせください。

@Robただし、交換の開始効果は、アルゴリズムを実行する必要があるときのみ決定します。基本的な問題は同じままです。ネットワークデータであっても、オフィスが開くとすぐにトラフィックがピークになる「オフィス開設効果」があります。少なくとも、OPはその質問にリンクし、そこで回答をスキャンし、その質問に対する適切な回答を投稿できるように、そこでの解決策が機能しない理由を説明する必要があります。

1
@Robに同意します。この種のデータは固有の問題を引き起こす可能性があるため、これは重複ではありません。
シェーン

1
ここに属していると思います。問題は、不規則な間隔の非常にノイズの多い時系列を分析することです。Dacorogna、Olsen、その他多数の「高周波金融入門」をご覧になりましたか?または、同じ著者による論文ですか?
PeterR

回答:


14

問題は間違いなく難しい

機械+/-ようなルールN1倍の標準偏差、または+ / N2倍のMAD、または+/- N3 IQRか... 例えばとして異なるいくつかのシリーズが常に存在するため失敗します。

  • 銀行間レートのような固定はしばらくの間一定であり、そして突然跳ぶ
  • 同様に、例えばペグから外れる特定の外国為替についても
  • 特定の商品は暗黙的に拡散されています。これらは、期間および突然のジャンプ多様体のすべてでゼロに近い場合があります

そこに行って、それをして、...前の仕事で。アービトラージ関係船を使用して各シリーズをブラケットすることができます(たとえば、USD / EURおよびEUR / JPYが良好であると仮定すると、USD / JPYがどうあるべきかについてバンドを計算することができます。

商用データベンダーはこれにある程度の努力を広げており、自分のクライアントである使用者は知っています...それでもエラーを排除しません。


+1はい、完璧なものはありません。Tickdata.com(論文が言及されている)にも異常値が含まれており、(他のソースと比較した場合)あまりにも多くの良いデータを取り除いています。オルセンのデータはひどいものに近いので、一般的には単なる目安です。銀行がこれに取り組むために大きな運用チームに支払う理由があります。
シェーン

既知の裁定関係の使用に関するあなたのアイデアが好きです。前の仕事でこれを試しましたか?
ジルデウィット

いいえ、それを完全に公式化したことはありません。しかし、私たちはいくつかの単純なもの(つまり、ETF対基礎インデックスなど)を使用したと思います。でも数年ぶりです。
ダークエデルブエッテル

8

コンピューターに戻ったら、ペーパーリファレンスを追加しますが、以下に簡単な提案を示します。

間違いなくリターンで作業することから始めます。これは、不規則な間隔に対処するために重要です。不規則な間隔では、自然に大きな価格差を得ることができます(特に週末)。次に、単純なフィルターを適用して、標準外のリターンを削除することができます(例:多数の標準偏差)。リターンは新しい絶対レベルに調整されるため、大きな実際の変更は1ティックのみの損失になります。外れ値のクラスターを処理するために、1ステップとnステップから取得した戻り値で2パスフィルターを使用することをお勧めします。

編集1:リターンではなく価格の使用に関して:資産価格は固定的ではない傾向があるため、いくつかの追加の課題をもたらす可能性があります。不規則性とべき乗則の効果を説明するために、フィルターにそれらを含める場合は、何らかの調整をお勧めします。時間間隔またはボラティリティによって価格の変更をスケーリングできます。これに関する議論については、「実現ボラティリティ」文学を参照できます。Dacorogna et alでも議論されています。等

ボラティリティの変化に対応するために、過去1週間の同じ時刻からのボラティリティ計算を(季節性を使用して)基にしてみることができます。


リターンのみを使用すると、ラダー(つまり、個々のリターンが許容されるが、異常値を表すグループとして、標準から上昇または下降する一連の価格)に対して非常に脆弱になります。理想的には、リターンレベルと絶対レベルの両方を使用します。
ジルデウィット

5

無条件の狂人/中央値の「適応性」の欠如についてのあなたの懸念を反映するために、私は(少し遅れて)私の答えを変更しました。

(μ^t,σ^t)

xtμ^tσ^t

このペーパーで詳細情報(およびRパッケージへのリンク)を見つけることができます。

Boudt、K。およびCroux、C。(2010)。多変量GARCHモデルの堅牢なM推定。


私はこのようなことを試みましたが、この方法はボラティリティの急激な変化に対処するのにはあまり適していません。これは、静かな時間帯ではアンダーフィルターになり、より忙しい時間帯ではオーバーフィルターになります。
ジルデウィット

私はこれを理解していません「これは、静かな時期に過小フィルタリングになり、より忙しい時間に過フィルタリングになります」と説明する気がしますか?
user603

閑散期には価格のボラティリティが低くなる傾向があるため、平均に近い価格は外れ値と見なすことができます。ただし、MADを(おそらく)取引日全体(またはそれ以上)で使用するため、これらの外れ値は中央値から3 MAD未満離れており、フィルタリングされません。逆は、価格の変動が大きい繁忙期には当てはまります(許容可能な価格の変動はフィルタリングされます)。したがって、問題は常にMADを適切に推定することになり、これが最初の問題です。
ジルデウィット
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.