Toplantıda kullanılan sunum için linke tıklayınız

Nasdaq Projesi
Bilgilendirme Toplantısı - 2
7 Kasım 2014
ÖNEMLİ NOT
Bu sunumda ve toplantıda verilen örneklerde kullanılan parametreler
tamamıyla gösterge niteliğinde olup, Borsa İstanbul Yönetim Kurulu
tarafından onaylanmamıştır. Nihai durum üyelerimizle projenin ilerleyen
safhalarında paylaşılacaktır.
Nasdaq – Borsa İstanbul – Takasbank
Stratejik Ortaklık
Borsa İstanbul ve Takasbank tarafından,
 Teknolojik ihtiyaçlarının sürdürülebilir bir şekilde karşılanması,
 Teknik bilgi ve tecrübesinin artırılması,
 Ürün ve piyasalarının geliştirilmesi ve marka değerinin artırılması
 Teknolojik altyapının tedariği, kurulumu ve güncellenmesi,
 Ürün kaynak kodlarının sahipliği,
 Ürünlerin ölçeklenebilir hale getirilerek bölgemiz borsaları için tedariği,
 Piyasa/Ürün Geliştirme ile Teknolojik Altyapı açısından bilgi transferi
amaçlarına yönelik olarak Nasdaq projesi başlatılmıştır.
Ajanda
 Teknolojik Dönüşüm Programı Takvimi
 Pay Piyasası Raporları
 Emir İletimindeki değişiklikler
 FIX Protokolü
 Co-lo: ITCH ve OUCH
 OUCH Protokolü
Genel Takvim
Faz 1 Takvimi
TARİH
AKSİYON
11 TEMMUZ 2014
Yeni teknolojik platform hakkında bilgilendirme toplantısı
16 EYLÜL 2014
TASLAK API dokümanlarının yayınlanması
7 KASIM 2014
İkinci bilgilendirme toplantısı
30 KASIM 2014
API dokümanlarının güncellenmiş versiyonunun yayınlanması
Q1 2015
Test ortamlarının üye ve yazılım kuruluşlarının testlerine açılması
Q1 2015
Pay Piyasası raporlarının formatlarının yayınlanması
Q2 2015
Üye/Yazılım kuruluşu yazılım sertifikasyonu çalışmaları
Q2 2015
Temsil ekranları (Trading workstation) eğitimleri
Q3 2015
Faz 1 – Devreye Alım
Test Ortamları için başvurular
• FIX, OUCH ve ITCH test ortamlarına bağlantılar için
detaylar ayrıca duyurulacaktır.
• Test ortamlarından üyelerimiz ve üyelerimize destek
veren yazılım kuruluşları faydalanabileceklerdir.
• Testler sırasında karşılaşılan sorunlara email aracılığıyla
destek verilecektir.
Pay Piyasası Raporları
• Emir ve İşlem defterleri, bülten ve marjlar gibi…. seans
sonlarında devreye giren Rapor servisi içeriğinde
değişiklikler mevcuttur.
• Eposta ile rapor gönderimi sonlandırılacaktır.
• Rapor paylaşım platformu yenilenecektir.
– Borsa İstanbul web sitesi
– Web tabanlı Rapor portalı
• Yeni rapor formatları Q1 2015’de duyurulacaktır.
Emir İletim ve Yayın Protokolleri
(Üye Ofisleri & Birincil Veri Merkezi)
Partitioning = Mantıksal gruplama
• Alım satım sistemi iki adet mantıksal gruptan (partition) oluşacaktır.
• Tüm kıymetler bu iki partition'a alfabetik olarak dağıtılacaktır. (A-I ve J-Z)
• Alfabetik dağılım zaman içerisinde değişebilir
• Bir kıymet sadece ait olduğu partition’da işlem görecektir.
İki Partition’lı Yapıda Emir İletimi
• FIX-OE (OrderEntry) ve OUCH kanallarında her iki partitiona ayrı
ayrı bağlantı kurulması gerekmektedir.
• Kıymetlerin partition bilgisi FIX-RD (ReferenceData) kanalındaki
SecurityDefinition/Report mesajlarında yer almaktadır.
• Bir kıymet hangi partitionda ise o partitiondan emir
gönderilmekte ve yine bu partitiondan gönderilen emire cevap
verilmektedir.
Throttling
Yeni Sistem
Eski Sistem
• Partitioning yapısı gereği
throttling kapasiteleri
partitionlar arasında ikiye
bölünmeden kullanılacaktır.
• Throttling’i aşan mesajlar
queue’ya konarak daha
sonra işlenmektedir
• Milisaniye hassasiyetinde
ölçülmektedir.
• Throttling kapasiteleri
sunucular arasında ikiye
bölünmüştür.
• Throttling aşıldığında
Business Reject mesajı
gönderilmektedir.
• Saniye hassasiyetinde
ölçülmektedir.
Failover / Yedeklilik
Yeni Sistem
• “aktif-pasif” statüde
çalışan ve birbirinin
replikesi olan iki gateway
• Pasif olan (standby)
GW’e bağlantı kurulursa,
diğer GW otomatik
olarak aktif bağlantısını
sonlandırılıyor
• Sequence numaralarına
kalındığı yerden devam
etmek mümkün.
Mevcut Sistem
• “aktif-aktif” modunda çalışan ve
replike olmayan iki gateway.
• Inbound mesajlar kopyalanmıyor
• Bir bağlantı üzerinden gönderilen
emire, her iki bağlantıdan da
cevap dönmektedir.
• İki gateway üzerindeki
sequence numaraları farklı
Direct Quote Request (DQR)
• Otomatik Kotasyon atanmasına son verilecek
• DQR fonksiyonu ile bir hisse için Piyasa Yapıcısından Kotasyon
talep edilebilecektir
• Kotasyon talebinin zamanında yanıtlanması Borsa tarafından
takip edilecektir.
• Kotasyon talebi mesajı aşağıdaki bilgiler içerecektir:
– Menkul Kıymet Adı
– Kotasyon tarafı (alış/satış/her iki taraf)
– Opsiyonel miktar
DropCopy
• Birden fazla sponsorred kullanıcının copy mesajları tek bir
DropCopy kullanıcısına yönlendirilebilecektir.
• Bir kullanıcının mesajları birden fazla DropCopy kullanıcısına
replike edilebilecektir.
• DropCopy kanalına yönlendirilen mesajlar, Reject mesajları
içermeyecektir.
• DropCopy mesajları CopyMsgIndicator (797=Y) alanı ile
işaretlenecektir.
FIX Protokolü
Yeni Sistem
Mevcut Sistem
• Versiyon : 5.0 SP2
• Karakter Seti : ISO-8859-1
(Latin-1)
• Versiyon : 5.0 SP1
• Karakter Seti : UTF-8
• FIX standardına ek zorunlu
alanlar bulunmaktadır.
Yeni FIX İletişim Kanalı Mimarisi
• Reference Data ve Order
Entry fonksiyonları
birbirinden ayrılmıştır.
• Her kullanıcı için farklı port
• FIX Order Entry: İki partition
• FIX Ref. Data: Partition yok
• FIX Bağlantıları için toplam üç
farklı kullanıcı
– FIX Order Entry: 2 Kullanıcı
– FIX Ref. Data: 1 Kullanıcı
FIX-Reference Data Desteklenen Mesajlar
• Multicast kanalının yerine unicast çalışan FIX Reference Data (FIX RD)
• Menkul kıymetlerin ve Pazarların bilgileri
• Subscription yapısı ile çalışacaktır. Mesajlar kullanıcılara push yöntemi ile
gönderilecektir.
Inbound
•
•
•
•
Application Message Request
SecurityStatusRequest
SecurityDefinition Request
Price Reference Request
Outbound
•
•
•
•
•
•
•
Application Message Request Ack
Security Definition
Security Definition Update Response
Security Status
Price Reference
Market Definition
Trading Session List
Seans Durum Bilgisi Mesajları
• Yeni sistemde seans değişikliğini bildiren ayrı bir
TradingSessionStatus mesajı olmayacaktır.
• Her hisse için seans başlangıç ve bitişini bildiren ayrı birer
SecurityStatus (f) mesajı iletilecektir. Bu mesajların her gün
farklı sırada iletilebilecektir.
• Yeni sistemde seans bilgileri ile ilgili 2 yeni mesaj tipi FIX RD
sunucusu tarafından iletilecektir:
– Market Definition
– Trading Session List
FIX-OE Desteklenen Mesajlar - INBOUND
Mevcut Sistem
Yeni Sistem
•
•
•
•
•
•
•
•
•
•
NewOrderSingle
OrderCancelReplaceRequest
OrderCancelRequest
MassQuote
Quote
TradeCaptureReport
OrderStatusRequest
Security StatusRequest
TradingSessionStatusRequest
User Request
•
•
•
•
•
•
•
•
NewOrderSingle
OrderCancelReplaceRequest
OrderCancelRequest
Quote
OrderStatusRequest
Security StatusRequest
TradingSessionStatusRequest
User Request
FIX-OE Desteklenen Mesajlar - OUTBOUND
Yeni Sistem
•
•
•
•
•
•
•
•
•
•
ExecutionReport
OrderCancelReject
BusinessMessageReject
UserResponse
UserNotification
MassQuoteAcknowledgement
TradeCaptureReport
TradeCaptureReportAck
TradingSessionStatus
QuoteStatusReport
Mevcut Sistem
•
•
•
•
•
•
•
•
•
•
ExecutionReport
OrderCancelReject
BusinessMessageReject
UserResponse
UserNotification
MassQuoteAcknowledgement
TradeCaptureReport
TradeCaptureReportAck
TradingSessionStatus
QuoteStatusReport
Emir İletiminde Kullanılan ID alanları
ID
Açıklama
Order ID (37)
• Borsa tarafından gönderilen ID, Emir Defteri ve Emir Taraf
Bilgisi ile birlikte unique olma özelliğini sağlamaktadır.
Client Order ID (11)
• Gün Boyunca unique olmalı
• Geçerliliği ertesi günlere devam eden emirlerde unique
özelliği korunmalıdır.
Execution ID (17)
• Borsa tarafından gönderilen her Execution Report mesajı için
unique olacaktır.
Quote ID (117)
• Üye tarafından gönderilen her Kotasyon mesajı unique bir
QuoteID değeri içermelidir.
• ClORdID ile aynı numaralandırma serisinden üretilmesi
tavsiye edilmektedir.
Emir Değiştirme
Yeni Sistem
Eski Sistem
• Emir Değişikliği için emrin;
• Emir Değişikliği için emrin;
– Order ID veya
– OrigClOrdID
bilgilerinden biri yeterli
olacaktır.
• Emir Girişinin hemen
ardından yapılacak emir
değişikliği için teyit mesajı
(OrderID) bekleme
zorunluluğu kalkacaktır.
– OrderID,
– Fiyat ve
– Miktar
bilgileri gereklidir.
Kısmi İşlem – Partial Trade Execution Report
Yeni Sistem
• Execution Report (Kısmi
Gerçekleşme) mesajı;
– OrderQty : Orijinal miktar
– LastQty : Son işlem gören
miktar
– LeavesQty : Kalan miktar
– CumQty : Toplam işlem gören
miktar (birden fazla kısmi işlem
için)
• Emir defteri yönetimi FIX
Protokol standartlarına
uygundur.
OrderQty=CumQty + LeavesQty
Eski Sistem
• Execution Report (Kısmi
Gerçekleşme) mesajı;
– OrderQty : Orijinal miktarı
– LastQty : Son işlem gören
miktar
– LeavesQty : Kalan miktar
Kotasyon İletimi - 1
Yeni Sistem
• Mass Quote (i)
• Mass Quote Ack (b)
• Kotasyon Güncelleme:
– Mass Quote (Yeni Kotasyon)
• Kotasyon İptali:
– Kotasyon miktar ve fiyat
bilgileri sıfır girilerek iptal
edilebilir.
Eski Sistem
• Quote (S)
• QuoteStatusReport (AI)
• Kotasyon Güncelleme:
– Quote (Kotasyon Değişikliğinde
mevcut kotasyon bilgileri
istenmektedir.)
• Kotasyon iptali mümkün değildir.
• QuoteID(117) Borsa tarafından
verilir.
• QuoteID (117) PY tarafından
verilir.
Kotasyon İletimi - 2
• MassQuote mesajı ile aynı mesajda birden fazla
menkulde Kotasyon girişi mümkündür
• MassQuote mesajı ile tek taraflı Kotasyon girilebilir,
güncellenebilir ve iptal edilebilir.
Kotasyon Mesajlaşma Akışı
Yeni Sistem
Mevcut Sistem
Protokoller arası Emir Yönetimi
Co-lo: ITCH ve OUCH
NOMX Ko-Lokasyon Protokolleri
ITCH Protokolü
•Market By Order (MBO) datası anlık veriliyor
•Üç ana komponent var:
•ITCH Gateway (Multicast, UDP)
•ITCH Rewinder (MoldUdp)
•GLIMPSE Gateway ( MoldUdp veya SoupTcp)
•Partition bazlı
OUCH Protokolü
•HFT , Sponsored DMA
•Alt katmanda SoupTcp protokolünü kullanıyor
•TCP, asenkron protokol
•Kabul veya red cevabı geliyor. Emir defteri ve işlem bilgileri ITCH’ten geliyor
•İsteyen üyelerimiz OUCH yerine FIX ile de emir gönderebilecek
•Partition bazlı
SoupTcp ve MoldUdp Altyapı Protokolleri
•SoupTcp ve MoldUdp dünya standardı olan protokoller.
•OUCH ve GLIMPSE SoupTcpBin kullanıyor
•ITCH Rewinder MoldUdp kullanıyor
FIX Protokolü ile DropCopy
•Sponsor oluna yatırımcının OUCH veya FIX ile gönderdiği emirlere gelen cevaplar (ExecutionReport’lar) FIX protokolü
üzerinden Sponsor olan üyeye gönderilecektir.
•Birden fazla sponsor olunan yatırımcının dropcopy mesajları aynı FIX bağlantısından dinlenebiliyor
•FIX partition bazlı olduğu için, DropCopy için her bir partition için ayrı bir bağlantı gerekiyor
Co-Lo: ITCH Protokolü
• Market by Order (MBO) datasının üyelere anlık iletimini sağlar
• NASDAQ OMX tarafından geliştirilmiştir.
• Dünya borsalarında yaygın olarak kullanılmaktadır.
• ITCH hizmeti, Birincil Veri Merkezi’nde yer alacak Ko-Lokasyon
üyelerine verilecektir.
• Partition bazlıdır.
• Sayısal değerler Big Endian (Twiddle)
• 3 Komponenttten Oluşur:
– ITCH Gateway
– GLIMPSE
– REWINDER
ITCH - ITCH Gateway
I.
ITCH GATEWAY
–
–
–
–
–
UDP Multicast üzerinden MBO data gönderiliyor
Artan sequence numarası yapısı vardır
Bir pakette birden çok mesaj gönderimi yapılıyor
Kaçırılan mesajlar REWINDER’dan istenebilir
Partition bazlıdır. Her partition için ayrı multicast grubunu dinlemeniz
gerekiyor
– ITCH mesajları ile emir tahtalarını oluşturabilirsiniz
– Ko-Lokasyon ortamında 10 Gbit ve 1 Gbit fiber LAN ortamından
dinlenebilecek
Co-Lo: ITCH - REWINDER
II. REWINDER
–
–
–
–
–
–
Kaçırılan mesajların tekrar alınması için
Unique Sequence numarası ile mesajların takibi
Küçük boyutlarda mesaj kaybı durumunu telafi etmekte kullanılır.
Bir seferde en fazla 40-50 mesaj istenebiliyor
MoldUdp64 (UDP) protokolü kullanılıyor
Partition bazlıdır
Co-Lo: ITCH - GLIMPSE
III. GLIMPSE
–
Geç bağlanma durumunda emir tahtalarının son halini (snapshot)
hızlıca almak için kullanılır
Snapshot istenmeden önce ITCH Gateway mesajları dinlenmeye
başlanmalıdır
Snapshot’ta kullanılmış olan son ITCH mesajının sequence numarası
GLIMPSE’de son mesaj olarak gönderilecektir.
SoupTcpBin veya MoldUdp ile çalışabiliyor
Desteklenen Mesajlar:
–
–
–
–
•
•
•
Order Book Directory (R)
Tick Size Table Entry (L)
Order Add (A)
Co-Lo: ITCH Mesaj Tipleri
Message Type
Messages
Time Message
Seconds Message (T)
Reference Data Messages
Order Book Directory (R)
Tick Size Table Entry (L)
Event and State Change Messages
System Event Message (S)
Order Book State Message (O)
Market by Order Messages
Order Add Message (A)
Order Executed Message (E)
Order Executed with Price Message (C)
Order Replace Message (U)
Order Delete Message (D)
Trade Messages
Trade Message (P)
Auction Messages
Equilibrium Price Update (Z)
OUCH Protokolü
Co-Lo: OUCH Protokolü
• NASDAQ OMX tarafından geliştirilen, yüksek hızda yapılan (HFT)
emir iletim protokolüdür.
• OUCH hizmeti, Birincil Veri Merkezi’nde yer alacak Ko-Lokasyon
üyelerine verilecektir.
• SoupBinTCP* protokolü ile gönderilen OUCH mesajlarının
kayıpsız bir şekilde iletilmesi garanti edilir.
• Asenkron bir protokoldür
• Reference data ve emir defteri ve işlem bilgileri ITCH protokolü
ile alınıp takip edilmelidir
*SoupBinTCP, OUCH için zorunlu bir protokoldür ve ayrı bir teknik dokümanı
mevcuttur.
Co-Lo: OUCH Protokolü Özellikleri
• Yüksek Hız, Kısıtlı Fonksiyonalite
OUCH protokolü ile gerçekleştirilebilecek fonksiyonlar, performansı
yükseltmek amacıyla sınırlandırılmıştır.
• Belirli Mesaj ve Alan Uzunlukları
OUCH kanalında inbound/outbound tüm mesajların belirli uzunlukları
bulunmaktadır.
Her bir alan için ayrılan büyüklük tanımlanmıştır.
Mesaj içerisinde kullanılmayacak alanlar belirlenmiş kurallara uygun olarak
boşluk karakteri ile doldurulur.
Co-Lo: OUCH Protokolü - Bağlantı
• 2 Partition:
Kullanıcılar aynı
user ile her iki
partition’a
bağlanacaktır.
•
Failover yapısı,
birbirinin replikası
olan iki OUCH
sunucusu ile
sağlanmaktadır.
İkinci sunucuya
bağlantı
kurulduğunda ilk
bağlantı
sonlandırılır.
Co-Lo: OUCH Protokolü Mesaj İletimi
• Desteklenen Mesajlar:
–
–
–
–
Emir Girişi (Sadece Limit Emir) (O)
Emir Değişikliği (U)
Emir İptali (X,Y)
Emir Teyit mesajları
• Yeni Emir Girişi
– Emir Kabul Edildi (A)
– Emir Red Edildi (J)
• Emir Değişikliği
– Değişiklik Kabul Edildi (U)
• Emir İptali
– İptal Edildi (C)
• Emir Eşleşme Bilgileri (E)
Co-Lo: OUCH Kurum İçi Sıra Numarası (KİSN)
• OrderTokenID: Üye tarafından gönderilen tüm mesajlarda
unique özellikli bir OrderTokenID bulunmalıdır.
• OrderTokenID alphanumeric bir değerdir (14 karaktere
kadar)
• Cevap olarak hata alınsa dahi aynı OrderTokenID bir daha
kullanılamaz
• Tekrar eden OrderTokenID’ye sahip emirler reddedilecek ve
emirlerin Borsa’ya tekrar iletilmesi durumunda ortaya
çıkacak olumsuz durumların önüne geçilecektir.
Sorularınız
Web sayfası
• http://borsaistanbul.com/nasdaqdestek
Email Adresleri
• Genel: [email protected]
• FIX Protokolü : [email protected]
• OUCH Protokolü [email protected]
• ITCH Protokolü : [email protected]
SAYGILARIMIZLA