Amacımız basit basit R ile yapılabilecek kendisi basit faydası büyük analizleri ve incelemeleri paylaşmaktır. Böylece hepimiz için Türkçe bir R arşivi oluşturmuş olacağız.
Kantitatif finansta (quantitative finance), uygulamalı matematiksel yöntemlerin finansal analizlerde kullanımı olarak özetleyebiliriz, sıklıkla kullanılan özellikle getiri modellemesinde uygulamalarının ve risk analizlerinde incelemelerin yapıldığı monte carlo simülasyonuna ilişkin bir örnek ile “Basit Basit R” serüvenimize başlıyoruz.
Analizimizi borsaya açık olan sigorta şirketleri üzerinden gerçekleştirmeyi hedeflemiştik ancak Borsa İstanbul tarafından (www.borsaistanbul.com) şirket verileri halka sağlanmıyor. Analizi günlük BIST100 endeks verilerine çevirelim dedik ancak veriler “ datastore.borsaistanbul.com ” adresinden satılmakta olduğunu gördük. Ulaştığımız bilgiye göre akademik çalışmalar için bu veriler ücretsiz temin edilebiliyormuş. Bulunduğumuz nokta da Bize sadece varsayımsal bir veri üzerinden anlatmak kaldı.
Veri setimizin günlük borsaya açık bir sigorta şirketinin kapanış sonuçlarını içerdiğini düşünelim.
data.hisse=read.table(“X_sirket.txt”,header = 1)
ile verimizi okutabiliriz.
Veri serimizi iki aşamada getiri serisine çevireceğiz,
log_data.hisse=log(data.hisse)
getiri.hisse=diff(log_data.hisse)
yapmamız gereken getirimizin trend ve değişkenliğini belirlemek. Bunun için en kolay ve basit yol getiri serisinin ortalamasını trend faktörü (drift term) olarak standart sapmasını ise değişkenlik faktörü olarak almaktır.
Simülasyona göre üreteceğimiz getiri aşağıdaki gibi olacaktır;
sim_getiri=Mu*delta(t) + sigma*Z*karekök(delta(t))
Belirli bir ortalama etrafında dolaşan rasgeleliğin standart sapma ile sağlandığı getiriler dizisi. Burada delta(t) iki zaman arasında geçen süredir. Bizim çalışmamızda günlük veriler üzerinden ilerlediğimiz için 1 olacaktır. Z ise standart normal dağılımdan elde edilen rasgele sayılardır.
R dili ile yazalım;
mu=mean(getiri.hisse)
sigma=sqrt(var(getiri.hisse))
10.000 farklı getiri üretmek istiyorum;
n=10000
Z=rnorm(n)
delta_t=1
sim_getiri=mu*delta_t+sigma*Z*sqrt(delta_t)
Elimizde 10000 adetlik bir getiri serisi mevcut, yani bir gün içinde gerçekleşebilecek muhtemel getiri büyüklükleri, bunun histogramını çizdirebiliriz;
hist(sim_getiri, breaks=100,col=”red”)
Bazı basit betimleyici istatistiklerini de bulabiliriz;
istatistikler=summary(sim_getiri)
Tabi bu yaklaşımın dezavantajları mevcut zamanı gelince detaylandıracağız.
Şimdilik geliştirmek, değiştirmek Size kalmış…
Yazar: MockingActuaries
Tartışma
Henüz yorum yapılmamış.