Sunday 2 July 2017

Moving Average Regression Stata


Moving averages Moving averages Dengan dataset konvensional, nilai rata-rata seringkali merupakan yang pertama, dan salah satu statistik ringkasan yang paling berguna untuk dihitung. Bila data dalam bentuk deret waktu, mean seri adalah ukuran yang berguna, namun tidak mencerminkan sifat dinamis data. Nilai rata-rata yang dihitung selama periode korsleting, baik sebelum periode sekarang atau berpusat pada periode berjalan, seringkali lebih bermanfaat. Karena nilai rata-rata seperti itu akan bervariasi, atau bergerak, karena periode saat ini bergerak dari waktu t 2, t 3. dll, mereka dikenal sebagai moving averages (Mas). Rata-rata pergerakan sederhana adalah (biasanya) nilai rata-rata k yang tidak tertimbang sebelumnya. Rata-rata pergerakan tertimbang secara eksponensial pada dasarnya sama dengan rata-rata pergerakan sederhana, namun dengan kontribusi rata-rata tertimbang oleh kedekatannya dengan waktu saat ini. Karena tidak ada satu, tapi keseluruhan rangkaian rata-rata bergerak untuk rangkaian tertentu, himpunan Mas dapat digambarkan sendiri pada grafik, dianalisis sebagai seri, dan digunakan dalam pemodelan dan peramalan. Berbagai model dapat dibangun menggunakan moving averages, dan ini dikenal dengan model MA. Jika model seperti itu digabungkan dengan model autoregresif (AR) maka model komposit yang dihasilkan dikenal sebagai model ARMA atau ARIMA (yang saya terintegrasi). Rata-rata bergerak sederhana Karena deret waktu dapat dianggap sebagai himpunan nilai,, t 1,2,3,4, n rata-rata nilai-nilai ini dapat dihitung. Jika kita berasumsi bahwa n cukup besar, dan kita memilih bilangan bulat k yang jauh lebih kecil dari n. Kita dapat menghitung satu set rata-rata blok, atau rata-rata bergerak sederhana (urutan k): Setiap ukuran mewakili rata-rata nilai data selama interval observasi k. Perhatikan bahwa MA yang pertama mungkin order k gt0 adalah bahwa untuk t k. Secara umum, kita dapat menurunkan subskrip ekstra dalam ungkapan di atas dan menulis: Ini menyatakan bahwa perkiraan mean pada waktu t adalah rata-rata sederhana dari nilai yang teramati pada waktu t dan langkah waktu k -1 sebelumnya. Jika bobot diterapkan yang mengurangi kontribusi pengamatan yang jauh melampaui waktu, rata-rata bergerak dikatakan merapikan secara eksponensial. Moving averages sering digunakan sebagai bentuk peramalan, dimana nilai estimasi untuk seri pada waktu t 1, S t1. Diambil sebagai MA untuk periode sampai dan termasuk waktu t. misalnya Taksiran hari ini didasarkan pada rata-rata nilai tercatat sebelumnya sampai dengan dan termasuk kemarin (untuk data harian). Simple moving averages dapat dilihat sebagai bentuk smoothing. Pada contoh diilustrasikan di bawah ini, dataset pencemar udara yang ditunjukkan dalam pendahuluan topik ini telah ditambah dengan garis rata-rata bergerak 7-hari (MA), yang ditunjukkan di sini berwarna merah. Seperti dapat dilihat, garis MA menghaluskan puncak dan palung data dan bisa sangat membantu dalam mengidentifikasi tren. Rumus perhitungan maju standar berarti bahwa titik data k pertama tidak memiliki nilai MA, namun setelah itu perhitungan berlanjut ke titik data akhir dalam rangkaian. Nilai rata-rata harian PM10, sumber Greenwich: London Air Quality Network, londonair. org. uk Salah satu alasan untuk menghitung rata-rata bergerak sederhana dengan cara yang dijelaskan adalah memungkinkan nilai dihitung untuk semua slot waktu dari waktu hingga saat ini, dan Sebagai pengukuran baru diperoleh untuk waktu t 1, MA untuk waktu t 1 dapat ditambahkan ke himpunan yang sudah dihitung. Ini menyediakan prosedur sederhana untuk dataset dinamis. Namun, ada beberapa masalah dengan pendekatan ini. Adalah wajar untuk mengatakan bahwa nilai rata-rata selama 3 periode terakhir, katakanlah, harus ditempatkan pada waktu t -1, bukan waktu t. Dan untuk MA selama periode genap mungkin sebaiknya ditempatkan di titik tengah antara dua interval waktu. Solusi untuk masalah ini adalah dengan menggunakan perhitungan MA terpusat, di mana MA pada waktu t adalah rata-rata seperangkat nilai simetris di sekitar t. Terlepas dari manfaatnya yang jelas, pendekatan ini umumnya tidak digunakan karena memerlukan data tersedia untuk kejadian di masa depan, yang mungkin tidak demikian. Dalam kasus di mana analisis seluruhnya merupakan rangkaian yang ada, penggunaan Mas terpusat mungkin lebih baik. Rata-rata bergerak sederhana dapat dianggap sebagai bentuk perataan, mengeluarkan beberapa komponen frekuensi tinggi dari deret waktu dan menyoroti (namun tidak menghilangkan) tren dengan cara yang serupa dengan pengertian umum penyaringan digital. Memang, moving averages adalah bentuk linear filter. Hal ini dimungkinkan untuk menerapkan perhitungan rata-rata bergerak ke rangkaian yang telah diperhalus, yaitu merapikan atau menyaring rangkaian yang sudah diperhalus. Sebagai contoh, dengan rata-rata pergerakan order 2, kita dapat menganggapnya sebagai dihitung dengan menggunakan bobot, jadi MA pada x 2 0,5 x 1 0,5 x 2. Demikian juga MA pada x 3 0,5 x 2 0,5 x 3. Jika kita Oleskan tingkat kedua dari smoothing atau penyaringan, kita memiliki 0,5 x 2 0,5 x 3 0,5 (0,5 x 1 0,5 x 2) 0,5 (0,5 x 2 0,5 x 3) 0,25 x 1 0,5 x 2 0,25 x 3 yaitu penyaringan 2 tahap Proses (atau konvolusi) telah menghasilkan mean moving average simetris yang bervariasi, dengan bobot. Beberapa konvolusi dapat menghasilkan rata-rata pergerakan tertimbang yang cukup kompleks, beberapa di antaranya telah ditemukan penggunaan khusus di bidang khusus, seperti dalam perhitungan asuransi jiwa. Moving averages dapat digunakan untuk menghilangkan efek periodik jika dihitung dengan panjang periodisitas seperti yang diketahui. Misalnya, dengan variasi musiman data bulanan seringkali dapat dihapus (jika ini adalah tujuannya) dengan menerapkan rata-rata pergerakan 12 jam simetris dengan semua bulan berbobot rata, kecuali yang pertama dan terakhir yang dibobot pada 12. Hal ini karena akan ada Menjadi 13 bulan dalam model simetris (waktu sekarang, t - 6 bulan). Total dibagi dengan 12. Prosedur serupa dapat diadopsi untuk periodisitas yang didefinisikan dengan baik. Rata-rata pergerakan tertimbang secara eksponensial (EWMA) Dengan rumus rata-rata bergerak sederhana: semua pengamatan sama-sama tertimbang. Jika kita menyebut bobot yang sama ini, alpha t. Masing-masing bobot k akan sama dengan 1 k. Jadi jumlah bobotnya adalah 1, dan rumusnya adalah: Kita telah melihat bahwa beberapa aplikasi dari proses ini menghasilkan bobot yang bervariasi. Dengan rata-rata pergerakan tertimbang secara eksponensial, kontribusi terhadap nilai rata-rata dari pengamatan yang lebih banyak dihapus pada waktunya akan dikurangi, sehingga menekankan kejadian terkini (lokal). Pada dasarnya parameter penghalusan, 0lt alpha lt1, diperkenalkan, dan rumusan direvisi menjadi: Versi simetris dari rumus ini adalah bentuknya: Jika bobot pada model simetris dipilih sebagai persyaratan istilah ekspansi binomial, (1212) 2q. Mereka akan berjumlah 1, dan sebagai q menjadi besar, akan mendekati distribusi Normal. Ini adalah bentuk pembobotan kernel, dengan Binomial berperan sebagai fungsi kernel. Konvolusi dua tahap yang dijelaskan dalam subbab sebelumnya adalah pengaturan ini, dengan q 1, menghasilkan bobot. Dalam eksponensial smoothing perlu menggunakan seperangkat bobot yang berjumlah 1 dan yang ukurannya kurang dari geometris. Bobot yang digunakan biasanya berbentuk: Untuk menunjukkan bahwa bobot ini berjumlah 1, pertimbangkan perluasan 1 sebagai rangkaian. Kita dapat menulis dan memperluas ekspresi dalam tanda kurung dengan menggunakan rumus binomial (1- x) hal. Dimana x (1-) dan p -1, yang memberikan: Ini kemudian memberikan bentuk rata-rata bergerak tertimbang dalam bentuk: Penjumlahan ini dapat ditulis sebagai relasi rekurensi: yang menyederhanakan perhitungan dengan sangat, dan menghindari masalah bahwa rezim pembobotan Harus benar-benar tak terbatas untuk bobot untuk jumlah untuk 1 (untuk nilai-nilai kecil alfa. ini biasanya tidak terjadi). Notasi yang digunakan oleh penulis berbeda bervariasi. Beberapa menggunakan huruf S untuk menunjukkan bahwa rumus dasarnya adalah variabel yang dihaluskan, dan tulis: sedangkan literatur teori kontrol sering menggunakan Z daripada S untuk nilai tertimbang secara eksponensial atau merapikan (lihat, misalnya, Lucas dan Saccucci, 1990, LUC1 , Dan situs NIST untuk lebih jelasnya dan contoh kerja). Rumus yang dikutip di atas berasal dari karya Roberts (1959, ROB1), namun Hunter (1986, HUN1) menggunakan ekspresi dari bentuk: yang mungkin lebih sesuai untuk digunakan dalam beberapa prosedur pengendalian. Dengan alpha 1, perkiraan rata-rata hanyalah nilai terukurnya (atau nilai item data sebelumnya). Dengan 0,5 perkiraan adalah rata-rata bergerak sederhana dari pengukuran arus dan sebelumnya. Dalam peramalan model nilai, S t. Sering digunakan sebagai perkiraan atau perkiraan nilai untuk periode waktu berikutnya, yaitu sebagai perkiraan x pada waktu t 1. Jadi, kita memiliki: Ini menunjukkan bahwa nilai perkiraan pada waktu t 1 adalah kombinasi dari rata-rata pergerakan tertimbang eksponensial sebelumnya Ditambah komponen yang mewakili kesalahan prediksi tertimbang, epsilon. Pada waktu t. Dengan asumsi deret waktu diberikan dan perkiraan diperlukan, nilai untuk alpha diperlukan. Hal ini dapat diperkirakan dari data yang ada dengan mengevaluasi jumlah kesalahan prediksi kuadrat yang diperoleh dengan nilai alpha yang bervariasi untuk masing-masing t 2,3. Menetapkan perkiraan pertama menjadi nilai data pertama yang diamati, x 1. Pada aplikasi kontrol, nilai alpha penting untuk digunakan dalam penentuan batas kontrol atas dan bawah, dan mempengaruhi rata-rata panjang run (ARL) yang diharapkan. Sebelum batas kontrol ini rusak (dengan asumsi bahwa deret waktu mewakili satu set variabel independen acak yang terdistribusi secara acak dengan varians umum). Dalam keadaan ini varians dari statistik kontrol: adalah (Lucas dan Saccucci, 1990): Batas kontrol biasanya ditetapkan sebagai kelipatan tetap dari varians asimtotik ini, mis. - 3 kali standar deviasi. Jika alpha 0,25, misalnya, dan data yang dipantau diasumsikan memiliki distribusi Normal, N (0,1), bila terkendali, batas kontrol akan menjadi - 1.134 dan prosesnya akan mencapai satu atau batas lainnya dalam 500 langkah. rata-rata. Lucas dan Saccucci (1990 LUC1) menurunkan ARL untuk berbagai nilai alfa dan dengan berbagai asumsi menggunakan prosedur Markov Chain. Mereka menabulasikan hasilnya, termasuk menyediakan ARL ketika mean dari proses kontrol telah digeser oleh beberapa kelipatan dari standar deviasi. Misalnya, dengan pergeseran 0,5 dengan alpha 0,25 ARL kurang dari 50 langkah waktu. Pendekatan yang dijelaskan di atas dikenal sebagai smoothing eksponensial tunggal. Karena prosedur diterapkan sekali pada deret waktu dan kemudian dianalisis atau dikendalikan dilakukan pada dataset yang dihaluskan. Jika dataset mencakup tren dan atau komponen musiman, perataan eksponensial dua atau tiga tahap dapat diterapkan sebagai alat untuk menghapus (memodelkan secara eksplisit) efek ini (lihat lebih lanjut, bagian Peramalan di bawah, dan contoh kerja NIST). CHA1 Chatfield C (1975) Analisis Seri Times: Teori dan Praktik. Chapman and Hall, London HUN1 Hunter J S (1986) Rata-rata pergerakan tertimbang eksponensial. J dari Quality Technology, 18, 203-210 LUC1 Lucas J M, Saccucci M S (1990) Skema Kontrol Rata-rata Bergerak Rata-rata Tertimbang: Properti dan Perangkat Tambahan. Technometrics, 32 (1), 1-12 ROB1 Roberts S W (1959) Uji Chart Kontrol Berdasarkan Rata-rata Bergerak Geometrik. Technometrics, 1, 239-250Stata: Analisis Data dan Perangkat Lunak Statistik Nicholas J. Cox, Universitas Durham, Inggris Christopher Baum, Boston College egen, ma () dan keterbatasannya Statarsquos perintah yang paling jelas untuk menghitung moving averages adalah fungsi ma () dari Egen. Dengan ekspresi, itu menciptakan rata-rata pergerakkan rata-rata ekspresi itu. Secara default, diambil sebagai 3. pasti aneh. Namun, seperti yang ditunjukkan oleh manual entry, egen, ma () mungkin tidak digabungkan dengan varlist:. Dan, untuk alasan itu saja, itu tidak berlaku untuk data panel. Bagaimanapun, itu berdiri di luar serangkaian perintah yang secara khusus ditulis untuk seri waktu melihat deret waktu untuk rinciannya. Pendekatan alternatif Untuk menghitung rata-rata bergerak untuk data panel, setidaknya ada dua pilihan. Keduanya bergantung pada dataset yang sebelumnya sudah tsset. Ini sangat layak dilakukan: Anda tidak hanya bisa menyelamatkan diri Anda berulang kali menentukan variabel panel dan variabel waktu, namun Stata berperilaku dengan cerdas mengingat adanya kesenjangan dalam data. 1. Tulis definisi Anda sendiri dengan menggunakan Menggunakan operator time-series seperti L. dan F.. Berikan definisi rata-rata bergerak sebagai argumen untuk menghasilkan pernyataan. Jika Anda melakukan ini, Anda tentu saja tidak terbatas pada rata-rata bergerak rata tertimbang (tidak tertimbang) yang dihitung oleh egen, ma (). Misalnya, rata-rata bergerak tiga periode rata-rata tertimbang akan diberikan oleh dan beberapa bobot dapat dengan mudah ditentukan: Anda tentu saja dapat menentukan sebuah ekspresi seperti log (myvar) dan bukan nama variabel seperti myvar. Salah satu keuntungan besar dari pendekatan ini adalah bahwa Stata secara otomatis melakukan hal yang benar untuk data panel: nilai-nilai terdepan dan tertinggal ada di dalam panel, seperti logika yang menentukannya. Kelemahan yang paling menonjol adalah bahwa command line bisa agak lama jika moving average melibatkan beberapa istilah. Contoh lainnya adalah moving average satu sisi yang hanya berdasarkan nilai sebelumnya. Ini bisa berguna untuk menghasilkan harapan adaptif tentang variabel apa yang akan didasarkan semata-mata berdasarkan informasi sampai saat ini: perkiraan seseorang terhadap periode saat ini berdasarkan empat nilai terakhir, dengan menggunakan skema bobot tetap (jeda 4 periode mungkin Terutama yang biasa digunakan dengan kuartalan kuartalan.) 2. Gunakan egen, filter () dari SSC Gunakan filter fungsi egen yang ditulis pengguna () dari paket egenmore pada SSC. Di Stata 7 (diperbarui setelah 14 November 2001), Anda dapat menginstal paket ini setelah beberapa menit kemudian membantu rincian tentang filter (). Dua contoh di atas akan diberikan (Dalam perbandingan ini, pendekatan menghasilkan mungkin lebih transparan, tapi kita akan melihat contoh yang berlawanan dalam sekejap.) Kelemahannya adalah numlist. Mengarah ke kelambatan yang negatif: dalam kasus ini -11 berkembang menjadi -1 0 1 atau memimpin 1, lag 0, lag 1. Fibre coef, numlist lainnya, perbanyak item lagging atau leading yang sesuai: dalam hal ini item tersebut adalah F1.myvar . Myvar dan L1.myvar. Efek dari pilihan normalisasi adalah untuk mengukur koefisien masing-masing dengan jumlah koefisien sehingga koefisien (1 1 1) normalisasi sama dengan koefisien 13 13 13 dan coef (1 2 1) normalisasi sama dengan koefisien 14 12 14 Anda harus menentukan tidak hanya kelambatan tapi juga koefisiennya. Karena egen, ma () menyediakan kasus yang sama berbobot, alasan utama untuk egen, filter () adalah untuk mendukung kasus bobot yang tidak sama, yang mana Anda harus menentukan koefisiennya. Bisa juga dikatakan bahwa mewajibkan pengguna untuk menentukan koefisien adalah sedikit tekanan tambahan pada mereka untuk memikirkan koefisien apa yang mereka inginkan. Pembenaran utama untuk bobot yang sama adalah, kami kira, kesederhanaan, namun bobot yang sama memiliki sifat domain frekuensi yang buruk, untuk menyebutkan hanya satu pertimbangan. Contoh ketiga di atas bisa jadi salah satunya mendekati serumit pendekatan menghasilkan. Ada kasus di mana egen, filter () memberikan formulasi yang lebih sederhana daripada menghasilkan. Jika Anda ingin filter binomial sembilan-istilah, yang menurut para ahli iklim berguna, maka mungkin terlihat kurang mengerikan daripada, dan lebih mudah untuk mendapatkan yang benar daripada, Sama seperti dengan pendekatan menghasilkan, egen, filter () bekerja dengan baik dengan data panel. Sebenarnya, seperti yang dinyatakan di atas, ini tergantung pada dataset yang sebelumnya telah di-download. Tip grafis Setelah menghitung rata-rata bergerak Anda, Anda mungkin ingin melihat grafik. Perintah yang ditulis pengguna tsgraph cerdas tentang dataset tsset. Pasang di Stata 7 yang up-to-date oleh ssc inst tsgraph. Bagaimana dengan bersekongkol dengan jika Tidak satu pun dari contoh di atas menggunakan jika pembatasan. Sebenarnya egen, ma () tidak akan mengizinkan jika ditentukan. Terkadang orang ingin menggunakan jika saat menghitung moving averages, namun penggunaannya sedikit lebih rumit dari biasanya. Apa yang akan Anda harapkan dari rata-rata bergerak yang dihitung dengan if. Mari kita kenali dua kemungkinan: Penafsiran yang lemah: Saya tidak ingin melihat hasil apapun untuk pengamatan yang dikecualikan. Interpretasi yang kuat: Saya bahkan tidak ingin Anda menggunakan nilai-nilai untuk pengamatan yang dikecualikan. Inilah contoh konkretnya. Misalkan sebagai konsekuensi dari beberapa jika kondisi, pengamatan 1-42 dimasukkan tetapi tidak diobservasi. Tapi rata-rata bergerak untuk 42 akan bergantung, antara lain, pada nilai untuk observasi 43 jika rata-rata melebar ke belakang dan ke depan dan panjangnya minimal 3, dan juga akan bergantung pada beberapa pengamatan dan seterusnya dalam beberapa situasi. Dugaan kami adalah kebanyakan orang akan mengikuti interpretasi yang lemah, tapi apakah itu benar, egen, filter () tidak mendukung jika keduanya. Anda selalu bisa mengabaikan apa yang tidak Anda inginkan atau bahkan menetapkan nilai yang tidak diinginkan yang hilang setelahnya dengan menggunakan ganti. Catatan tentang hasil yang hilang pada ujung seri Karena rata-rata bergerak adalah fungsi lag dan lead, egen, ma () menghasilkan missing dimana lag dan lead tidak ada, pada awal dan akhir rangkaian. Pilihan nomiss memaksa perhitungan rata-rata bergerak pendek yang tidak dipalsukan untuk ekornya. Sebaliknya, tidak menghasilkan atau egen, filter () tidak, atau memungkinkan, sesuatu yang istimewa untuk menghindari hasil yang hilang. Jika salah satu nilai yang dibutuhkan untuk perhitungan hilang, maka hasilnya hilang. Terserah kepada pengguna untuk memutuskan apakah dan operasi pembedahan diperlukan untuk pengamatan semacam itu, mungkin setelah melihat kumpulan data dan mempertimbangkan ilmu pengetahuan yang mendasarinya yang dapat diajukan. Pengumuman 04 Nov 2014, 19:36 Dear all, Saya sedang bekerja Dengan dataset panel yang tidak seimbang dimana panel var adalah nomor dana dan waktu var adalah bulannya. Jadi, saya bekerja dengan seri waktu bulanan tapi dengan gap. Yang saya inginkan adalah menghitung rasio Sharpe 3 tahun dan juga 3 tahun jensens alpha untuk setiap dana. Jadi, jika saya pada tahun 1992 saya ingin menghitung rasio Sharpe untuk tahun itu dengan menggunakan observasi bulan pada tahun 1992 1991 1990. Untuk melakukannya saya memerlukan mean dan sd kelebihan pengembalian setiap dana selama periode tersebut. Selain itu, saya ingin memperkirakan Jensens Alpha dengan menjalankan model CAPM menggunakan lagi pengamatan bulanan dari tahun 1992 1991 1990. Untuk melakukannya, saya dapat menggunakan perintah statsby dan menggunakan koefisien regresi yang berjalan selama periode tersebut. Saya telah mencoba banyak perintah seperti rollreg, movavg, ma dll dan juga beberapa penduduk lokal dengan foreachforvalues ​​tapi saya tidak dapat menggunakannya karena saya tidak memiliki panel seimbang dan saya tidak ingin menghilangkan dana karena saya mungkin memiliki satu atau dua celah. Ini adalah contoh dataset saya bulan ryear mktrf smb hml umd ExcessR s ---------------------------------- ----------------------------------------- 2 1997 1. 2 1997 2 -. 0049 -.0261 .0469 -.0204. 2 1997 3 -.0503 -.0032 .0386 .0094 -.0181431 2 1997 4 .0404 -.0519 -.0102 .0489 .0117428 2 1997 5 .0674 .0483 -.0438 -.0519 .0372053 ---- -------------------------------------------------- --------------------- 2 1997 6 .041 .015 .0072 .0259 .0310222 2 1997 7 .0733 -.0252 -.0013 .0384 .0402394 2 1997 8 -.0415 .0734 .0137 -.0252 -.0292168 2 1997 9 .0535 .0268 -.0025 .0145 .0381404 2 1998 1 .0015 -.0094 -.0207 .001 .0056473 ------ -------------------------------------------------- ------------------- 2 1998 2 .0703 .0032 -.0086 -.011 .0395531 2 1998 3 .0476 -.0099 .0123 .0214 .0277491 2 1998 4.00073 .0048 .0027 .0078 .0005439 2 1998 5 -.0307 -.0354 .0412 .0189 -.0093562 2 1998 6 .0318 -.0315 -.0222 .0726, 002362 -------- -------------------------------------------------- ----------------- 2 1998 7 -.0246 -.0492 -.0115 .0371 -.0232616 2 1998 8 -.1608 -.0575 .0524 .0187 -.091043 2 1998 9 .0615 -.0015 -.0388 -.0063 .0222817 2 1998 10 .0713 -.032 -.0277 -.0535 .0311223 2 1998 11. 061 .0114 -.0343 .0118 .0300834 ---------------------------------------- ----------------------------------- 2 1998 12 .0616 -.003 -.047 .0904 .0168859 7 1994 1 .0287 .0014 .021 .0001 .0183894 7 1994 2 -.0256 .0272 -.0141 -.0026 -.0170168 7 1994 3 -.0478 -.0096 .0134 -.0132 -.0656004 7 1994 4 .0068 -.0091 .0169 .0041 -.0032034 -------------------------------------- ------------------------------------- 7 1994 5 .0058 -.0201 .0018 -.0216 -.0093189 7 1994 6 -.0303 -.0048 .0168 -.0083 -.0506594 7 1994 7 .0282 -.0178 .0098 .0019 .0199595 7 1994 8 .0401 .0145 -.0347 .0154 .0419298 7 1994 9 -.0231 .0268 -.0181 .0131 -.0135341 ------------------------------------ --------------------------------------- 7 1994 10 .0134 -.022 -.0236 .0145 .0129598 7 ​​1994 11 -.0404 -.0017 -.0005 -.0019 -.0433825 7 1994 12 .0086 .0005 .0026 .035 .0152948 05 Nov 2014, 11:35 Terima kasih banyak atas posting Anda. Mengenai rasio sharpe inilah kode yang saya tulis dan selesaikan masalah saya. Gen MeanVWExcRetGr. Sort crspfundno ryear month forval i1990 (1) 2013 mi-2 lokal oleh crspfundno. Egen Meanimean (VWExcRetGr) jika ryearlti amp ryeargtm mengganti MeanVWExcRetGrMeani jika ryeari itu tidak sempurna, tapi saya memiliki sarana saya dalam satu kolom sekarang sehingga setiap tahun saya memiliki nilai rolling mean yang sama dalam pengamatan bulanan saya (egen). Saya mengatakan itu tidak sempurna karena dalam perintah saya tidak menentukan bahwa saya ingin rata-rata nilai hanya dalam kasus bahwa saya memiliki 3 tahun pengamatan. Jadi, juga menghitung mean dalam kasus di mana saya memiliki pengamatan selama 2 tahun. Kabar baiknya adalah saya bisa menghilangkan sendiri pengamatan tersebut. Saya posting di atas karena saya ingin Anda mengerti apa yang saya butuhkan dengan tepat. Saya ingin memiliki alpha dan beta, masing-masing dalam satu kolom sehingga saya dapat menggunakannya untuk regresi mereka pada variabel lain. Oleh karena itu, pada tahun 1995 untuk dana no 100 yang memiliki 11 pengamatan bulanan misalnya, saya ingin alpha-output dari regresi capm4 3 tahun bergantian (1995,1994,1993) capm4 untuk diulang dalam 11 baris - cells dari kolom alfa. Hal yang sama berlaku untuk versi beta. Saya menerapkan kode Mata dengan beberapa perubahan egen g group (crspfundno) gen alpha. Gambar stread (hml. Quothmlquot) stview (umd. Quotumdquot) stview (gbr. Quightmlquot) stview (hml. Quothmbquot) stview (umd. Quotumdquot) stview (gw. Quotcrdfundno) stview (mrtrf. Quotmktrfquot) stview (hml. Quothmbquot) stview (umd. Quotumdquot) stview (gbr. Quotgquot) sttar (alfa quotalphaquot) p paneletup (crspfundno, 1) untuk (i1 iltrows (p) i) untuk (opi, 2 ogtpi, 1 o--) y J (1,1,) XJ (1,5 ,.) B. Untuk (untuk tgtpi, 1 t--) jika (pergi, 1 gt, 1 amp ryearo, 1 - ryeart, 1 lt 2) yy VWExcRetGrt, 1 XX (mktrft, 1, smbt, 1, hmlt, 1, umdt, 1 , 1) yy (2..rows (y)) ,. XX (2..rows (X)) ,. Jika (baris (y) gt6) b invsym (cross (X, X)) cross (X, y) alphao, 1 b5,1 end tapi hasilnya adalah yang satu ini dan tidak termasuk beta juga. Tolong bantu saya mendanai bulan ryear g alpha 5487 2001 1 478 -.0045781 5487 2001 2 478 -.0049922 5487 2001 3 478 -.0044039 5487 2001 4 478 -.0058963 5487 2001 5 478 -.0057021 5487 2001 6 478 - . 2009 2007 478 -.0046226 5487 2001 8 478 -.0027665 5487 2001 9 478 -.0037288 5487 2002 1 478 .0009866 5487 2002 2 478 .0019246 5487 2002 3 478 .0019994 5487 2002 4 478 .002021 5487 2002 5 478 .0025631 5487 2002 6 478 .0019815 5487 2002 7 478 .0037848 5487 2002 8 478 .0035144 5487 2002 9 478 .003802 5487 2002 10 478 .0012915 5487 2002 11 478 .0016832 5487 2002 12 478 .0015888 Saya tidak yakin apakah Saya memahamimu. Namun, mengulangi saran di thread yang saya maksudkan tadi tentang tidak menggunakan kode Mata sementara kode Stata tersedia, berikut adalah kode yang disesuaikan dari thread yang akan melakukan regresi bergulir. Ini akan membawa Anda banyak waktu jika Anda memiliki kumpulan data yang besar. Beritahu saya jika Anda membutuhkan banyak waktu. Saya menyarankan Anda untuk memeriksa hasilnya. 06 Nov 2014, 08:51 Kepada Abraham: Benar-benar kode Mata cepat. Saya hanya butuh 1 menit, bukan 2 jam. Selain itu, ia bekerja lebih baik karena memberikan nilai yang hilang jika saya hanya memiliki pengamatan satu tahun. Terima kasih banyak. Satu pertanyaan terakhir Jika saya memerlukan regresi capm, itu berarti hanya VWExcRetGr dan mktrf, tapi bukan smb hml umd, apakah ini bagaimana kodenya seharusnya seperti gen Alpha. Gen bMktrf Sttar (stiker) sttar (ryear. Quotryearfot) stview (VWExcRetGr. QuotVWExcRetGrquot) stview (mktrf. Quotmktrfquot) stview (Alpha. QuotAlphaquot) stview (bMktrf. QuotbMktrfquot) p paneletup (crspfundno, 1) untuk (i1 iltrows (P) i) untuk (opi, 1 oltpi, 2 o) y VWExcRetGro, 1 X (mktrfo, 1. 1) b. Untuk (tpi, 1 tltpi, 2 t) jika (untuk amp crspfundnoo, 1 crspfundnot, 1 amp (ryearo, 1 - ryeart, 1 lt 2) ryearo, 1 gt ryeart, 1) yy VWExcRetGrt, 1 XX (mktrft, 1 1) jika (baris (y) gt6) b invsym (cross (X, X)) cross (X, y) Alphao, 1 b2,1 bMktrfo, 1 b1,1 Dalam kode Anda, Anda menghitung standar deviasi menurut negara dan Industri (menggunakan ringkasan) tapi kemudian Anda mengganti nilai ini ke SDX coutries lainnya (di lingkaran dalam). Apakah itu yang ingin Anda lakukan Saya menulis kode Mata dengan asumsi Anda ingin menghitung standar deviasi per negara dan industri. Jika Anda ingin menghitung per negara dan industri yang perlu Anda tambahkan: Berikut adalah kode Mata (ini menghitung standar deviasi juga bila jendela kurang dari 4 tahun):

No comments:

Post a Comment