Kingfisher: Piyasa Kalitesi

Kingfisher: Piyasa Kalitesi

Bir piyasanın sağlığı ve olgunluğu yalnızca fiyat ve hacimle tahmin edilemez. Aktörleri ve aralarındaki ilişkiler önemli bir etkiye sahiptir...


Kingfisher: Piyasa Kalitesi

Daha önce FTX Kasım 2020 dergisinde yer almıştır

Bir piyasanın sağlığı ve olgunluğu yalnızca fiyat ve hacimle tahmin edilemez. Aktörleri ve aralarındaki ilişkiler, bir sektörün alacağı yön üzerinde önemli bir etkiye sahiptir. Borsa, büyük piyasa yapıcıları ve genel piyasa katılımcılarını ele alacak ve etkileşimlerinin kripto piyasalarını nasıl şekillendirdiğini inceleyeceğiz.

Bu makalede, borsa eşleştirme motorlarının fiziksel sınırlamalarını, bunun daha geniş kripto piyasasını nasıl etkilediğini ve kripto paraları daha adil ve daha verimli bir piyasa haline getirebilecek birkaç öneriyi ele alacağız.

Ticaretin fiziksel sınırları

Binlerce yıldır insanlar, piyasalarını daha dayanıklı, verimli ve her zaman daha hızlı hale getirmek için çalışıyorlar. Lojistik ağlardan çevrimiçi ödeme işleme sistemlerine kadar, gecikme azaltma arayışı, piyasaların kendisi kadar eski. Bir sektör, aşamayacağı bir engelle karşılaştığında ne olur? Silikonun keşfi ve uygulamaları, bilgi yayılım hızını ışık hızına yakın bir seviyeye çıkarmamıza olanak tanıdı. Daha hızlı hale getiremeyiz.

Euronext eşleştirme motorunda çalışarak, donanımın fiziksel sınırlarından en iyi şekilde yararlanmayı ve daha hızlı Eşleştirme Motorları (ME) geliştirmeyi öğrendim.

ME, herhangi bir borsanın kalbidir. Yüksek yeteneklere sahip maraton koşucularının yavaş ama güçlü bir kalp atışı vardır; her kalp atışı, dokulara ve kaslara besinleri en iyi verimlilik ve hızla ulaştırmak için optimize edilmiştir. Benzer şekilde, ME, ticaret işlemlerini verimli ve hızlı bir şekilde çözmekten sorumludur ve sonuçta ortaya çıkan bilgilerin, Borsaların altyapısının doğru kısmına güvenilir ve dayanıklı bir şekilde iletilmesini sağlar. ME'nin gecikmesi, borsa ekiplerinin sıkı çalışmaları sayesinde yıllar geçtikçe azalıyor; bazı eski liderler ise tembellik yapmaya başlayıp, her gün daha fazla müşteri kaybederek ödüllerinin üzerinde oturuyorlar.

"Eğer yukarı çıkmazsan, aşağı inersin."

Yukarı çıkmak için aşağı inelim: CPU'yu anlamak 101:

2000'lerin ortaları, Moore yasası döneminin sonunu işaret etti; daha yüksek frekanslı donanımlara geçiş, otomatik performans artışları sağlıyordu. Bunun yerine, sektör, performans kazançlarının daha fazla yürütme birimi (çekirdek) eklemekten geldiği bir modele yöneldi. Ancak çok çekirdekli mimarilerin kullanımı, ek geliştirme ve test çabaları gerektirir ve daha fazla iş parçacığı ekleme naif yaklaşımı genellikle ölçeklenebilirlik beklentilerini karşılamaz. Neden?

"Bir Merkezi İşlem Birimi (CPU) gerçekten bir görevde çok iyidir, birçok CPU varsayılan olarak bir ekip olarak iyi değildir."

Bir CPU, bir işlem birimi ve bir bellek biriminden oluşur. Bir CPU çekirdeği, talimatları kendi frekans hızında yürütmek üzere düzenlenmiştir. Örneğin, 3 GHz bir CPU, her talimatı 0.333 ns'de işler (1 000 000 000 ns = 1 sn). Yarı iletken teknolojisi (nanometre cinsinden) fiziksel sınırları belirler.

Gerçeklik çok daha karmaşıktır. Talimatların ve verilerin, CPU frekansı ile aynı hızda çalışan fiziksel kayıtlarında zaten saklandığını varsayıyoruz. Gerçekte, talimatlar ve veriler, çok katmanlı bir önbellek bellek mimarisinde (L1/L2/L3) saklanır. Ne kadar yakınsa, CPU işlem birimine FİZİKSEL OLARAK ÇİPTE, o kadar hızlı ve küçüktür. Bu nedenle, L1 önbelleği en hızlı ve en küçüktür. Şekil 1, çok çekirdekli CPU mikro mimarisini ve her önbellek seviyesinin karşılık gelen boyut/hızını göstermektedir.

Şekil 1: Çok Çekirdekli CPU Mikro Mimari

Gecikmeyi uzun ve döngüleri kaybolmuş hale getiren unsurları anlamak için, çok çekirdekli CPU sistemine uygulanan Evrensel Ölçeklenebilirlik Yasası'nın temellerini anlamamız gerekiyor. Ölçeklenebilirliği etkileyen ana parametreler şunlardır:

• Çekirdek kaynakları rekabeti: örneğin, hiper iş parçacığı nedeniyle. Birden fazla yazılım iş parçacığı, aynı yürütme birimlerine eşzamanlı olarak erişmek ister ve bu nedenle işleme sıralı ve öncelikli hale gelir.

• Önbellek bellek rekabeti: işletim sistemi bağlam değiştirmesi durumunda, aynı çekirdekten özel önbellek belleğine (L1/L2) erişim olduğunda veya sorun boyutu özel önbellek belleğinde saklanamayacak kadar büyük olduğunda ortaya çıkar. Bu olaya önbellek thrashing denir. Çok çekirdekli sistemlerde, önbellek thrashing, çekirdekler arasındaki paylaşılan L3 önbelleğinde (veya LLC son seviye önbellek) gerçekleşir. Bu nedenle, etkisi, gecikmede kaybedilen birkaç yüz nanosekondur. Çözüm, verilerin yerel işleme yerelliğini artıran akıllı bir yazılım olmalıdır; bu, CPU çekirdeğini yerel hesaplama yaparken meşgul tutarken bellek bant genişliği kullanımını da artırır; bu çok zor bir problemdir ve bugün için kolay bir çözüm yoktur.

• Önbellek tutarlılığı: bu, çekirdekler arasında yazılım senkronizasyonu (mutex, bariyer vb.) veya her iki çekirdek tarafından aynı bellek alanına erişim olduğunda kesintisiz iletişim sağlamak için bir donanım mekanizmasıdır. Basit bir önbellek tutarlılığı (bir önbellek satırı) en az 600 döngüye mal olur.

Eşleştirme motorlarının maruz kaldığı yük

CPU'ların sınırlamalarını dikkate alarak, borsalar operasyonlarını yönetmek zorundadır. Öncelikle, borsalar, trader'larının pozisyonlarını yönetmek zorundadır. Bu, yüksek volatilite dönemlerinde kitlesel likidasyonlar gerçekleştiğinde likidite risklerine maruz kalmalarına neden olur. Borsalar, kitlesel likidasyonlar gerçekleştiğinde diğer piyasa katılımcıları üzerinde dalgalanma etkilerini önlemek için bu pozisyonların likidasyonunu yönetmeye çalışırlar. Ayrıca, hizmetlerinin dayanıklılığını ve tutarlılığını sağlamak için piyasa kurallarını uygulamak ve işlemleri geriye almak zorundadırlar.

  1. yüzdelik dilim, belirli bir görev için belirli bir zaman aralığında değerlendirilen sorgular için en yüksek %1 gecikme değerini temsil eder. Dayanıklı ve verimli bir yazılım, 99. yüzdelik dilim tarafından değerlendirilecek ve reklam edilen gecikme eşiği haline gelecektir. Borsaların Eşleştirme motorları, ne kadar iyi kodlanmış olursa olsun, her zaman bu gecikmelerle sınırlı kalacak ve kullanıcıları için toplam işlem hacmini sınırlayacaktır. Eğer bir borsa, saniyede sınırlı bir işlem sayısına sahipse.

Bu, ME'nin yönetmesi gereken her eşleştirme talimatı için birkaç bin işlem ekler. Ayrıca birçok enstrümanı hizmet vermek ve saniyede milyonlarca mesajı işlemekle ilgili iş talepleri için kısıtlamaları vardır.

Mimari açıdan ölçeklenebilirlik ve istikrar nasıl sağlanır?

ME, birden fazla kaynaktan veri toplayan, yüksek ve dinamik iletişim sıklığına sahip, yüksek derecede birbirine bağlı bir iş akışı hesaplama profilidir. İş parçacığı senkronizasyonları ve zamanlamaları dinamik ve hızlı bir şekilde yapılmalıdır.

Reaktif yazılım, büyük ölçekli reaktif mikro hizmetler ve ince taneli reaktif uygulamalar (bir işlem) inşa etme felsefesi ve paradigma değişimidir. Asenkron mesaj iletim tasarımına dayanan, reaktif bir yazılımı sıfırdan inşa etmeye olanak tanıyan birçok eşzamanlı programlama modeli vardır. Aktör modeli, bu türden savaşta kanıtlanmış bir programlama modudur.

Aktörler, tüm geliştirme ve üretim yaşam döngüsünü destekleyen çok verimli bir kavramdır. İşlevsel kavramlarla doğrudan eşleştirildiğinden, aktörler iş ve işlevsel mimariler arasındaki mesafeyi kısaltır; geliştiriciler arasında iş bölümü yapmak için yeterince ayrıntılı bir seviyede mantığı kapsüller; test için doğrudan kullanılabilir kavramlardır; ve yöneticilerin, mevcut donanım ve uygulama yüküne dayanarak topolojiyi dinamik olarak belirlemelerine olanak tanır.

ME, bu işlemleri alarak, gerekli hesaplamaları mevcut CPU çekirdekleri arasında dağıtacaktır. Eğer bir çekirdek doluysa, veri ya üst bir önbellek seviyesine, anakart soketlerine ya da en kötü durumda, RAM'e geri gönderilir ve donanım kaynaklarına iletilir (bu, diğer bileşenlere ulaşması gerektiğinden en yüksek maliyete sahiptir).

Her seferinde bir çekirdek, yük dengelemesi için senkronize olmak zorunda kaldığında "gecikme ücreti" öder. Ne kadar çok çekirdek eklerseniz, veriler o kadar yayılabilir, ancak o kadar fazla gecikme ücreti ödeyeceksiniz. Bu ücret üstel olarak artar. Bu, borsaların gerçekten sadece daha fazla sunucu satın alarak ölçeklenememesinin ve aynı zamanda kendi başarılarının kurbanı olabilmesinin ana nedenidir. Gecikmenin kritik noktası, entropinin devreye girmesiyle gelir; verileri birçok çekirdeğe yayar ve birbirlerine veri beklemek için sadece söz verirler.

Mühendislerin kullandığı strateji, her çekirdeği belirli bir role ayırmak ve başka bir şey yapmamalarını sağlamak, çok fazla veri veya talimat almalarını sağlamak ve mümkün olduğunca girişlerden herhangi bir senkronizasyon ve rastgeleliği önlemektir. Bunu başarmak için, ya araştırmaya para harcamak ya da bellek tahsisini ve çekirdek kontrolünü yönetmek için yazılıma yatırım yapmak zorundadırlar. Ve özellikle, herhangi bir CPU zamanını israf etmeyen titiz mühendisler gereklidir.

İkilem:

Borsalar ve piyasa genel olarak, yükü artırma ile hız ve gecikme sınırlamalarını daha belirgin hale getirme arasında bir ikilemde buluyorlar.

Satış tarafı:

Satış tarafı (borsalar) açısından, entropiyi daha iyi yönetmek için çözümler geliştirmek için çok para harcıyorsunuz. Genişleyen müşteri tabanının yarattığı entropiyi de içeren gecikme ikilemini anlayan yetenekli geliştiricilere ihtiyacınız var (ticaret yazılımları, algoritmik traderlar, piyasa yapıcılar). Bir noktada, tasarım sınırları fizik kuralları tarafından belirlenir. Bunu göz önünde bulundurarak, herhangi bir hata birikir ve hızla acı verici hale gelebilir; bu, geliştirme kapasitesini sınırlayarak yeniliğin, yeni gecikme maliyetleri yaratma korkusuyla öldürülmesine yol açar. Borsalar, meşru piyasa katılımcıları tarafından yapılabilecek bir Dağıtılmış Hizmet Engelleme (DDoS) benzeri durumlardan kaynaklanan ME arızalarının riskini azaltmak zorundadır.

Bu riskleri azaltmak için, işlem limitleri uygularlar ve hangi talimatların onlara en iyi iş fırsatlarını getireceğini önceliklendirirler. CPU ve gecikme fizik ve matematiktir. Araştırma, titizlik ve "adalet" kavramları insanların takdirine bağlıdır. Eğer herkesin hızını düşürürseniz, piyasayı çoğu trader için daha verimsiz hale getirirsiniz. Bu, kaynakları olanlara (düşük seviyeli kodlama mühendisi, dağıtım için sermaye, araştırma ekibi, hacim) avantaj sağlar. Ayrıca, her işlem, yasal nedenlerle, birkaç milisaniye sonra siparişi iptal etse bile kaydedilmelidir. HFT (Yüksek Frekanslı Ticaret) firmaları, borsalara büyük yük bindirerek çoğunlukla israf edilen kaynaklarla borsa maliyetine neden olurlar.

Alım tarafı

Alım tarafı (müşterilerin bakış açısı) açısından, sınırsız bir ME, daha iyi stratejilere, daha fazla rekabete, daha verimli piyasalara, borsalar arasında daha iyi arbitraj fırsatlarına ve düşük hacimli traderlar için herkesle aynı hızda likiditeye erişim sağlayan daha adil bir piyasa sunar.

Müşteri sayısı arttıkça, ME yavaşlar ve çoğu traderı dışlar. Borsaların sunucularının coğrafi yakınlığında sunucu satın almak, belirli piyasa katılımcılarının belirli fiyat kalıpları göndermesine olanak tanır; bu, düzenleyici ve borsa açısından özel bir öneme sahiptir. Yüksek volatilite dönemlerinde, HFT çoğunlukla rakiplerin likiditesini tüketir ve HFT olmayanların siparişlerini absorbe eder. Alıcılar, bilgili traderlar olarak hareket etme eğilimindedir ve sipariş akışları diğer katılımcılar için toksik olarak kabul edilebilir.

Çoğu traderın zaten deneyimlediği bir örnek, saniyede 6.000 siparişin verilip iptal edildiği bir HFT stratejisidir. Yani, her alıntının yaşam süresi 1.6 milyonuncu saniyeden daha kısa - bu, ışığın yaklaşık 1,500 feet mesafeyi kat etmesi için geçen süredir. Bu mesafeden daha uzakta olan herkes, bu alıntılara karşı işlem yapma şansına sahip değildir. Bu, bir piyasa katılımcısının borsa ile aynı veri merkezinde bulunması nedeniyle mümkün olan yaygın olarak kullanılan bir strateji olan alıntı doldurma (quote stuffing) olarak adlandırılır. Bu, bugün, agresif siparişlerin borsa ile karşılaştığında büyük gizli spread'lere yol açar.

Piyasa kuralları hakkında yalnızca satış tarafının uygulayabileceği ve düzenleyicilerden veya kendi kendine düzenlemelerden teşvik alarak hizmet kalitelerini artırabilecekleri sorular ortaya çıkmaktadır. HFT'yi destekleyenler, spread'i azaltarak ve diğer kötü niyetli stratejilerin (spoofing gibi) gerçekleşme olasılığını azaltarak likiditeyi artırdıklarını söyleyeceklerdir.

Diğerleri ise bu hızın adaletsiz olduğunu söyleyecektir. HFT olmayanlar, işlem limitleri, istatistiksel arbitraj stratejileri ve hayalet alıntılar arasında sıkışıp kalıyor; bu da küçük katılımcıların kazanma olasılığını azaltıyor. Yüksek yetenekli katılımcıların yanı sıra, son yıllarda altcoin quantoları gibi yeni ürünler ortaya çıkmış ve bu makalenin yazıldığı sırada en endişe verici olanlardır. ICO çılgınlığı ve kripto para piyasalarının likidite tuzağı hakkında yazılan ve eğitilen çoğu, traderları düşük likiditeye sahip spot paralar/tokenlar yerine, geliştirilmiş likiditeye sahip kaldıraçlı ürünleri tercih etmeye yönlendirmiştir; bu, önceki FTX Haziran dergisinde Clarens Caraccio tarafından detaylandırılmıştır.

"Inverse" pozisyonu almak, "short" pozisyondan daha risklidir. Fiyat düştükçe, pozisyon daha fazla delta biriktirir ve trader'ı likidasyon riskiyle karşı karşıya bırakır. Yeni bir trader dalgası, aynı düşük temel likiditeye sahip spotta, ancak bu sefer USD dışı teminat kullanıldığında "long" pozisyonlarda negatif gamma