Finansal zamanlamalarda güçlü aykırı değer tespiti


16

Finansal zaman serisi verilerinden (yani tickdata) aykırı değerleri ve hataları (nedeni ne olursa olsun) kaldırmak için bazı sağlam teknikler arıyorum.

Tick-by-tick mali zaman serisi verileri çok dağınık. Borsa kapatıldığında büyük (zaman) boşluklar içerir ve borsa tekrar açıldığında büyük sıçramalar yapar. Borsa açık olduğunda, her türlü faktör, fiyat seviyelerinde yanlış (gerçekleşmemiş) ve / veya piyasayı temsil etmeyen (yanlış girilen bir teklif veya teklif fiyatı nedeniyle ani artış) alım satım yapar. Tickdata.com (PDF) tarafından hazırlanan bu makale , sorunu özetlemekte iyi bir iş çıkarmaktadır, ancak birkaç somut çözüm sunmaktadır.

Çevrimiçi olarak bu problemden bahsettiğim çoğu makale ya görmezden geliyor (tickdata filtrelenmiş kabul ediliyor) ya da filtrelemeyi, yararlı filtreleme adımlarını gizleyen bazı büyük ticaret modelinin bir parçası olarak dahil ediyor.

Bu alanda daha derinlemesine çalışmaların farkında olan var mı?

Güncelleme: Bu sorular yüzeyde benzer görünüyor, ancak:

  • Finansal zaman serileri (en azından kene düzeyinde) periyodik değildir.
  • Açılış efekti büyük bir sorundur, çünkü gerçekten isteseniz bile son günün verilerini başlatma olarak kullanamazsınız (aksi takdirde hiçbir şeyiniz yoktur). Dış olaylar, yeni günün açılışının hem mutlak düzeyde hem de önceki günden oynaklıkta önemli ölçüde farklılık göstermesine neden olabilir.
  • Gelen verilerin çılgınca düzensiz sıklığı. Günün açık ve kapalı olduğu günlerde veri noktası / saniye miktarı gün içindeki ortalamanın 10 katı kadar olabilir. Diğer soru düzenli olarak örneklenmiş verilerle ilgilidir.
  • Finansal verilerdeki "aykırı değerler", diğer alanlarda uygulanamayan spesifik tekniklerle tespit edilebilecek bazı spesifik örüntüler sergiler ve ben de bu spesifik teknikleri arıyorum.
  • Daha uç durumlarda (örn. Flaş çökmesi) aykırı değerler, daha uzun aralıklarla (> 10 dakika) verilerin% 75'inden daha fazla olabilir. Ek olarak, gelen verilerin (yüksek) sıklığı, durumun dışa dönük yönü hakkında bazı bilgiler içerir.

1
Verilerin doğası gereği bunun bir kopya olduğunu düşünmüyorum. Diğer soruda tartışılan sorun, zaman zaman aykırı değerlerle düzenli olarak gözlemlenen zaman serileriyle ilgiliydi (en azından ben böyle yorumladım). Kene-kene verilerinin doğası, borsa açma etkisi nedeniyle farklı çözümlere yol açacaktır.
Rob Hyndman

Genel bir zaman serisinin çevrimiçi aykırı değer tespiti için basit algoritmanın olası kopyası Bu sorunun kopya olarak kapatılması önerilmektedir. Bağlamınızın bağladığım sorudan farklı olup olmadığını ve nasıl olduğunu meta parçasında bize bildirir misiniz?

@Rob Ancak değişim açma efekti sadece algoritmayı ne zaman çalıştırmanız gerektiğini belirler. Temel konu aynı. Ağ verilerinde bile, bir ofis açılır açılmaz trafiğin yoğunlaştığı 'ofis açma etkisine' sahipsiniz. En azından, OP bu soruya bağlantı vermeli, oradaki cevapları taramalı ve oradaki çözümlerin neden işe yaramadığını açıklamalı, böylece bu soru için uygun bir cevap gönderilebilir.

1
@Rob ile aynı fikirdeyim. Bu tür veriler benzersiz zorluklar doğurabilir, bu yüzden bu bir kopya değildir.
Shane

1
Sanırım buraya ait. Soru düzensiz aralıklı, çok gürültülü zaman serilerini analiz etmektir. Dacorogna, Olsen ve bir grup başkalarının "Yüksek Frekanslı Finansmana Giriş" e baktınız mı? Yoksa aynı yazarların makaleleri mi?
PeterR

Yanıtlar:


14

Sorun kesinlikle zor .

+/- gibi mekanik kurallar N1 kez standart sapma, veya + / N2 kez MAD veya +/- N3 veya DAG'den ... olacak örneğin farklı zaman bazı serileri olduğundan başarısız:

  • bankalar arası oran gibi sabitlemeler bir süre sabit kalabilir ve sonra aniden atlayabilir
  • benzer şekilde, örneğin bir peg'den çıkan bazı döviz borsaları için
  • belirli araçlar dolaylı olarak yayılır; bunlar dönemler boyunca sıfıra yakın olabilir ve ani sıçrama manifoldunun tümü

Orada bulundum, bunu yaptım, ... önceki bir işte. Arbitraj ilişkileri gemilerini kullanarak her seriyi desteklemeye çalışabilirsiniz ( örn. USD / EUR ve EUR / JPY'nin iyi olduğu varsayılırsa, USD / JPY'nin ne olması gerektiği konusunda bantlar çalışabilirsiniz; benzer şekilde altta yatan vb.

Ticari veri satıcıları bu konuda biraz çaba harcarlar ve müşterileri olan kullanımları bilir ... yine de hataları hariç tutmaz.


+1 evet, hiçbir şey mükemmel değil. Tickdata.com (makalesi geçen) de aykırı değerlere sahiptir ve çok fazla iyi veri çıkarırlar (başka bir kaynakla karşılaştırıldığında). Olsen'in verileri korkunç olmaya yakın ve genellikle sadece gösterge niteliğindeyim. Bankaların bu konuda çalışmak için büyük operasyon ekiplerine ödeme yapmasının bir nedeni var.
Shane

Bilinen arbitraj ilişkilerini kullanma fikrinizi seviyorum. bunu önceki işinizde hiç denediniz mi?
jilles de wit

Hayır, bunu asla tam olarak resmileştirmedik. Ama bazı basit olanları kullandığımızı düşünüyorum (yani ETF vs altta yatan dizin vb.). Birkaç yıl geçti.
Dirk Eddelbuettel

8

Bir bilgisayara döndüğümde bazı kağıt referansları ekleyeceğim, ancak bazı basit öneriler:

Kesinlikle iadelerle çalışarak başlayın. Bu, doğal olarak büyük fiyat boşlukları (özellikle hafta sonları) alabileceğiniz düzensiz aralıklarla uğraşmak için önemlidir. Ardından, normların çok dışındaki getirileri kaldırmak için basit bir filtre uygulayabilirsiniz (örneğin, çok sayıda standart sapmaya karşı). İadeler yeni mutlak seviyeye ayarlanır, bu nedenle büyük gerçek değişiklikler sadece bir kene kaybına neden olur. Aykırı kümeler ile başa çıkmak için 1 adım ve n adımdan alınan geri dönüşlerle iki geçişli filtre kullanmanızı öneririm .

Düzenleme 1: Getiri yerine fiyatların kullanımı ile ilgili olarak: varlık fiyatları sabit olma eğilimindedir, bu nedenle IMO bazı ek zorluklar yaratabilir. Düzensizlik ve güç yasası etkilerini hesaba katmak için, bunları filtrenize dahil etmek istiyorsanız bir tür ayarlama önerebilirim. Fiyat değişikliklerini zaman aralığına veya oynaklığa göre ölçeklendirebilirsiniz. Bununla ilgili bazı tartışmalar için "gerçekleşen oynaklık" litresine başvurabilirsiniz. Dacorogna ve ark. ark.

Volatilitedeki değişiklikleri hesaba katmak için, volatilite hesaplamanızı geçen hafta boyunca günün aynı saatinden (mevsimsellik kullanarak) dayandırmayı deneyebilirsiniz.


Sadece getirileri kullanarak merdivenlere karşı çok savunmasız hale gelirsiniz (yani her bir bireysel geri dönüşün kabul edilebilir olduğu, ancak bir grup olarak bir aykırı değeri temsil ettikleri normdan tırmanan veya uzaklaşan bir dizi fiyat). İdeal olarak hem dönüşü hem de mutlak seviyeyi kullanırsınız.
jilles de wit

5

Koşulsuz deli / medyanın 'adaptasyon' eksikliği konusundaki endişenizi yansıtacak şekilde (biraz gecikmeyle) cevabımı değiştirdim.

(μ^t,σ^t)

xtμ^tσ^t

Bu makalede daha fazla bilgi (ve bir R paketine bağlantı) bulabilirsiniz :

Boudt, K. ve Croux, C. (2010). Çok Değişkenli GARCH Modellerinin Sağlam M-Tahmini.


Böyle bir şey denedim, ancak bu yöntem volatilitedeki ani değişikliklerle uğraşmada çok iyi değil. Bu, sessiz dönemlerde yetersiz filtrelemeye ve daha yoğun zamanlarda aşırı filtrelemeye neden olur.
jilles de wit

Bunu anlamıyorum "Bu sessiz dönemlerde aşırı filtrelemeye ve daha yoğun zamanlarda aşırı filtrelemeye yol açar" açıklamaya özen gösteriyor musunuz?
user603

Sessiz dönemlerde fiyat oynaklığı daha düşük olma eğilimindedir, bu nedenle ortalamaya yakın fiyatlar aykırı değerler olarak düşünülebilir. Ancak, MAD'i (muhtemelen) tüm işlem günü (veya daha uzun bir süre) için kullandığınız için, bu aykırı değerler medyandan 3 MAD'den daha azdır ve filtrelenmeyecektir. Bunun tersi, daha yüksek fiyat hareketlerine sahip yoğun dönemler için geçerlidir (kabul edilebilir fiyat hareketleri filtrelenir). Böylece sorun, MAD'in her zaman doğru bir şekilde tahmin edilmesine indirgenir;
jilles de wit
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.