VİOPFIX API
ÜYE YAZILIMI SERTİFİKASYON
PROGRAMI TEMEL SEVİYE
Kasım 2014, Sürüm 1.0
DÖKÜMAN TARİHÇESİ
Tarih
Kasım 2014
Versiyon
Açıklama
1.0
İlk sürüm.
2
…………………………… A.Ş.’ nin VİOPFIX API BAĞLANTISI TESTİ
Üyelerimizin Dikkatine:
Bu testin amacı üyelerimizin kendi sistemlerini mevcut haliyle VİOPFIX API ortamında test
etmelerini sağlamaktır.
Lütfen aşağıdaki işlemleri sırasıyla yapınız ve bu işlemleri yaparken her adımda gelen
mesajları mutlaka kontrol ediniz.
Öncelikle emrin sisteme gönderildiğinde oluşması beklenen etkiyi belirleyiniz.
Emri veya herhangi bir isteği sisteme gönderdikten sonra beklenen etkinin gerçekleşip
gerçekleşmediğini, ilk aşamada aktiviteye ilişkin tarafınıza ulaşan cevabı; boyut, içerik,
tamlık ve doğruluk açılarından, ikinci aşamada ise arkadaki her kanaldan yapılan
aktivitelerin kaynağı olan ana sisteminizde doğru işlenmesi açısından kontrol ediniz.
Sertifikasyon programı kapsamında kılavuzda yer alan tüm adımların gerçekleştirilmesi
sonrasında, Sistem Bağlantı Testleri (Bölüm 1) ve Emir İletim ve Fonksiyon Testleri (Bölüm
3) sırasında gönderilen ve alınan mesajlardan oluşan log dosyalarının BİAŞ’a
[8=FIXT.1.19=32935=834=649=ISTVIOPFIX52=2014091007:33:37.20556=XXXFIX1128=91=114=037=201409290000000638=10039=040=242=20140
929-07:33:06.62644=4.6554=255=F_COTEGE1214S059=060=2014092907:33:06.62677=C150=0151=100381=465000453=2448=XXX452=1448=XXXFM1452=12625
=31181=161300=CFAN1352=Y9757=201409290000000321002=10010=117]
formatında
gönderilmesi beklenmektedir. Bu log dosyaları, BİAŞ tarafından hazırlanan ve senaryolar
sonucunda oluşması beklenen log dosyaları ile karşılaştırılacaktır. Emir iletim hızına bağlı
olarak asenkron kanaldan dönen cevap mesajları gecikebilmektedir. Bu durum log
dosyasında mesaj sıralarında değişikliklere sebep olabilmektedir. Mesajların içeriklerinin
aynı olması koşuluyla mesaj loglarının sırasının değişmesi karşılaştırma açısından sorun
teşkil etmemektedir. Sonuç olarak beklenen çıktıların alınması durumunda, üyelerimiz
3
sertifikasyon programını tamamlamış olacaklardır.
Log dosyalarının kontrollerden başarılı bir şekilde geçmesi için dokümandaki tablolarda
verilen alanların eksiksiz doldurulması gerekmektedir.
Sertifikasyon sürecinde beklenmeyen bir durum olması halinde sorunu yetkililere ivedilikle
bildiriniz.
Testin son bölümünü de doldurduktan sonra Borsa İstanbul yetkililerine ulaştırınız.
Vadeli İşlem ve Opsiyon Piyasası mevcut işlem kurallarında yer alan ve Borsa İstanbul
tarafından VİOPFIX API’de uygulanmasına izin verilen emir ve işlem fonksiyonlarının
tamamını veya bir kısmını kendi VİOPFIX API programlarında kullanmayan veya kısmen
kullanan üyelerimizin ileride müşterileri ile aralarında doğabilecek uyuşmazlıklarda hukuki
sorumluluk tamamen ilgili üyemize ait olacaktır.
Bu nedenle üyelerimize, VİOPFIX API ile emirlerini Borsa İstanbul’a iletecekleri müşterilerini
bu konuda bilgilendirmeleri ve müşterileri ile aralarında buna uygun hukuki dayanağı
oluşturmaları tavsiye edilmektedir.
Üye sisteminin hatasız çalışması üyelerimizin sorumluluğundadır.
4
İçindekiler
1
SİSTEM BAĞLANTI TESTLERİ ............................................................................................................ 6
2
SERTİFİKASYON TEST ORTAMI ......................................................................................................... 8
3
EMİR İLETİM VE FONKSİYONLARI TESTİ........................................................................................... 9
3.1
YENİ EMİR GİRİŞİ...................................................................................................................... 9
3.2
EMİR İPTALİ ........................................................................................................................... 11
3.3
MESAJ İNDİRME ..................................................................................................................... 12
5
1 SİSTEM BAĞLANTI TESTLERİ
Lütfen BİAŞ BT-Destek’i (Tel: 212- 298 24 27) arayarak sertifikasyon programına başlamak
istediğinizi belirtiniz. BT-Destek
yetkilisi
onay
verdiği zaman
aşağıdaki
adımları
gerçekleştiriniz.
1. Sisteme bağlı değilken Password alanını boş bırakarak Logon mesajı gönderiniz.
Cevap: Logout mesajında yük bilgilerinin geldiği görülür.
2. BİAŞ tarafından şifreniz Qq123456 olarak ayarlanmıştır. Lütfen yükü gönderilen
GW’lerden yükü az olanı seçiniz ve seçilen GW üzerinden NewPassword alanını
göndermeksizin ve HeartbtInt(108) alanını 60 sn olarak ayarlayarak verilen şifre ile
bağlanınız. Bağlantı aşamasında ResetSeqNumFlag(141)=Y (sıra numarasını sıfırla)
olduğundan emin olunuz.
Cevap: PASSWORD_EXPIRED açıklaması ile Logout mesajı geldiği görülür.
3. BİAŞ tarafından verilen şifre ile Password alanını ve yeni bir şifre ile NewPassword
alanını doldurarak sisteme giriniz.
Cevap: Sisteme Logon mesajı ile girildiği görülür.
4. Logout mesajı göndererek sistemle olan bağlantınızı sonlandırın.
Cevap: Logout mesajı ile sistemden çıkıldığı görülür.
5. Yeni şifreniz ile sisteme giriniz.
Cevap: Sisteme Logon mesajı ile girildiği görülür.
6. İşlem yapmadan bekleyerek Heartbeat mesajının size ulaştığını kontrol ediniz.
7. TestRequest mesajı gönderin.
Cevap: Heartbeat mesajı alındığı görülür.
8. Logout mesajı göndererek sistemle olan bağlantınızı sonlandırın.
6
Cevap: Logout mesajı ile sistemden çıkıldığı görülür.
9. NewPassword alanını doldurarak şifre değiştirerek Logon mesajı gönderiniz.
Cevap: Sisteme Logon mesajı ile girildiği görülür.
10. Logout mesajı göndererek sistemle olan bağlantınızı sonlandırın.
Cevap: Logout mesajı ile sistemden çıkıldığı görülür.
11. Yeni şifre ile sisteme giriniz.
Cevap: Sisteme Logon mesajı ile girildiği görülür.
12. BeginSeqNo = 1 ve EndSeqNo = 1 değerlerini atayarak Resend Request gönderiniz.
Cevap: Yeniden talep edilen mesaj oturum mesajı olduğu için SequenceReset mesajı
geldiği görülür.
13. Mevcuttan daha büyük bir MsgSeqNum (50) değeri girerek sekans resetleme talebi
gönderiniz.
Cevap: MsgSeqNum değerinin verilen değere (50) set edildiği görülür.
14. Logout mesajı göndererek sistemle olan bağlantınızı sonlandırın.
Cevap: Logout mesajı ile sistemden çıkıldığı görülür.
7
2
SERTİFİKASYON TEST ORTAMI
Sertifikasyon programına başlamadan önce sistem, BİAŞ tarafından testler için özel olarak
hazırlanmış duruma getirilecektir. Sertifikasyon programına BİAŞ tarafından aşağıda belirtilen
adımlar girilerek başlanacaktır. Yatırım kuruluşlarının, sertifikasyon sürecine başlamadan
önce BİAŞ tarafından sisteme girilen aşağıda belirtilen senaryolara ait mesajları indirmeleri
gerekmektedir.
Dokümandaki senaryolarda 1 nolu hesap portföy hesabı, 2 nolu hesap global hesap, 3 nolu
hesap müşteri hesabı ve 4 nolu hesap riskli hesap olarak kullanılmıştır. Bu hesaplar,
sertifikasyon test ortamında üyelerimiz için tanımlanacaktır. Üyelerimizin testler sırasında,
söz konusu dört hesabı aşağıdaki adımlarda belirtilen şekilde kullanmaları gerekmektedir.
Sertifikasyon testi için hazırlanan ortam, kurumların teste katıldıkları günün tarihine göre
açılmaktadır. Bu nedenle dokümanda belirtilen emir numaraları (OrderID) kurumların teste
katıldığı tarihi içerecek şekilde değişiklik gösterecektir. Emirlerin sırası hiçbir şekilde
değişmeyecek, yalnızca emir numaralarının başındaki tarihi belirten ilk 8 hane
güncellenecektir.
1
2
Üyenin 4 numaralı hesabının
risk durumu 3(riskli)’e çekilir.
F_GARAN1214S0 sözleşmesi
durdurulur
Account [1]
TimeInForce [59]
OrderType [40]
Side [54]
Price [44]
OrderQty [38]
Market
SegmentID [1300]
Symbol [55]
MsgType [35]
Senaryo
Sıra No
BİAŞ tarafından hazırlanan mesaj adımları:
4
8
3 EMİR İLETİM VE FONKSİYONLARI TESTİ
Lütfen HeartbtInt süresini 300 olarak ayarlayarak sisteme tekrar bağlanınız.
3.1 YENİ EMİR GİRİŞİ
Aşağıdaki tabloda yeni emir girişi için gerekli bilgiler yer almaktadır. Lütfen ClOrdID bazında
tabloda yer alan bilgileri içeren emirleri giriniz. Her bir emir girişi sonrasında sonuç
5
6
4.5 1 2 0
CFAN
50
D
CFAN
1000
4.7 2 2 0
Sonuç
Account [1]
Side [54]
OrdType [40]
TimeInForce [59]
4.55 1 2 0 C
ER(OK)
ER(Order Long) 1 2014092900000002
Price [44]
Market
SegmentID [1300]
Symbol [55]
ClOrdID [11]
OrderQty [38]
10
C
ER(OK)
ER(Order Long) 2 2014092900000003
ER(OK)
ER(Order Long) 4 2014092900000004
D
3 F_COTEGE1214S0
4
CFAN
D
2 F_COTEGE1214S0
3
C
ER(OK)
ER(Order Long) 1 2014092900000001
D
1 F_COTEGE1214S0
2
PositionEffect [77]
1
MsgType [35]
Sıra No
kolonunda yer alan beklenen mesajın alındığını kontrol ediniz.
O_XU030E0215C9
4 2.000S0
EOAN
500
9 1 2 0 C
5 F_GARAN1214S0
FANA
100
8 1 2 0 C
6 F_COTEGE1214S0
CFAN
10
4.5 2 2 0 C
D
D
ER(Reject) (ERROR: Sözleşme
1 işlemleri durduruldu)
ER(OK)
ER(Order Long) 2014092900000005
ER(Order Short) 2014092900000002
ER(Order Short) 2014092900000005
ER(Trade) - 2014092900000002
1 ER(Trade) - 2014092900000005
9
D
O_XU030E0215C9
8 2.000S0
CFAN
EOAN
70
500
4.45 2 2 0 C
8.9 1 2 0 C
Sonuç
Account [1]
PositionEffect [77]
Side [54]
OrdType [40]
TimeInForce [59]
Price [44]
OrderQty [38]
D
7 F_COTEGE1214S0
8
Market
SegmentID [1300]
Symbol [55]
ClOrdID [11]
MsgType [35]
Sıra No
7
ER(OK)
ER(Order Long) 2014092900000006
ER(Order Short) 2014092900000002
ER(Order Short) 2014092900000001
ER(Order Short) 2014092900000006
ER(Trade) - 2014092900000002
ER(Trade) – 2014092900000006
ER(Trade) - 2014092900000001
1 ER(Trade) - 2014092900000006
ER(Reject) (ERROR: Emrin saklama
hesabina ait (kontrolde) emri
4 mevcut.)
10
3.2 EMİR İPTALİ
Aşağıda tabloda emir girişi yapılmış olan emirlerin iptalleri yer almaktadır. Belirtilen
senaryoları kapsayan, tabloda yer alan bilgileri içeren emir iptallerini giriniz. Her bir emir
iptali girişi sonrasında sonuç kolonunda yer alan beklenen mesajların alındığını kontrol
9
10
11
CFAN pazarında F_COTEGE1214S0
sözleşmesine girmiş olduğunuz 1000
adetlik 4.7 fiyat seviyesindeki
günlük satış limit emri iptal ediniz.
(ClOrdID=3)
F
EOAN pazarında
O_XU030E0215C92.000S0
sözleşmesine girmiş olduğunuz 500
adetlik 9 fiyat seviyesindeki günlük
alış limit emri iptal ediniz.
(ClOrdID=4)
F
CFAN pazarında F_COTEGE1214S0
sözleşmesine girmiş olduğunuz 70
adetlik 4.45 fiyat seviyesindeki
günlük satış limit emri iptal ediniz.
(ClOrdID=7)
F
SONUÇ
Side
ClOrdID
OrderID
MsgType [35]
SENARYOLAR
Sıra No
ediniz.
2014092900000
003
3
2
ER(OK)
News(Sistem Uyarıları)
ER(Order Short) – 2014092900000003
1
ER(OK)
News(Sistem Uyarıları)
ER(Order Short) – 2014092900000004
2
ER(OK)
News(Sistem Uyarıları)
ER(Order Short) – 2014092900000006
2014092900000
004
4
2014092900000
006
7
11
3.3 MESAJ İNDİRME
Aşağıda tabloda emir, işlem, genel yayın ve sistem uyarısı mesajlarını indirme mesajları yer
almaktadır. Belirtilen senaryoları kapsayan, tabloda yer alan bilgileri içeren indirme
mesajlarını giriniz. Her bir mesaj indirme sonrasında sonuç kolonunda yer alan beklenen
12
13
ApplBegSeqNum alanına
0* ve OrderID alanına ilk
girilen emrin numarası (ilk
emirden sonraki tüm yeni
emirlerin, değişikliklerin
gönderilmesi için)
girilerek bir
ApplicationMessageRequ
est emir indirme mesajı
gönderiniz.
BW
ApplBegSeqNum alanına
0* ve TrdMatchID alanına
ilk oluşan işlemin
numarası (ilk işlemden
sonraki tüm işlemlerin
gönderilmesi için)
girilerek bir
ApplicationMessageRequ
est işlem indirme mesajı
gönderiniz.
BW
0*
0*
1
2
20140
92900
00000
0 1
0
Sonuç
TrdMatchID [880]
OrderID [37]
ApplReqType [1347]
ApplReqID [1346]
ApplBegSeqNum
[1182]
MsgType [35]
Senaryo
Sıra No
mesajların alındığını kontrol ediniz.
ER(Order Long)
ER (Order Long)
.
.
ER (Order Short)
ER (Order Short)
.
.
News(EndOfOrder)
ER(Trade)
ER(Trade)
.
.
.
1 News(EndOfTrade)
* Kurumlar “0” değeri yerine ellerindeki en büyük ApplSeqNum değerini girebilirler.
12
TEST SONUCU:
Aracı Kurum Unvanı
Teste Katılan Teknik Yetkili
Teste Katılan Piyasa Yetkilisi
Teste Katılan Borsa Yetkilisi
Genel Değerlendirme
(Bu bölüm Borsa İstanbul A.Ş. yetkilileri
tarafından doldurulacaktır.)
Not: VİOPFIX API Üye Yazılımı Sertifikasyon Programı sürecini başarıyla tamamladığınız takdirde, bu
dokümanının 4. ve 13. sayfalarının ıslak imza ve kaşe, diğer sayfalarının paraf atılarak tarafımıza
iletilmesi beklenmektedir.
13
Download

VİOPFIX API Temel Seviye Sertifikasyon Programı