Saturs[Paslēpt][Rādīt]
Nozare, kas ļoti interesē darba meklētājus, ir valūtas tirdzniecība. Programmatūras uzņēmumi saņem pieprasījumus no tirgotājiem visā pasaulē, lai nodrošinātu tirdzniecības platformu, kas var ātri un efektīvi novērtēt datus par valūtu pāriem.
Tirdzniecības platforma ir programmatūras programma, ko tirgotājiem un investoriem nodrošina noteiktas finanšu organizācijas, piemēram, bankas un brokeri.
Tirdzniecības platformas būtībā ļauj investoriem un tirgotājiem veikt darījumus un sekot līdzi saviem kontiem. Citas funkcijas, kas palīdz ieguldītājiem pieņemt lēmumus par ieguldījumiem, bieži tiek iekļautas tirdzniecības sistēmās.
Reāllaika citāti, interaktīvas diagrammas, dažādi grafiku veidošanas rīki, tiešraides ziņu plūsmas un augstākās kvalitātes izpēte ir daži šo iespēju piemēri.
Platformas var būt izstrādātas arī noteiktiem tirgiem, piemēram, akciju, valūtu, opciju vai nākotnes līgumu tirgiem.
Vairāk nekā desmit gadus automatizētas tirdzniecības sistēmas, kas pazīstamas arī kā Algoritmiskās tirdzniecības, ir ieņēmuši tirdzniecības nozares centru.
“Tirdzniecības sistēma”, ko dažkārt dēvē par “tirdzniecības stratēģiju”, nav nekas vairāk kā noteikumu kopums, kas tiek piemērots ievades datiem, lai nodrošinātu pirkšanas/pārdošanas ienākšanas un izejas signālus. Neskatoties uz to, ka tirdzniecības stratēģijas izveide var šķist vienkārša, tā nav!
Kvantitatīvās tirdzniecības stratēģijas prāti algoritmiskās tirdzniecības jomā tiek saukti par "kvantiem", jo labas tirdzniecības stratēģijas izstrādei ir nepieciešams plašs kvantitatīvs pētījums.
Pēdējo desmit gadu laikā automatizēto tirdzniecības sistēmu fundamentālais dizains ir piedzīvojis būtiskas izmaiņas un joprojām mainās.
Algoritmiskās tirdzniecības nozare ir kļuvusi par datoru un tīklu tehnoloģiju attīstības perēkli, jo uzņēmumiem, jo īpaši tiem, kas izmanto augstfrekvences tirdzniecības sistēmas, ir nepieciešams ieviest jauninājumus tehnoloģiju jomā, lai konkurētu algoritmiskās tirdzniecības pasaulē.
Mēs apspriedīsim tirdzniecības platformu sistēmas projektēšana šajā rakstā. Galvenās tirdzniecības platformas specifikācijas ietver tās arhitektūru, protokolus un instrukcijas savas automatizētās tirdzniecības sistēmas izveidei.
Automatizētās tirdzniecības programmatūras prasības pamata līmenī
Labākais risinājums ir tas, kas pilnībā atbilst programmatūras prasībām. Galvenās automatizētās tirdzniecības programmatūras specifikācijas ir:
- Mērogojamība (sistēmas spēja apstrādāt pieaugošu pieprasījumu apjomu un darba slodzi);
- Daudzapstrāde un lieliska veiktspēja;
- Drošība un drošība (kā tā reaģē uz pārkāpumiem vai uzbrukumiem, kas notiek pēkšņi, un aizsargā pret nelikumīgu iekļūšanu);
- Sadarbspēja (sistēmas spēja mijiedarboties ar citām sistēmām);
- Uzticamība (kā tas novērš kļūmes un darbojas, neskatoties uz problēmām).
Algoritmiskās tirdzniecības sistēmas prasa ārkārtīgi kvalificētu darbaspēku un rūpīgu uzmanību. Sistēmas funkcionālās prasības ir vieglāk izprast, ja ir skaidras nefunkcionālās prasības. Tie kalpo kā vadošie standarti programmatūras izstrādes komandām, lai noteiktu un definētu produkta kvalitāti.
Tirdzniecības platformas funkcionālās īpašības ietver
Veiksmīgs dažādu maksājumu metožu atbalsts, droši mākoņa mitināšanas pakalpojumi, jaudīgi datu analīzes rīki, riska pārvaldība, precīzi citāti un atbilstoši diagrammu veidi ir svarīgas funkcionālās vajadzības.
Tālāk ir minēti daži automatizēto tirdzniecības platformu galvenie atribūti, kuriem visi tirgotāji pievērš īpašu uzmanību:
Informācijas panelis, kurā tiek rādīti statistikas dati
Lai veiktu reāllaika un vienlaicīgu valūtu kursu pārbaudi vairākās laika joslās, platformai ir jāpalaiž nepārtraukti atjauninājumi, jāapstrādā dati no daudzām diagrammām un jādarbojas cenu lapās.
Autentifikācija
Ātrā, bet uzticamā verifikācijas metode vispirms rada priekšstatu par drošu platformu un elitāru inženiertehnisko darbu.
Tirdzniecības programmatūra var atbalstīt piekļuvi no vairākiem kontiem, līdzīgi kā atvērtā koda tirdzniecības platformas ar divu faktoru autentifikāciju (piemēram, izmantojot SMS vai Google Authenticator), taču jums var būt arī sistēma ar iespējotu piekļuvi, izmantojot e-pastu, tālruņa numuru vai citu veidi tikai nelielai tirgotāju grupai.
Barotne
Pirms jebkādu finanšu lēmumu pieņemšanas ir svarīgi veikt savu izpēti. Lai novērstu neziņas radītās kļūdas, tirgotāji var gūt labumu no ērtām ziņām, atbilstošiem pārskatiem un ieskatiem pasaules valūtu tirgos, un tas viss ir uzreiz pieejams viņu tirdzniecības platformās.
Ērta funkcionalitāte administratoriem un lietotājiem
Šādā sistēmā būtiska ir spēja ātri pārvaldīt visu ar vienu klikšķi. Tas ietver darījumu pārvaldību, neapstiprinātus un iesniegtus pasūtījumus, personīgos kontus, pasūtījuma progresa norādes un klientu pieprasījumus.
Tas ļauj pieņemt lēmumus pēc iespējas īsākā laikā un garantē nepārtrauktu piekļuvi svarīgai informācijai.
Push paziņojumu izmantošana
Lietotāji paredz, ka tirdzniecības platformas būs pieejamas visu diennakti un tiks informētas par drošības problēmām vai jaunākajām izmaiņām.
Jūs varat būt informēts ar pielāgojamiem paziņojumiem, jo tirdzniecības platforma seko ekonomiskiem notikumiem, cenu svārstībām, tirgus attīstībai, tehniskajiem rādītājiem utt., kā arī nosūta atjauninājumus par jūsu akciju pozīciju.
Skaidras naudas izņemšana un maksājumi
Šī funkcija ir nepieciešama, lai veiktu tirdzniecības darbības, izsekotu skaidras naudas kustībai un ātri un droši izņemtu naudu no sava personīgā konta, izmantojot kredītkarti, PayPal vai vienkāršu bankas pārskaitījumu.
Kad jūsu izņemšanas pieprasījuma apstrāde būs pabeigta, jūs saņemsit paziņojumu.
Automatizētās tirdzniecības sistēmas arhitektūra
Programma, kas veic lēmumu pieņemšanas loģiku automatizētajā tirdzniecības platformā, kas pazīstama arī kā "Complex Event Processing" jeb CEP, būs servera lietojumprogrammā.
Lietojumprogrammas slānis būtībā ir a lietotāja interfeiss par parametru novērošanu un piegādi CEP. Lai gan lietojumprogrammas slānis galvenokārt ir skats, dažas riska pārbaudes (kas tagad ir kļuvušas par resursu izsalkušām darbībām mēroga problēmas dēļ) var tikt pārsūtītas uz lietojumprogrammas slāni, jo īpaši tās, kas saistītas ar lietotāja ievades saprātīgumu, piemēram, resnā pirksta kļūdas.
Intriģējošu situāciju rada mērogojamības problēma automatizētā tirdzniecības sistēmā.
Iedomāsimies, ka vienotā tirgus datu notikumu apstrādā 100 atsevišķas loģikas (kā aprakstīts iepriekšējā piemērā). Lielākajai daļai no 100 loģikas vienībām, teiksim, opciju grieķu aprēķins, varētu būt kopīgi veicamo sarežģītu aprēķinu komponenti.
Identiskus precīzus aprēķinus veiktu katra vienība, ja katra loģika darbotos neatkarīgi, tādējādi izniekojot apstrādes resursus.
Sarežģītie liekie aprēķini bieži tiek sadalīti dažādos aprēķinu dzinējos, kas nodrošina grieķus kā ievadi CEP automatizētajā tirdzniecības sistēmā, lai palielinātu aprēķinu dublēšanu.
Pašlaik atsevišķa riska pārvaldības sistēma (RMS) Pasūtījumu pārvaldniekā (OM) veic atlikušos riska novērtējumus automatizētā tirdzniecības sistēmā neilgi pirms pasūtījuma izdošanas.
Tā kā riska pārvaldībai visās loģiskajās vienībās/stratēģijās ir tikai viena RMS sistēma, iepriekš savu risku kontrolēja 100 atsevišķi tirgotāji. Tas ir saistīts ar mēroga problēmu.
Tomēr daži riska novērtējumi var attiekties tikai uz konkrētām stratēģijām, savukārt citi var būt jāveic visās metodēs.
Līdz ar to pati RMS sastāv no globālās RMS (GRMS) un stratēģijas līmeņa RMS (SLRMS). SLRMS un GRMS var redzēt arī, izmantojot lietotāja interfeisu (UI).
Tagad pievērsīsimies servera komponentiem.
Tirgus adapteris
Exchange vai jebkurš cits tirgus datu sniedzējs pārsūta datus tā formātā. Šo valodu jūsu algoritmiskā tirdzniecības sistēma var saprast vai arī nesaprast.
Exchange sniedz jums piekļuvi API (Application Design Interface), ko varat izmantot, lai programmētu un izveidotu savu adapteri, lai pārveidotu datu formātu formātā, ko var uztvert jūsu sistēma.
Sarežģīts notikumu apstrādes dzinējs
Jūsu pieejas smadzenes atrodas šajā sadaļā. Kad dati ir iegūti, tie jāizmanto saskaņā ar savu plānu, kas paredz veikt dažādus statistikas aprēķinus, veikt salīdzinājumus ar pagātnes datiem un pieņemt lēmumus, kas novedīs pie pasūtījumu izveides.
Šis bloks ir izveidots, izmantojot pasūtījuma veidu un pasūtījuma summu. Vienkārši sakot, sarežģīts notikums ir ienākošo notikumu kopums. Tie sastāv no ziņām, tirgus kustībām, akciju tirgus tendencēm utt.
Ātra skaitļošanas operāciju pabeigšana sarežģītos notikumos tiek dēvēta par sarežģītu notikumu apstrādi. Automatizētas tirdzniecības sistēmas darbības var ietvert sarežģītu modeļu noteikšanu, korelāciju izveidi un tādu saikņu kā cēloņsakarības un laika nodibināšanu starp jebkuru ienākošo informāciju.
Pasūtījumu maršrutēšanas sistēma
Izmantojot biržas dotos API, pasūtījums tiek šifrēts valodā, ko birža var saprast. Apmaiņa piedāvā vietējās API un FIX API — divus dažādus API veidus.
Vietējās API ir īpaši izstrādātas konkrētai apmaiņai. Vairākas biržas izmanto vadlīniju kopu, kas pazīstama kā FIX (finanšu informācijas apmaiņas) protokols, lai atvieglotu un uzlabotu datu plūsmu drošības tirgos.
Pēc šīs daļas mēs vairāk paskaidrosim par FIX. Ja ekonomika ir atvērta, cilvēki, izmantojot automatizētu tirdzniecības sistēmu, var iesniegt pasūtījumus biržās vai ārpus biržām, un ORP jāspēj apstrādāt pasūtījumus daudzos virzienos.
Šeit mēs vēlamies uzsvērt, ka pasūtījuma signālu var veikt manuāli vai automātiski. Pēdējā sadaļa ir tā, ko mēs dēvējam par "automatizētu tirdzniecības sistēmu".
Pasūtījumu pārvaldnieka modulis ietver vairākas izpildes metodes, kas izpilda pirkšanas/pārdošanas rīkojumus saskaņā ar iepriekš noteiktu loģiku.
Risku vadība
Tā kā automatizētās tirdzniecības sistēmas darbojas bez cilvēka līdzdalības, ir nepieciešama stingra riska analīze, lai nodrošinātu, ka tirdzniecības sistēmas darbojas, kā paredzēts.
Slikta riska pārvaldība vai riska pārbaužu trūkums kvantitatīvā uzņēmumā var radīt ievērojamus neatgūstamus zaudējumus. Tā rezultātā jebkurai automatizētai tirdzniecības sistēmai ir jābūt riska pārvaldības sistēmai (RMS).
Protokolu izstrāde automatizētām tirdzniecības sistēmām
Lai izveidotu savienojumu ar vairākiem galamērķiem no viena servera, kas bija iespējams, pateicoties arhitektūras spējai mērogot līdz daudzām stratēģijām katram serverim.
Lai pārsūtītu pasūtījumus uz vairākiem galamērķiem un saņemtu datus no daudzām apmaiņām, pasūtījumu pārvaldnieks izvietoja vairākus adapterus.
Katra adaptera uzdevums ir kalpot par tulku starp sistēmas iekšējo sakaru protokolu un protokolu, ko apmaiņa saprot. Tādējādi vairākām apmaiņām būtu nepieciešami vairāki adapteri.
Tā kā katrai biržai ir protokols, kas pielāgots tās piedāvātajām iespējām, ir jāizveido jauns adapteris un tas jāpievieno arhitektūrai, lai automatizētajai tirdzniecības sistēmai pievienotu jaunu biržu.
Ir izstrādāti standarta protokoli, lai novērstu šīs galvassāpes, kas saistītas ar adaptera ievietošanu. FIX protokols ir vispazīstamākais no tiem.
Laiks, kas nepieciešams, lai izveidotu savienojumu ar jaunu galamērķi, ir ievērojami saīsināts, kas ne tikai ļauj pārvaldīt savienojumu ar vairākiem galamērķiem ceļā.
Pateicoties kopējiem protokoliem, automatizētā tirdzniecības sistēma var viegli mijiedarboties ar citiem piegādātājiem, lai veiktu analīzi vai tirgus datu plūsmas.
Rezultātā tirgus kļūst ārkārtīgi efektīvs, jo vairs nav ierobežojumu attiecībā uz integrāciju ar jaunu atrašanās vietu vai pārdevēju.
Turklāt simulācija ir ļoti vienkārša, jo viss, kas nepieciešams, lai izveidotu savienojumu ar simulatoru, izmantojot FIX protokolu, ir izdot pasūtījumus un saņemt datus no reālā tirgus.
Pats simulators var tikt izveidots iekšēji vai iegādāties no cita avota. Līdzīgi kā tiešajiem tirgus datiem, ierakstītās datu kopas var arī atskaņot, pateicoties adapteriem, kas ir neatkarīgi no datu avota.
Jaunās zema latentuma arhitektūras
Stratēģijas tagad var novērtēt milzīgus datu apjomus reāllaikā un veikt ātru tirdzniecības izvēli, pateicoties automatizētas tirdzniecības sistēmas pamatelementiem.
Nozares standarta sakaru protokolu, piemēram, FIX, izstrādes rezultātā tagad ir vieglāk izveidot algoritmiskās tirdzniecības galdu vai automatizētu tirdzniecības sistēmu, kas ir palielinājusi konkurenci algoritmiskās tirdzniecības tirgū.
Uzsvars tika likts uz lēmumu pieņemšanas latentuma samazināšanu, jo serveri ieguva vairāk atmiņas un ātrāku pulksteņa ātrumu.
Latenta samazināšana laika gaitā ir bijusi nepieciešama dažādu iemeslu dēļ, tostarp:
- Tehnikai ir jēga tikai zema latentuma vidē.
- Konkurence jūs izslēdz, ja neesat pietiekami ātrs, lai izdzīvotu spēcīgākajā spēlē
Izvietošana ir kļuvusi par absolūtu nepieciešamību automatizētā tirdzniecības sistēmā jebkurai augstas frekvences metodei, kas saistīta ar vienu galamērķi.
Taču vairāku galamērķu sistēmām ir nepieciešama rūpīga sagatavošanās. Pirms šādas izvēles veikšanas ir jāņem vērā tādi mainīgie lielumi kā galamērķa pasūtījuma atbildes laiks un to salīdzinājums ar ping starp diviem galamērķiem.
Lai samazinātu automatizētās tirdzniecības sistēmas kopējo latentumu, tīkla latentums parasti ir pirmais, kas jārisina. Taču arhitektūru var uzlabot arī daudzos citos veidos.
Tīkla apstrādes latentums
Tīkla apstrādes latentums ir kavēšanās, ko ievieš maršrutētāji, slēdži utt. Apiņu skaits, kas nepieciešams, lai pakete pārvietotos no punkta A uz punktu B, būtu nākamais optimizācijas līmenis automatizētās tirdzniecības sistēmas dizainā.
Pārlēciens tiek aprakstīts kā ceļa posms starp paketes avotu un galamērķi, kur tā netiek tranzīta caur fizisku ierīci, piemēram, maršrutētāju vai slēdzi.
Tas, ko mēs dēvējam par mikrouzliesmojumu, var ietekmēt arī tīkla darbību latentumu.
Strauju datu pārraides ātruma pieaugumu, kas var ietekmēt vidējo datu pārraides ātrumu vai neietekmēt, sauc par mikrouzliesmojumu.
Tā kā automatizētās tirdzniecības sistēmas ir balstītas uz noteikumiem, tās visas vienādi reaģēs uz vienu un to pašu notikumu. Datu pārsūtīšanas mikrouzliesmojums starp dalībniekiem un galamērķi var rasties, ja vairākas iesaistītās sistēmas vienlaikus nosūta komandas.
Lietojumprogrammas latentums
Automatizētās tirdzniecības sistēmas lietojumprogrammas latentums ir laika rādītājs, kas nepieciešams pieteikuma apstrādei. Tas ir atkarīgs no pakešu skaita, lietojumprogrammas loģikai veltītās apstrādes, izmantotā aprēķina sarežģītības, programmēšanas efektivitātes utt.
Sistēmai parasti būs mazāka lietojumprogrammu aizkave, jo palielinās procesoru skaits. Tas pats attiecas uz augstākām pulksteņa frekvencēm.
Daudzas automatizētas tirdzniecības sistēmas gūst labumu no CPU kodolu piešķiršanas kritiskajām programmas daļām, piemēram, stratēģijas loģikai. Šādi rīkojoties, procedūra nepievieno aizkavi, kas rodas, pārslēdzot kodolus.
Līdzīgi tam, ja automatizētas tirdzniecības sistēmas pieeja tiktu ieprogrammēta, ņemot vērā kešatmiņas izmērus un atmiņas piekļuves tuvumu, būtu vairāki atmiņas kešatmiņas trāpījumi, vēl vairāk samazinot latentumu.
Daudzas sistēmas to dara, optimizējot kodu konkrētajai procesora arhitektūrai, kas tiek darīts, izmantojot ļoti zema līmeņa programmēšanas valodas.
Izmantojot pilnībā programmējamus vārtu masīvus, daži uzņēmumi ir pat tikuši līdz sarežģītu aprēķinu ierakstīšanai aparatūrā (FPGA).
Testēšana
Testēšanu, kas ir programmatūras lietojumprogrammu trūkumu noteikšanas darbība, nav iespējams novērtēt par zemu, jo īpaši Fintech. Finansiālu zaudējumu iespējamības dēļ finanšu tehnoloģija nevar atļauties būt ar trūkumiem.
Jo vairāk defektu kvalitātes nodrošināšanas inženieri var noteikt, jo lielāka iespēja, ka gatavais produkts darbosies pareizi. Atkarībā no uzņēmuma, kas izstrādā tirdzniecības platformu, vai klienta vajadzībām, testēšanas procesa struktūra ietver:
Funkcionālās testēšanas pamats ir ievades radīšana un rezultātu analīze. Izmantojot viltotas kartes, tiek veiktas finanšu lietojumprogrammu pārbaudes lietas. Šo karšu mērķis ir uzlabot maksājumu uzticamību, efektivitāti un precizitāti.
Sistēmas ātruma, mērogojamības un stabilitātes noteikšana tiek veikta, veicot veiktspējas testēšanu. Lietojumprogrammas ātrums tiek novērtēts, lai saprastu, cik ātri tā reaģē, un tās mērogojamība norāda, cik lietotāju tā var vienlaikus atbalstīt bez avārijām.
Turklāt stabilitāte parāda, vai lietojumprogramma darbojas pareizi pie dažādām slodzēm un vai ir iespējami trūkumi.
Pilnībā automatizētas tirdzniecības sistēmas izveide var būt ārpus viena mazumtirgotāja iespējām. Automatizētās tirdzniecības sistēmas, kas tiek piedāvātas tirgos uz abonēšanas pamata, ir iespēja tirgotājiem, kuri vēlas izpētīt tirdzniecības algoritmisko tehniku.
Izveidojiet savas autonomās tirdzniecības sistēmas
Iesācēji tirgotāji var izstrādāt paši savas algoritmiskās tirdzniecības metodes un iesaistīties veiksmīgā tirgus tirdzniecībā. Lai izveidotu algoritmiskās tirdzniecības stratēģiju, var izmantot tālāk norādītos posmus.
- Izmantojot savu iztēli vai metodi, izveidojiet tirdzniecības koncepciju, kas, jūsuprāt, būtu veiksmīga aktīvos tirgos. Koncepciju var iegūt no jūsu pašu tirgus novērojumiem, tirdzniecības grāmatām, akadēmiskiem dokumentiem, tirdzniecības emuāriem, tirdzniecības forumiem vai jebkura cita avota.
- Apkopojiet nepieciešamo informāciju – lai pārbaudītu savu hipotēzi, jums būs nepieciešami vēsturiskie dati. Šī informācija ir pieejama no maksas datu piegādātājiem vai vietnēm, piemēram, Google finanses.
- Plāna rakstīšanai ir jāizmanto tādi rīki kā Excel, Python vai R programmēšana. Kad esat ieguvis datus, varat sākt kodēt savu pieeju.
- Tirdzniecības koncepcijas pārbaudi, salīdzinot ar vēsturiskajiem datiem, pēc tam, kad tā ir kodēta, sauc par jūsu pieejas atpakaļpārbaudi. Atpakaļpārbaude ietver ievades optimizāciju, peļņas mērķu un zaudējumu apturēšanas rīkojumu noteikšanu, pozīcijas lielumu un citus saistītos uzdevumus.
- Papīra tirdzniecība jūsu stratēģija – pēc atpakaļpārbaudes posma jūsu stratēģija ir nepieciešama papīra tirdzniecība. Tas ietvertu jūsu plāna pārbaudi, izmantojot tirgu simulējošu simulatoru. Papīra tirdzniecības metodei ir brokeri, kas nodrošina algoritmisku tirdzniecības platformu.
- Ja jūsu pieeja ir ienesīga pēc papīra tirdzniecības, varat to īstenot reālās situācijās. Jūs varat izveidot tirdzniecības kontu pie uzticama brokera, kurš piedāvā algoritmisku tirdzniecību.
Ar katru gadu kļūst arvien vairāk biržu, kas atļauj algoritmisku tirdzniecību gan profesionāliem, gan mazumtirgotājiem, un arvien vairāk tirgotāju izmanto algoritmisko tirdzniecību.
Secinājumi
Šis bija pamatīgs raksts par automatizētās tirdzniecības sistēmas arhitektūru, par kuru mēs esam pārliecināti, ka tas sniedza ļoti saprātīgu izpratni par iesaistītajām sastāvdaļām, kā arī daudzajiem šķēršļiem, ar kuriem arhitektūras izstrādātājiem ir jārīkojas/jāpārvar, lai izveidotu spēcīgu automatizētu tirdzniecības sistēmu.
Es darīju visu iespējamo, lai sniegtu jums pārskatu par automātisko tirdzniecības sistēmu, taču zem pārsega notiek daudz vairāk. Es ceru, ka šis materiāls jums būs noderīgs un izmantosiet to lietderīgi.
Atstāj atbildi