Finansal piyasalarda algoritma uygulamaları: Python programlama ile backtesting üzerine bir çalışma
Algorithm applications in financial markets: A study on backtesting with python programming
Yazar: SELAHADDİN BİLAL ÖZGÜR
Danışman: DOÇ. DR. AYBEN KOY
İstanbul Ticaret Üniversitesi / Finans Enstitüsü / Sermaye Piyasası Ana Bilim Dalı / Sermaye Piyasası Bilim Dalı
Derece: Yüksek Lisans, 2021
Konu: Bilim ve Teknoloji = Science and Technology ; Ekonomi = Economics ; Maliye = Finance
Dizin: Algoritmalar = Algorithms ; Alternatif alım satım sistemleri = Alternative trading systems ; Alım-satım = Sale and purchase ; Finansal piyasalar = Financial markets ; Getiri = Return ; Sermaye piyasası = Capital market ; Sermaye piyasası araçları = Capital markets instruments ; İkili alım-satım = Pairs trading

Özet:
Finansal piyasalarda beşeri ve beşeri olmayan risklerin azaltılması ve piyasalardaki
fiyatlamaların değişimlerine yönelik hızlı ve güvenilir bir şekilde alım-satım yapma
ihtiyacı artmıştır. Söz konusu risklerin yönetilmesi ve getiri politikalarının yönetiminin
kolaylaştırılması için teknolojik imkanlar neticesinde algoritmalar hazırlanmakta ve
kullanılmaktadır. Varlıkların, yatırımcılar açısından biçmiş oldukları değere göre oluşan
piyasa fiyatları ışığında incelemeler yapılarak varlıklara ve fiyat hareketlerine göre
stratejiler oluşturulabilmekte ve söz konusu stratejilerin algoritmalar vasıtası ile
uygulanması hususunda çalışmalar yapılmaktadır. Fiyatlama dikkate alınarak,
fiyatlamanın değişmesi veya fiyatlamanın değişmesine etki edebilecek olan faktörlere
göre modellemeler hazırlanabilmektedir. Çeşitli koşul-şart ilkeleri belirlenerek
oluşturulan algoritmalarla, fiyatlamalardaki değişim baz alınarak pozisyon
açılabilmektedir. Bu doğrultuda, matematik, istatistik, mühendislik vb disiplinlerden
faydalanarak algoritmalar şekillendirilebilmekte ve optimizasyona tabi tutulabilmektedir.
Veri temin etme, veriyi işleme, veriyi kullanma, metotlara göre analiz etme, koşul-şart
ilkelerini takip etme, koşul-şart ilkelerinin tespit sonuçlarına göre otomatik işlem yapma
veya işlem yapılması için kullanıcıya uyarı verme amaçları ile algoritmalar
tasarlanabilmektedir. Belirli bir dönem içerisinde piyasada oluşan fiyatlamalar baz
alınarak "portföyde tut" yerine algoritmik trade işlemlerinin golden cross vb. koşul-şart
ilkesi doğrultusunda yapılan al-sat işlemleri sonuçları mukayese edilmiştir. Farklı varlık
türlerine ve varlıklar özelinde aynı, benzer veya farklı algoritmalar kullanılarak getiride
farklılıklar gözlenmektedir. Elde edilen sonuçlar neticesinde algoritmik işlemler
uygulanarak gerçekleşen performansının, aynı vadede ve varlığın portföye alınıp
tutulmasına karşı performansına göre daha yüksek getirili olma ihtimali söz konusudur.
Dayanak varlık performansına göre daha yüksek getiri performansı göstermediği
durumlar söz konusudur. Backtesting sonuçlarına göre aynı yöntem, farklı varlıklarda
benzersiz sonuç farklılıklarına neden olmuştur. Varlıkların portföydeki ortalama
performansına göre negatif getiri ile sonuçlandığı da görülmüştür. Bazı varlıklarda ise
varlığın kendi performasına göre olumlu sonuçlar elde edilmiştir. Her yöntem her varlık
türü, her varlık ve her dönem için olumlu netice vermemektedir.

Anahtar Kelimeler: Algoritmik trade, geçmişe dönük testler, varlık getiri analizi, veri
bilimi

Abstract:
The need for fast and reliable trading has increased in order to reduce the non-human
risks in financial markets and to change the pricing in the markets. Algorithms are
prepared and used as a result of technological possibilities in order to manage these risks
and to facilitate the management of revenue policies. According to the apparent value of
assets as determined by investors, strategies can be created according to the above market
prices by examining the above market prices, and efforts are made to help the use or
application of these strategies in their algorithms. Considering pricing, models can be
prepared according to the changes in pricing or the factors that may affect pricing
changes. With algorithms created by determining various condition-condition principles,
positions can be opened based on the change in pricing. In this direction, algorithms can
be shaped and optimized by using disciplines such as mathematics, statistics, engineering,
etc. Algorithms can be designed for the purposes of obtaining data, processing data, using
data, analyzing according to methods, following the condition-condition principles,
automatic processing according to the detection results of the condition-condition
principles or warning the user for action. Based on the prices that occur in the market
within a certain period, instead of "keep in portfolio", algorithmic trade transactions like
golden cross etc. The results of buy and sell transactions made in line with the conditioncondition principle are compared. Differences in returns are observed by using the same,
similar or different algorithms for different asset types and assets. As a result of the results
obtained, it is possible that the performance realized by applying algorithmic transactions
will have a higher return than the performance of the same maturity and against the
acquisition of the some assets in the portfolio. Higher returns can be achieved in asset
pricing than long-term buy and hold performance using algorithmic trading. However,
this does not apply to all assets in every period.

Keywords: Algorithmic trade, benchmark and backtest, assets income analyzing, data
science