Filter partikel dalam contoh kode R - trivial

9

Saya mencari contoh kode sederhana tentang cara menjalankan Partikel Filter di R. Paket pomp tampaknya mendukung bit matematika ruang keadaan, tetapi contoh-contoh agak sulit untuk mengikuti secara pemrograman untuk pengembang OO sederhana seperti saya, khususnya cara memuat data yang diamati ke dalam objek pomp.

Katakanlah saya memiliki file csv dengan 1 kolom data berisik sebagai input, dan saya ingin menjalankannya melalui Filter Partikel agar mudah dibersihkan, dengan output sebagai estimasi, ke file csv lainnya.

 y <- read.csv("C:/Dev/VeryCleverStatArb/inputData.csv", header=FALSE)
 #CSV to Pomp object ???
 #Run Particle Filter
 #Write estimates to csv.

Kesulitan utama dengan contoh-contoh adalah memuat data csv ke objek pomp.

Model ruang keadaan yang sangat sederhana harus cukup baik untuk saat ini.

Ada ide untuk R-penasaran?

pengguna1180428
sumber
Ini mungkin berguna bagi siapa saja yang melihat perdagangan pasangan, atau perdagangan algoritmik secara umum, di mana ini adalah hubungan ekonomi yang dikelilingi oleh kebisingan.
IMHO Anda lebih baik mengkode filter sendiri ...
Dr G
Luar biasa! Sampel / tips / petunjuk untuk semua orang yang melihat ini? Solusi alternatif lebih baik daripada tidak ada solusi.
user1180428
@ user1180428: Saya telah mengedit jawaban saya, yang sekarang dapat memberikan alternatif yang memungkinkan bagi Anda.
Wayne

Jawaban:

1

EDIT: Tampaknya sebagian besar paket filter partikel hilang sekarang. Namun, saya telah bermain dengan LaplacesDemon (paket MCMC Bayesian) dan memiliki fungsi PMC (Population Monte Carlo) yang mengimplementasikan PMC, yang merupakan jenis filter partikel. Mungkin terlalu banyak mesin untuk jenis filter partikel cepat, tetapi sebuah paket layak dipelajari.

Anda dapat menemukan paket dan tutorial di CRAN .

ASLI: Sejujurnya, dalam kasus paling sederhana, pompsulit digunakan. Ini sangat fleksibel untuk apa pun yang Anda mungkin ingin lakukan, tetapi itu seperti menggunakan kapal ruang angkasa untuk pergi ke toko kelontong.

Sudahkah Anda mencoba melihat filter Kalman (jika data Anda memenuhi asumsi filter Kalman), termasuk fungsi dasar tsSmoothdan StructTS(hanya univariat), dan paket dlm? Saya juga akan melihat loessdan smoothers lainnya.

Saya harap saya salah dan seseorang melompat ke sini dengan cepat, "Inilah cara melakukannya untuk data univariat sederhana seperti yang Anda miliki dengan beberapa asumsi sederhana." Saya ingin bisa menggunakan paket sendiri.

Wayne
sumber
1
Pernah ke sana meretas itu. Sayangnya, rata-rata bergerak sederhana tampaknya memaku sinyal yang bisa digunakan lebih baik daripada filter Kalman dalam hal ini, dan banyak contoh lainnya - Kalman: tautan , SMA: tautan Data ini diam, sejauh Dickey Fuller p <0,01. Mungkin saya salah melakukannya. Sebuah skrip untuk menjalankan filter partikel pada data ini, dan kandidat perdagangan pasangan lain akan luar biasa (saya pikir).
user1180428