Sayfa 1/6 123 ... SonSon
Arama sonucu : 44 madde; 1 - 8 arası.

Konu: Sistem Dinamiği

  1. #1

    Esas Sistem Dinamiği

    Sistem dinamiği, makina mühendislerinin aşina olduğu, belirli kurallar çerçevesinde dinamik sistemleri inceleyerek, matematik modeller oluşturmaya çalışan bir bilim/mühendislik dalı. Bugün mühendislik kökenli olup ta kendini rahmetli Üzeyir Garih'in dediği gibi "biraz pragmatik, biraz kartezyen" olarak tanımlamayacak pek kişi yoktur. Dolayısı ile burada "Sistem Yaklaşımları" başlığına benzer şekilde ancak, belki biraz daha akademik, belki de biraz daha mühendissel yaklaşarak finansal piyasalarda sistemleri ve uygulamaları irdelemek istiyorum. Ancak bu demek değildir ki burası süper teknik bir yer olacak. Hayır, en basitten karışığa ilerleyeceğiz ve normal bir matematik bilgisine sahip herhangi bir kişinin burada yazılanları anlaması çok zor olmayacaktır.

    Başlıca irdelenecek konular aşağıdaki gibidir:
    +Piyasa matematiği ve fiziği (sistemler)
    +Risk ve para yönetimi (portfolio optimizasyonu, optimum kaldıraç, risk parametreleri vs.)

    Ekstra olarak aşağıdakilerinde bulunması sanıyorum ki bu başlığı daha da verimli yapacaktır:
    +Yabancı kaynaklardan çeviriler(akademik paper, araştırma-tartışma raporları, kitaplar vs.)
    +Forumlardan derlenen bilgiler
    +Kişisel yorumlar

    Bu forumda benim bildiğim herhangi bir konuda eminim ki benden çok daha tecrübeli onlarca insan vardır ve umarım ki bu başlık altında belirli standartlar kullanarak kendi tecrübelerini/bilgilerini/örneklerini de aktarırlar. Ancak esas olarak burayı, bilgilere hızlıca ulaşılabilen ve diğer başlığın aksine tartışmalar yerine tanımlar ve anlatımların oluşturduğu bir mini-blog/ansiklopedi haline getirmek hepimizin faydasına olacaktır. Zira tahminim, ilk zamanlarda burada bulunabilecek bilgiler bu forumda daha önce diğer başlıklar da 90% bahsedilmiştir ancak erişmesi oldukça güçtür.

    Ben kendim sistemleri "genellikle" iDeal platformu kullanarak piyasaya entegre ediyorum ancak veri işleme anlamında MATLAB ve Excel daha sık kullandığım programlar. Bu programların neden ve nasıl yararlı olacağını da ara ara bahsederim.

    Yanlış bahsettiğimi düşündüğünüz bir konu varsa, uyarırsanız duruma göre de düzeltirim. Bu başlık hiçbir şekilde yatırım tavsiyesi ya da piyasaya anında uygulanabilecek bir fikir vermeyecek olup(al/sat ya da hazır sistem) bu işlerle uğraşanlara güzel araç ve fikirler sağlayacaktır diye umuyorum. Eğer hiç kimsenin işine yaramıyorsa da benim mini-blog'um olmuş olsun :)

    Not: Eğer konu yersiz ise moderatör arkadaşlar başka tarafa taşıyabilirler. Sistemciler iDeal başlığında toplandığı için burada başlatıyorum.

  2. #2

    Esas

    Algoritmik trading, tamamen bilgisayar algoritmalarının ürettiği AL ve SAT komutlarına göre finansal ürünlerin trade edilmesidir. Dolayısı ile nicel hale getirilebilen
    her strateji algoritmik trading olarak adlandırılabilir. Algoritma(sistem) içerisindeki nicel değerler fiyat hareketinden, teknik analizden, temel analizden, makro analizden ya da Twitter/haber sitesi yorumlayan 'web crawler''lardan gelebilir. Önemli olan test edilebilecek nicel değerlerin oluşturulmasıdır. Zira para kaybettirecek sistemi de çalıştırmanın anlamı yoktur. Dolayısı ile bunu anlamak için basit araçlardan başlamakta fayda var.

    Olasılık kuramında beklenen değer(expected value) olarak adlandırılan bir yöntem vardır. Kısaca sürekli tekrarlanan olayların uzun dönemdeki ortalaması diyebiliriz. Bir

    sistem için trade başına-tabi ki trader aşağıdaki değerlerin doğruluğuna güveniyorsa(overfitting, repaint yoksa vs);

    E[X]=Kazanma% * Ortalama Kazanc - Kaybetme% * Ortalama Kayıp - ( Kayma + Komisyon )

    Dolayısı ile bir trader'ın ilk amacı her trade için pozitif beklenti içerisinde olmasıdır. Pozitif beklenti yoksa bu işi yapmanın anlamı da yoktur. Burada önemli olan bu değerin düşük sayılı tekrarlarda ortaya çıkma ihtimalinin de düşük olmasıdır. Dolayısı ile ne kadar çok sık tekrar edilirse, elde edilen tekrarların ortalamaları beklenen değere o kadar yaklaşacaktır, buna da büyük sayılar yasası denir.

    Burada çıkarılacak iki ders var.
    +Pozitif beklenti içerisinde olmak için Kazanma% ihtimalinin 0'dan büyük herhangi bir sayı olması yeterlidir, yüksek olmak zorunda değildir. Trend takip eden sistemlerin yapısı da böyledir. 30% ortalama 1000 puan kazanırsınız ancak 70% ortalama 200 puan kaybedersiniz. İşlem başına beklediğiniz brüt değer 160'dır.
    +Eğer işlem yapma frekansınız düşükse, bu değeri görmeniz uzun süre alacaktır. Ben bunu işlem sayısı/zaman rasyosu olarak tanımlıyorum. Bu değer ne kadar yüksekse, beklentinize o kadar çabuk yaklaşırsınız. Ayda bir pozisyon değiştiren bir sisteminiz varsa, sabır gerektirir. Her ay kar'da kapamak pek olası değildir.

    İşlemleri yaptık ettik, pozitif getiri bekliyoruz ve çayımızı içerken düşünüyoruz; sadece pozitif beklenti olması yeterli midir ? Bence değildir. Ben getirileriminde düzenli ve benzer şekilde olmasını isterim(aslında pozitif getirilerimin düzenzisliği çok önemli değil ancak negatif getirilerin düzensizliği istenmeyen bir şeydir).

    Çünkü ben paramın bileşke olarak büyümesini bekliyorum, yani tek seferde ikiye katlamaya çalışmıyorum. Dolayısı ile getirilerin düşük standard sapması'da bana bu düzenliliği nicesel olarak ifade eder. Yani bir trader beklenen değer'i maksimize ederken, standard sapmayı'da minimize etmeli(ya da negatif getirilerin standard sapması). Markowitz kabulu denir buna ve Modern Portfolyo Teorisinin temelini oluşturur. Eğer iki sistem aynı beklentiye sahipse düşük sapmalı olan daha iyidir.

    Çok fazla teoriye girmeye gerek yok. Bu ikisinin oranına'da Sharpe Ratio = (E[Rx]-rf)/stdsapma(Rx) derler. Bu teoriye göre Sharpe Ratio'su yüksek olan sistem ya da portfolyo daha iyidir. Rx herhangi düzenli bir zaman için getirilerdir(saatlik, günlük vs). rf'de o zaman için risksiz getiridir (senelik 10%). Bu rasyonun tabi ki kendi has avantaj ve dezavantajları var. Her sisteme uygulanabilir olmayabilir de. Ancak basit olarak mantık budur ve en basit metrik(senelik için) olarak globaldir.

    Özellikle farklı sistemleri karşılaştırırken standard bir metrik olarak kullanabilirsiniz.

    Mesela bir sisteminizin aylık getirilerinin ortalamasını alın (iDeal birleşik sistem getirisinden yapabilirsiniz ya da dışarda) daha sonra standard sapmasını hesaplayın(excel tarzı bir program kullanbilirsiniz).

    Sharpe(Yıllık) = (E[Rx]-0.8%)*karekok(12)/stdsapma(Rx); günlük için karekok(252) ile çarpabilirsiniz.

    Genel olarak;
    +Senelik bazda az trade eden sistemlerin Sharpe Ratio'su düşüktür.
    +Büyük ve sürekli drawdown yiyen ve çıkması uzun süren sistemlerin Sharpe'si yüksek değildir.
    +Genel olarak senelik Sharpe rasyosu 1'den büyükse fena değildir. 2'den büyük ise aylık kazançlar 'genelde' pozitiftir. 3'den büyük ise haftalık veya çoğu günlerde kazanç pozitiftir.

    Bu yazıdan hareket ile HFT'lerden bahsedelim. HFT'ler küçük pozitif beklentiler ile yüksek sayıda(günde yüzlerce binlerce) işlem yaparlar. Böylece büyük sayılar yasası gereğince çalışan stratejileri neredeyse her gün kardadır. Bu da getirilerinin beklenen değerden sapmalarının çok düşük olmasına ve çok yüksek kaldıraç kullanarak atmosferik getiriler elde etmelerine sebep olur. Sharpe Rasyolarıda oldukça yüksektir. Daha sonraki yazılarda HFT ve diğer stratejilere daha geniş bir şekilde tekrar değiniriz.

    Bir sonraki yazıda Sharpe'nin dezavantajlarına, Sortino rasyosuna, drawdown konusuna ve sistemsel diversifikasyon konusuna değinmeyi planlıyorum.

    Kaynaklar:
    [1] "Quantitative Trading", Ernest P. Chan, Wiley Trading Series, 2009
    [2] "Modern Portfolio Theory and Investment Analysis", Elton E. ,Gruber M., Brown S., Goetzmann W., Wiley Series, 2014

  3. #3

    Esas

    opih mukemmel bir topic acmissin. bi level daha ust seviyeden isin akademik bilimsel tarafinin icine katilmasi iyi olacaktir. her seviyeden kisiye katkisi buyuk olacagina eminim.

  4. #4

    Esas

    Bizim borsanın bu kadar hızlı geliştiğini görünce sevindim doğrusu.

    Yazılım geliştiriciyim, her ne kadar okulu uzatmış olsam da yazılım mühendisliği okuyorum. Borsa çok heyecanlı bir yermiş.

    Benim de hem İngilizce'den çevirdiğim yazıları paylaşmak istediğim hem de kendi deneyimlerimi anlatacağım bir konu açma isteğim vardı ancak sanırım yeni olduğum için açamadım, müsadeniz olursa bu konu altında (kopya olmayacak şekilde) bir şeyler paylaşmak isterim. Böylece hem bilgimizi artırmış hem de yerli yatırımcının elini güçlendirmiş oluruz zira yatırımcılar genellikle eski bilgilerle hareket ettiği için ve son bir yılda HFT/Algo gibi işlerin de BIST'te etkinliğinin artmasıyla çok hızlı bir değişime gidildiği için bu konu hepimizin yararına olacaktır.

    Kümülatif kazanç ve yüzdesellik konusunda haklısınız. Oluşturulan bir sistem %100 başarı oranını yakaladı gözüküyorsa ya içeriden bilgi alınıyordur ya da iddia sahibi sözüne güvenilmesi gereken bir kişi değildir. Her işlemin artıya geçmesi gerekmiyor, gözlemleyebileceğiniz periyotlar dahilinde (burada kendimize karşı dürüst olacağız elbette) olumlu sonuç vermesi sistemin çalıştığını gösterir.

    * Borsada işlem yaptığım çok kısa süre içinde (henüz bir ay dolmadı) yaptığım çıkarım şudur ki, bir hissenin değeri yalnızca tek bir şeye göre değişmiyor, işin içinde birden fazla değişken var. O yüzden sadece geçmiş verilere bakarak bir sistem oluşturmaya çalışırsam yanılabilirim.

    * Ancak tüm bu değişkenleri işin içine katarsak sürekli bir model oluşturma şansımız yok çünkü bu değişkenlerin önemini nasıl belirleyeceğimizi bilmiyoruz, burada da "öğrenebilen" bir sistem yazma fikri önem kazanıyor.

    * Yerli hisselerle ilgili önceden belirlenmiş yerleri tarayacak, iki adet listeye sahip (Twitter'da, Facebook'ta hisse pazarlayan insanlar ile güvenilir bir gazetenin/derginin yayınladığı haberin ayrımını yapabilmek için kara-beyaz listeye ihtiyaç olacak) ve NLP (natural language processing, doğal dil işleme) kullanan bir bot yazma fikri çekici geliyor. Elbette bunu otomatik emirlere bağlayacaksam İdeal ile haberleşebilmesi gerek.

    * Yine farkettiğim bir şey şu oldu, oluşturulan modelleri geriye doğru test ettiğimde çoğu durum için belirli periyotlara uyan bir model bulabilirken her periyoda uyabilen bir model -doğal olarak- üretmek imkansız, bu da bizi sadece matematiğin yeterli olmadığı (RSI x olursa ve hacim %Y artarsa al, şöyle olursa sat gibi), aynı zamanda sezgisel regresyon analizinin yapılmasının gerektiği (heuristic regression analysis) bir noktaya götürüyor. Bu işlemleri YA milisaniye hassasiyetinde yapmak gerekiyor (yoksa HFT yapan yatırımcının malını almış oluyorum, adam kârını çoktan realize etmiş oluyor çünkü benim borsaya emir iletmem en iyi ihtimalle 100 ms -saniye altı 1/10- sürerken o <1ms ile işlem yapıyor, sistemim mükemmel olsa bile gecikme ile kısıtlıyım) YA DA doğruluğunu kanıtlayabildiğimiz sistemi hazırlayıp önceden fiyat belirlemek gerekiyor.

    * Son olarak, modelden veriye mi yoksa veriden modele mi gidilmesi gerektiği konusunda tereddüte düşmüş durumdayım, bu konuda da araştırmalar yapıp burada paylaşmaya çalışacağım. Paylaşacağım konular regresyon onayı ve uyum iyiliği üzerine olacak.

    Bundan sonraki yazılarımda hem işin tekniğine girmeye çalışacak hem de sezgisel bir sistemin nasıl oluşturulabileceğine dair görüşlerimi paylaşacağım.

    Bu mesaj yatırım tavsiyesi içermemektedir, forumda paylaştığım iletiler kendi görüşlerimdir.
    Son düzenleme : razer; 20-06-2016 saat: 12:01.

  5. #5

    Esas

     Alıntı Originally Posted by razer Yazıyı Oku

    * Son olarak, modelden veriye mi yoksa veriden modele mi gidilmesi gerektiği konusunda tereddüte düşmüş durumdayım, bu konuda da araştırmalar yapıp burada paylaşmaya çalışacağım.
    Sherlock Holmes, ünlü macerası "Bohemya'da Skandal"ın ilk paragraflarında Watson ile konuşmaktadır. Ellerinde bir not bulunmakta ve notun garipliğinden bahsedilmektedir. Bir kaç laf alışverişinden sonra Watson bu notun ne anlama geldiğini sorar ve Sherlock cevap verir:
    **Elimde henüz bir veri yok. Elinde veri olmadan kuramlaştırma çok büyük bir hatadır. Umursamazca gerçekleri kurama uydurmaya çalışırsın, kuramı gerçekler yerine! Ama notun kendisinde ne görüyorsun ?

    I have no data yet. It is a capital mistake to theorize before one has data. Insensibly one begins to twist facts to suit theories, instead of theories to suit facts. But the note itself. What do you deduce from it?

    **Kendi çevirimdir.
    Bilimsel yaklaşımda böyledir. Gözlem ile başlar. Genel olarak ekonomistler "olması gereken model"'den veriye giderler. Bu yanlıştır. Önce gözlem yaparsın ve sorular sorarsın. Daha sonra hipotezlerini öne sürüp doğruluğunu test edersin. Eğer bu iş oluyorsa bunu modelleştirmeye başlarsın. Daha sonra model'ini test edip gerçeğe ne kadar uygun olup olmadığını sınarsın. Burada tehlikeli bir nokta daha var. Model'in gerçeğe çok güzel uyuyor ancak aynı zamanda gözlemlemediğin sonuçlarda sağlıyor. Bu durumda gözlemlemelerini de belki güncellemen gerekebilir.

    Misal, piyasaları 'efficient' yani verimli kabul edip fiyat dağılımını da normal kabul edersen, gün gelir buna dayalı yaptığın hesaplamalar patlar ve paranı kaybedersin. Piyasalar her zaman verimli değildir ve piyasalarda trendler oluşur. Halbuki modele göre oluşmaması gerekir.

    Bilimsel method bir süreçtir ve bazen modeller güncellemeye de ihtiyaç duyabilir. Kurduğunuz model sadece belli bir zaman aralığında çalışıyor olabilir ya da belli bir enstrüman için. Klasik Newton mekaniği bizim dünyamızda çoğu şey için geçerlidir ve uzay-zaman'ı değişmez kabul eder. Einstein'ın Özel Görelilik kurumuna göre uzay-zaman görecelidir ve değişir. Işık hızına yaklaştıkça Einstein'ın kuramı önem kazanır ancak bu arabanızın Newton mekaniğine göre çalışmasını engellemez. Bu sistemi yanlış kılmaz.

    Bu başlık altında piyasalara Sherlock Holmes gibi yaklaşıyorum ve verilerden, sorulardan, meraklardan modellere gideceğim.
    Son düzenleme : opih; 20-06-2016 saat: 16:24.

  6. #6

    Esas

    Madem modellerden ve gerçeklerden bahsettik. O zaman MPT(Modern Portfolyo Teorisi) ve Sharpe rasyosunun da kısıtlamalarından devam etmek gerekir.

    MPT ve Sharpe rasyosunun önemi mantığındaki basitlikten ileri geliyor: daha çok risk alıyorsam demek ki ona oranla pozitif beklentiminde değişmesi gerekiyor. Sorun burada risk'in varyans ya da standard sapma olarak tanımlanması. Daha önce de bahsettiğim gibi pozitif getirilerimin standard sapmasının büyük olmasında hiç bir problem yok. O yüzden tüm getirilerin standard sapmasını minimize etmemiz, pozitif tarafıda etkilemektedir. Bu durumda aslında sadece riski azaltmıyoruz... Zira risk bir trader için para kaybetme ihtimalidir.

    Bu durumda eğer getirilerim normal ya da simetrik dağılmamışsa Sharpe rasyosunu uygulamam hatalı olabilir. Normal dagılım olasılıksal bir dağılımdır ve aşağıdaki resimdeki gibi simetrik bir şekli vardır. Burada x ekseni getiri iken y ekseni de olasılıktır. Yani ortalamanın altında veya üstüne getiri getirme ihtimali aynıdır.


    Ancak trend following ya da opsiyon yazımı gibi stratejiler izleyenlerin getirileri normal dağılmaz. Bunların getirilerinde skewness denilen çarpıklık vardır (https://tr.wikipedia.org/wiki/%C3%87arp%C4%B1kl%C4%B1k). Trend takip edenlerin kayıpları genelde küçük ve çok sık ancak kazançları çok büyük ve nadirdir. Opsiyon yazan/satanlarında tam tersi şekilde sürekli küçük kazançlar ama arada sırada büyük kayıplar şeklindedir. İkisinde de getiri aynı olabilir ancak opsiyon yazımı stratejisinin Sharpe'si daha yüksektir. Dolayısı ile çarpık getirileri olan sistemlere uygulamak çok mantıklı değil. Getirilerinizin histogram analizini yaparak göz kararı ile kendiniz karar verebilirsiniz.



    Bu durumda risk'i tüm getirilerin standard sapması değil de sadece negatif getirilerin standard sapması/ortalaması şeklinde bir method oluşturursak daha mantıklı olur. Sortino rasyosu da bunu yapar.

    Sortino = (E[Rx]-T)/(TDD) ; T hedef TDD ise hedeften negatif sapmadır. Hedef kişiden kişiye göre değişir ancak risksiz getiriyi alabilirsiniz. TDD ise şöyle hesaplanır: her bir getiri için eğer hedeften düşük değil ise 0, düşük ise hedef değerinden o değer çıkarılır. Sıfırlar dahil olmak üzere her bir zaman için bu getirilerin karesi alınır hepsi toplanır, aritmetik ortalamasını alıp karekökü hesaplanır. TDD=(karekök(ortalama(topla(minimum(0 veya T%-R%)^2))))



    Sortino Sharpe kadar yaygın değil ve hedef değerinin esnetilebilir olması genel geçer rasyo elde edilmesine bence engel. Ancak kendi iki trend takip eden sisteminizi karşılaştırmak için çok etkili. Sortino hesaplamak biraz daha çetrefilli ancak mantık Sharpe ile aynı. Getiri/risk değeri her zaman büyük olmalıdır!. İsterseniz kendi risk ve getirinizi tanımlayıp piyasaya bir rasyo sürebilirsiniz önemli olan bunu kendi standardınız haline getirip ne anlama geldiğini anlamaktır.

    Maksimum drawdown ve maksimum drawdown süresi gibi kriterlerin yanında mutlaka bu rasyoları da kullanmak sistemlerinizi birbiri ile karşılaştırmak açısından daha verimli olacaktır. Zira yüksek max. drawdown yiyen ve orada uzun kalan sistemlerin bu rasyolarıda genelde düşüktür.

    Yazı uzadı... Bir daha ki sefere de drawdown ve diversifikasyon üzerine konuşalım.
    Son düzenleme : opih; 20-06-2016 saat: 17:29.

  7. #7
    Duhul
    Oct 2010
    İkamet
    ANKARA
    Yaş
    45
    Gönderi
    10,108
    Blog Yazıları
    47

    Esas

    Kolaylıklar dilerim.
    Yukarıdaki gönderiye yerleştirdiğiniz linkler standart ayarlara sahip kullanıcılar tarafından görülemiyor, malum ceza mahkemelerinin siteye ulaşımı engellemiş olmasından dolayı.
    http://hizliresim.com gibi paylaşım siteleri kullanılabilir.
    Heyecanlı başladı topik, takipteyim.

  8. #8

    Esas

     Alıntı Originally Posted by INVENTOR Yazıyı Oku
    Kolaylıklar dilerim.
    Yukarıdaki gönderiye yerleştirdiğiniz linkler standart ayarlara sahip kullanıcılar tarafından görülemiyor, malum ceza mahkemelerinin siteye ulaşımı engellemiş olmasından dolayı.
    http://hizliresim.com gibi paylaşım siteleri kullanılabilir.
    Heyecanlı başladı topik, takipteyim.
    Hem iyi dileğiniz için hem de uyarınız için teşekkür ederim. Linkleri düzelttim.

Sayfa 1/6 123 ... SonSon

Gönderi Kuralları

  • Yeni konu açamazsınız
  • Konulara cevap yazamazsınız
  • Yazılara ek gönderemezsiniz
  • Yazılarınızı değiştiremezsiniz
  •