Download as pdf or txt
Download as pdf or txt
You are on page 1of 9

TP CH KHOA HC V CNG NGH, I HC NNG - S 5(40).

2010

NG DNG TNH TON LI CHO SN GIAO DCH CHNG KHON


GRID COMPUTING APPLICATIONS TO STOCK TRADING FLOORS L Vn Sn
Trng i hc S phm, i hc Nng

Nguyn Thnh Thy


Trng i hc Kinh t, i hc Nng

TM TT Trong nhng nm gn y, tnh ton li c pht trin nh l phng tin hiu qu vi mc chi ph thp, l m hnh tnh ton mi cho my tnh v mng my tnh ni chung. Tnh ton li gii quyt nhng bi ton ln v c d on s l m hnh tnh ton ca tng lai 00. Trong bi bo ny, chng ti nghin cu xut gii php k thut ng dng tnh ton li (Grid computing) vo hot ng ca sn giao dch chng khon nc ta. Trong qu trnh nghin cu, cc tc gi xy dng gii php k thut kh thi, cho php x l cc lnh chng khon trn li tnh ton (Computational grid) hot ng mt cch tin cy. Gii php ny c xy dng trn c s ca m ngun m .NET-Based Alchemi Framework h tr pht trin ng dng li v mt s cng c khc. Gii php c th nghim trn mng LAN v t c nhng kt qu tt. T kha: grid computing, grid services, stock exchange for grid computing, Alchemi Framework. ABSTRACT In recent years, grid computing has developed as a low-cost efficient means and a new computational model for computers and computer networks in general. Grid computing solves complicated problems and can be predicted to be a future computational model 00. In this paper, we study and suggest a technical solution for the application of grid computing to the activities of stock trading floors in our country. In this study, the authors have set up feasible technical solutions that enable the stock matching on the computational grid to work with reliability. This solution is built on the basis of an open source. The NET- Based Alchemi Framework supports the development of grid applications and some other tools. The solution has been tested on the LAN and has achieved good results.

1. t vn Tnh ton li (TTL) cho php chia s, trao i, la chn, tp hp v phn phi ngun lc khng ng nht v mt a l gii quyt cc vn c quy m ln hn trong khoa hc, k thut v thng mi 0. Bn cnh , th trng chng khon (TTCK) l mt knh thu ht v phn phi ti chnh khng th thiu ca mt nn kinh t th trng 0. Ct li ca hot ng trn sn chng khon l tip nhn v x l lnh t mua/bn, nhng lnh pht sinh s c khp mt cch t ng v lin tc. S lng nh u t trn th trng ngy cng tng, s lng giao dch vo nhng gi cao im c th n hng nghn, thi gian cn thit cho mt giao dch i qua cng tng ln v dn n tnh trng qu ti ca ton h thng.
158

TP CH KHOA HC V CNG NGH, I HC NNG - S 5(40).2010

Vy vn t ra ca mt sn giao dch chng khon (GDCK) l phi c kh nng tip nhn ng thi mt s lng ln cc giao dch, thi gian x l mt giao dch phi nh, m bo s gn b d liu gia mng li cc server c phn b ri rc v mt a l, nhm m bo tnh lin tc v kh nng chu li ca ton h thng. Mt phng php c s dng ph bin l tt c c nh tuyn thng qua mt (mt cm) my ch trung tm. H thng ny s lm vic tt vi mt th trng nh hoc chuyn ng chm chp, nhng s nhanh chng b tc nghn khi c hng nghn giao dch c x l. Cch tip cn th trng t do m khng c s gim st trung ng, khng ph thuc vo hiu nng tnh ton ca h thng trung tm, gii php TTL c th l cch tt nht khc phc cc hn ch trn 0. Trong , qun tr d liu cng l mt trong nhng thch thc ln i vi cc sn GDCK. Cng ngh TTL hon ton c th gii quyt thch thc ny vi mt gii php l tng, n cho php TTCK chia s v qun l d liu phn tn vi cc nh u t thng qua m hnh li d liu (Data grid) 0. Bi vit ny, tp trung nghin cu v xut gii php kh thi ng dng cng ngh TTL cho sn GDCK, khc phc tnh trng tc nghn thng xy ra cc sn GDCK. 2. Hot ng giao dch chng khon 2.1. Qui trnh giao dch chng khon

Hnh 1. Qui trnh giao dch chng khon

159

TP CH KHOA HC V CNG NGH, I HC NNG - S 5(40).2010

Qui trnh hot ng ca GDCK 0 c m t trong hnh 1, bao gm:


Bc 1: Nh u t n m ti khon v t lnh mua/bn chng khon ti mt cng ty chng khon1. Bc 2: Cng ty chng khon chuyn lnh cho i din ca cng ty ti s GDCK nhp vo h thng giao dch ca S GDCK. Bc 3: S GDCK thc hin ghp lnh v thng bo kt qu giao dch cho cng ty chng khon. Bc 4: Cng ty chng khon thng bo kt qu giao dch cho nh u t. Bc 5: Nh u t nhn c chng khon (nu l ngi mua) hoc tin (nu l ngi bn) trn ti khon ca mnh ti cng ty chng khon.

2.2. Khp lnh chng khon (Order-matching stock) 2.2.1. Khp lnh lin tc Theo qui trnh GDCK hnh 1, th ton b vic x l khp lnh c din ra ti s GDCK. Theo yu cu v u tin khp lnh lin tc th cc lnh c x l theo quy tc FIFO, nh vy nhng lnh vo sau s phi nm trong hng i h thng cho n khi c x l, thi gian ch ph thuc vo nng lc ca Trung tm x l d liu (TTXLDL) ti s GDCK. Vy nu xy ra tc nghn trong ton h thng th kh nng cao nht l ti TTXLDL giao dch. 2.2.2. Thut ton khp lnh lin tc x l ti TTXLDL ca s GDCK K hiu:
-

Lt : lnh ca nh u t pht sinh ti thi im t (t phn nh th t pht sinh lnh) Lm, Lb: lnh i ng Mua, lnh i ng Bn giat v khoiluongt : gi v khi lng ca lnh Lt Q, M, B: hng i lnh Mi pht sinh, lnh ch Mua v lnh ch Bn T: tp cc lnh khp thnh cng v ch thanh ton b tr Tongdm, Tongdb: tng d mua, tng d bn

Thut ton khp lnh lin tc: Algorithm MATCHING _STOCK(Lt)


Description: Gii thut thc hin khp lnh Lt vi cc lnh mua/bn ang ch khp Input: Output: Method:
1 2 Q = Q { Lt }, Q = Q { Lk }, k =min(i,j), Li, Lj Q v i j if (Lk l lnh Bn) then // Khp gi cho Mua

Lnh giao dch Lt Kt qu khp, Khi lng khp, Tng d mua v Tng d bn

Cng ty mi gii chng khon

160

TP CH KHOA HC V CNG NGH, I HC NNG - S 5(40).2010

3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 else 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34

do

M = M { Lm }, Lm M, vi: giam = max(giau, giav) v giam >= giak Lu, Lv if (Lm = ) then B = B { Lk }, break else if (khoiluongk = khoiluongm) then khoiluongk = khoiluongm = 0 T = T { Lk } { Lm }, break else if (khoiluongk < khoiluongm) then khoiluongm = khoiluongm khoiluongk, khoiluongk = 0 T = T { Lk }, M = M { Lm }, break else khoiluongk = khoiluongk khoiluongm, khoiluongm = 0 T = T { Lm } endif

while (Lm ) // Khp gi cho Bn do B = B { Lb }, Lb B, vi: giab = min(giau, giav) v giab <= giak Lu, Lv B if (Lb = ) then M = M { Lk }, break else if (khoiluongk = khoiluongb) then khoiluongk = khoiluongb = 0 T = T { Lk } { Lb }, break else if (khoiluongk < khoiluongb) then khoiluongb = khoiluongb khoiluongk, khoiluongk = 0 T = T { Lk }, B = B { Lb }, break else khoiluongk = khoiluongk khoiluongm, khoiluongm = 0 T = T { Lb } endif while (Lb )

35 endif Tongdm =

khoiluong

Li M , Tongdb =

khoiluong

Li B

End Algorithm.

Gi n l s lng giao dch ch khp, ta c phc tp ca thut ton l: O(n).


161

TP CH KHOA HC V CNG NGH, I HC NNG - S 5(40).2010

3. M hnh gii php v chng trnh thc nghim da trn Alchemi Framework 3.1. Alchemi Framework Alchemi l mt .NET-based framework cung cp cc gii php xy dng mi trng li v pht trin cc ng dng TTL 0. Alchemi gm c 4 thnh phn chnh: Manager (M), Executor (E), User (U) Custom Grid U Nt User Middleware & Cross-Platform Manager (X). Thnh phn Manager c trin khai my ch trung tm, tip nhn cc yu cu tnh ton t User, t chc lp lch v iu phi cc lung x l n cc nt li (Executor). Thnh phn Executor c trin khai trn cc nt li, c chc nng tip nhn cc lung tnh ton c yu cu t Manager v x l chng.

U M E E E

M E X

Nt Manager Nt Executor Nt Cross Platform Manager

Hnh 2. Cc thnh phn ca Alchemi

Thnh phn User l ni tiu th cc ng dng li ca ngi dng cui, cc yu cu ny s c User gi i v nhn kt qu v t Manager. Thnh phn Cross-Platform Manager cung cp cc dch v kim sot thnh phn Manager thng qua giao din web. 3.2. Gii php ng dng tnh ton li cho sn GDCK 3.2.1. M hnh trin khai li dch v

Hnh 3. Gii php ng dng tnh ton li cho sn GDCK 162

TP CH KHOA HC V CNG NGH, I HC NNG - S 5(40).2010

Thnh phn User s c trin khai trn h thng my ch cc cng ty chng khon, thnh phn Manager c trin khai ti TTXLDL ca S GDCK, thnh phn Excuter thc thi cc ng dng li c trin khai trn mng li cc my tnh cng tc ti nguyn. 3.2.2. Gii php x l lnh trn li tnh ton Theo gii php x l tun t (sequence) truyn thng, khi TTXLDL tip nhn mt lnh, lnh s c chuyn vo hng i x l (job queue) i n lt x l v thanh ton b tr (nu c khp). Theo m phng hnh 5.

Hnh 4. Gii php x l lnh tun t

Gii php ny bc l mt s hn ch ca h thng nh: thi gian ch ca cc lnh vo sau s tng dn ko theo thi gian ch trung bnh ca cc lnh tng ln v t l thun vi s lnh pht sinh, TTXLDL s dn cn kit ti nguyn v c nguy c tc nghn vo gi cao im, khc phc hn ch ny, x l song song kt hp vi kh nng huy ng ngun lc tnh ton a dng ca cng ngh TTL l gii php kh thi.

Hnh 5. Gii php x l lnh song song trn li

Da vo c trng ca quy trnh x l lnh chng khon, chng ta c th phn lung x l lnh theo nhm m chng khon v loi giao dch, cc lnh sau khi
163

TP CH KHOA HC V CNG NGH, I HC NNG - S 5(40).2010

c lp lch s c phn phi n cc nt li x l, vic ny gip ko gim thi gian ch trung bnh ca cc lnh v gim ti a thi gian cht ca cc lnh ch khp, theo m phng hnh 6. 4. Xy dng chng trnh thc nghim 4.1. Kch bn Chng ti xy dng mt li tnh ton gm 1 nt Manager v cm cc nt li Executor. Mt phn h User, cho pht sinh ngu nhin mt s lng ln cc lnh chng khon vi s liu tng ng trong mi trng thc, ln lt trnh cc lnh ny theo th t pht sinh n nt Manager. Nt Manager tip nhn v gi lnh vo li tnh ton thc hin khp. 4.2. Trin khai 4.2.1. Mi trng Mi trng thc nghim gm c 7 PC, trong 1 PC lm nt Manager v 6 PC l cc nt Executor, c kt ni trn m hnh mng LAN. 4.2.2. Phng php Ln lc cho pht sinh ngu nhin: 1000, 2000, 3000, 4000 v 5000 lnh x l trc tip trn server local (khng s dng li) v x l trn dch v li ln lt vi 2, 3, 4, 5 v 6 nt li Executor. Sau tin hnh quan st v nh gi kt qu.
3

Hnh 6. H thng m phng ng dng tnh ton li (1)

4.2.3. Mt s kt qu quan st Phn h trn nt Manager hnh 7, c chc nng gim st tnh trng ca cc lnh pht sinh (1); chc nng gim st thng tin khp lnh trn sn (2); chc nng gim st nht k hot ng ca sn (3). Giao din trn hnh 8, c chc nng phn tch s liu
164

TP CH KHOA HC V CNG NGH, I HC NNG - S 5(40).2010

tng trng chng khon bng biu k thut (4), chc nng gim st trng thi ca cc nt Execute trn li (5), chc nng gim st cc lung cng vic c phn b trn li (6). 5 4

Hnh 7. H thng m phng ng dng tnh ton li (2)

4.3. Phn tch kt qu thc nghim Kt qu thc nghim c biu din trong biu hnh 9, phn nh mi tng quan gia s lng lnh pht sinh v thi gian x l (c tnh trn n v thi gian l giy) vi s lng nt li c huy ng x l trong li tnh ton.

Hnh 8. Biu tng quan gia thi gian x l v s nt li

Qua biu cho thy, thi gian x l ca h thng khng s dng li (ct th nht trong mi nhm) tng dn theo s lng lnh pht sinh. Thi gian trung bnh x l lnh cng tng dn, nng lc x l ca h thng gim dn. Ta thy xut hin tnh trng qu ti ca h thng khi s lng giao dch tng ln. Khi s dng li tnh ton x l, thi gian x l ca h thng gim ko theo thi gian trung bnh x l lnh gim r rt, du hiu qu ti cha thy xut hin trong h thng. Tuy nhin, khi huy ng cng nhiu nt li trong li tnh ton th mc ci thin v thi gian x l vn khng ng k, nguyn nhn y l do chi ph ng truyn, chi ph x l cc nghip v phn lung v lp lch, ca nt Manager cng s tng khi c thm nhiu nt li trong li tnh ton.
165

TP CH KHOA HC V CNG NGH, I HC NNG - S 5(40).2010

5. Kt lun Thng qua bi bo ny, cc tc gi xut mt gii php k thut kh thi ng dng TTL cho sn GDCK, tng kh nng x l lnh giao dch ph hp vi hon cnh ca nc ta. Gii php c trin khai thc nghim v cho kt qu kh quan, hiu sut v tnh n nh ca h thng c ci thin ng k so vi gii php truyn thng. Kt qu thc nghim cho thy, li tnh ton tng ng k tc x l ca TTXLDL giao dch, thi gian x l trung bnh cho mt lnh cng gim r rt. Tuy nhin, ty nhu cu thc t m huy ng s nt li vo li tnh ton cho ph hp, nhm khai thc ti u hiu nng tnh ton v gim chi ph trung gian ca h thng. Trong mi trng thc li tnh ton cn ph thuc nhiu vo h tng mng, tc v tnh n nh ca mi trng truyn thng. Trong phm vi nghin cu, chng ti ch mi cp n gii php li tnh ton trong x l giao dch. Li tnh ton cung cp cc dch v ring bit, hot ng c lp nhng ch khi kt hp vi li d liu th li tnh ton mi pht huy ht sc mnh ca mnh. Bn cnh nhng kt qu t c, bi bo vn cn mt s vn cn phi tip tc nghin cu pht trin nh:
Pht trin li d liu cho sn GDCK, nhm tng kh nng lin kt v qun l d liu hiu qu ca dch v li Tnh ton nhu cu ti nguyn ca TTXLDL mi thi im m bo s huy ng ti u cc nt li Kh nng khai thc ngun lc tnh ton t chnh PC ca cc nh u t s dng truy cp dch v cng l mt hng pht trin, nhm huy ng ti a ngun lc tnh ton v gii quyt th b tc v nng lc tnh ton ca cc gii php truyn thng khi s lng truy cp dch v tng ln.

TI LIU THAM KHO [1]. Nguyn Vn Hn (2009), Gio trnh Th trng v cc nh ch ti chnh, trng i hc Kinh t - i hc Nng. [2]. Cisco Systems, Inc. (2008), Trading Floor Architecture. [3]. Krishna Nadiminti, Akshay Luther, Rajkumar Buyya. Alchemi: A .NET-based Enterprise Grid System and Framework. [4]. Rajkumar Buyya and Srikumar Venugopal. The Gridbus Toolkit for Service Oriented Grid and Utility Computing: An Overview and Status Report. [5]. Stock Market Data Grid. http://www.articlesbase.com/finance-articles/stockmarket-data-grid-a-tool-which-promotes-efficiency-545619.html#ixzz0luG59Nqn, Truy cp 24/4/2010. [6]. Stock exchange for grid computing. http://www.physorg.com/news123167512.html. Truy cp 24/4/2010.
166

You might also like