INHOUDSOPGAWE[Versteek][Wys]
'n Bedryf wat diegene wat werk soek baie interesseer, is valutahandel. Sagteware-ondernemings ontvang versoeke van handelaars wêreldwyd om 'n handelsplatform te verskaf wat data oor geldeenheidparings vinnig en doeltreffend kan evalueer.
'n Handelsplatform is 'n sagtewareprogram wat deur sekere finansiële organisasies, soos banke en makelaars aan handelaars en beleggers verskaf word.
Met handelsplatforms kan beleggers en handelaars in wese transaksies plaas en hul rekeninge dophou. Ander funksies wat beleggers help om beleggingsbesluite te neem, word gereeld by handelstelsels ingesluit.
Intydse kwotasies, interaktiewe kaarte, 'n verskeidenheid grafiekinstrumente, lewendige nuusfeeds en premium navorsing is 'n paar voorbeelde van hierdie vermoëns.
Platforms kan ook ontwerp word vir sekere markte, soos dié vir aandele, geldeenhede, opsies of termynkontrakte.
Vir meer as 'n dekade, outomatiese handel stelsels, ook bekend as algoritmiese handel, het die middelste stadium van die handelsbedryf beset.
'n "Handelstelsel", soms bekend as 'n "handelstrategie", is niks meer as 'n versameling reëls wat op die insetdata toegepas word om koop/verkoop-intree- en uitgangseine te verskaf nie. Ten spyte van die feit dat die skep van 'n handelstrategie eenvoudig kan lyk, is dit nie!
Die gedagtes agter 'n kwantitatiewe handelstrategie word na verwys as "Quants" op die gebied van algoritmiese handel aangesien die ontwikkeling van 'n goeie handelstrategie uitgebreide kwantitatiewe studie noodsaak.
Die fundamentele ontwerp van outomatiese handelstelsels het die afgelope tien jaar aansienlike veranderinge ondergaan en is steeds besig om te verander.
Die algoritmiese handelsbedryf het 'n broeikas geword vir ontwikkelings in rekenaar- en netwerktegnologieë omdat dit nodig geword het vir besighede, veral dié wat hoëfrekwensie-handelstelsels gebruik, om op tegnologie te innoveer om in die wêreld van algoritmiese handel mee te ding.
Ons sal die verhandelingsplatform se bespreek stelsel ontwerp in hierdie artikel. Die fundamentele spesifikasies vir 'n handelsplatform sluit in sy argitektuur, protokolle en instruksies vir die skep van jou eie outomatiese handelstelsel.
Outomatiese handel sagteware vereistes op 'n basiese vlak
Die beste oplossing is die een wat heeltemal aan sagtewarevereistes voldoen. Die belangrikste spesifikasies van outomatiese handelssagteware is:
- Skaalbaarheid (die stelsel se vermoë om 'n stygende volume versoeke en werklading te hanteer);
- Multiverwerking en uitstekende werkverrigting;
- Veiligheid en sekuriteit (hoe dit reageer op oortredings of aanrandings wat skielik kom en teen onwettige toegang waak);
- Interoperabiliteit (die vermoë van 'n stelsel om met ander stelsels te kommunikeer);
- Betroubaarheid (hoe dit mislukkings oplos en loop ten spyte van probleme).
Algoritmiese handelstelsels vereis uiters bekwame arbeid en noukeurige aandag. Dit is makliker om die stelsel se funksionele vereistes te begryp wanneer daar duidelike nie-funksionele vereistes is. Dit dien as beheerstandaarde vir sagteware-ontwikkelingspanne om 'n produk se kwaliteit vas te stel en te definieer.
Die handelsplatform se funksionele kenmerke sluit in
Die suksesvolle ondersteuning van verskeie betaalmetodes, veilige wolkgasheerdienste, kragtige data-analise-instrumente, risikobestuur, presiese kwotasies en toepaslike grafieksoorte is almal belangrike funksionele behoeftes.
Die volgende is 'n paar fundamentele eienskappe van outomatiese handelsplatforms waaraan alle handelaars aandag gee:
Dashboard wat statistieke data vertoon
Vir die doel om 'n intydse, gelyktydige ondersoek van wisselkoerse oor verskeie tydsones uit te voer, moet die platform deurlopende opdaterings uitvoer, data vanaf baie kaarte bedryf en prysblaaie bedryf.
Verifikasie
Die vinnige maar betroubare verifikasiemetode skep eers die beeld van 'n veilige platform en elite-ingenieurspoging.
Handelssagteware kan toegang vanaf verskeie rekeninge ondersteun, soortgelyk aan oopbron-handelsplatforms met tweefaktor-verifikasie (met byvoorbeeld SMS of Google Authenticator), maar jy kan ook 'n stelsel hê met toegang geaktiveer via e-pos, telefoonnommer of ander maniere vir net 'n klein groepie handelaars.
nuusvoer
Voordat jy enige finansiële besluite neem, is dit van kritieke belang om jou navorsing te doen. Om foute te voorkom wat deur onkunde veroorsaak word, kan handelaars voordeel trek uit gerieflike nuus, pertinente oorsigte en insigte in die wêreld se valutamarkte, wat almal onmiddellik op hul handelsplatforms beskikbaar is.
Funksionaliteit vir administrateurs en gebruikers wat gerieflik is
In so 'n stelsel is die vermoë om alles vinnig met 'n enkele klik te bestuur noodsaaklik. Dit sluit die bestuur van transaksies, hangende en ingediende bestellings, persoonlike rekeninge, bestellingsvordering-aanduiding en kliëntversoeke in.
Dit maak besluitneming in die kortste tyd moontlik en waarborg deurlopende toegang tot belangrike inligting.
Gebruik stootkennisgewings
Gebruikers verwag dat handelsplatforms XNUMX uur per dag toeganklik sal wees en ingelig sal word van enige sekuriteitskwessies of oor die mees onlangse veranderinge.
U kan op hoogte bly met aanpasbare kennisgewings, aangesien die handelsplatform ekonomiese gebeure, prysskommelinge, markontwikkeling, tegniese aanwysers, ens. dophou, en opdaterings oor u voorraadposisie stuur.
Kontant-uitbetalings en betalings
Hierdie funksie is nodig om handelsaktiwiteite te onderneem, die beweging van kontant na te spoor en geld vinnig en veilig uit jou persoonlike rekening te onttrek deur 'n kredietkaart, PayPal of 'n eenvoudige bankoorplasing te gebruik.
Wanneer jou onttrekkingsversoek klaar verwerk is, sal jy in kennis gestel word.
Die argitektuur van die outomatiese handelstelsel
Die enjin wat die logika van besluitneming in die outomatiese handelsplatform uitvoer, ook bekend as die 'Complex Event Processing'-enjin, of CEP, sal binne die toepassing op die bediener wees.
Die toepassingslaag is in wese 'n gebruikerskoppelvlak vir die waarneming en verskaffing van parameters aan die CEP. Alhoewel die toepassingslaag hoofsaaklik 'n aansig is, kan sommige risikokontroles (wat nou hulpbronhonger bedrywighede geword het as gevolg van die probleem van skaal) na die toepassingslaag afgelaai word, veral dié wat die gesonde verstand van gebruikersinsette behels, soos vetvingerfoute.
'n Intrige situasie is die gevolg van die skaalbaarheidskwessie in 'n outomatiese handelstelsel.
Kom ons stel ons voor dat 'n enkele markdatagebeurtenis deur 100 afsonderlike logika verwerk word (soos bespreek in die vorige voorbeeld). Vir die meerderheid van die 100 logiese eenhede, kom ons sê die berekening van Grieke vir opsies, kan daar algemene komponente van komplekse berekeninge wees wat uitgevoer moet word.
Die identiese presiese berekening sal deur elke eenheid uitgevoer word indien elke logika onafhanklik sou funksioneer, wat verwerkingshulpbronne sou mors.
Komplekse oortollige berekeninge word gereeld verdeel in verskillende berekeningsenjins wat die Grieke lewer as 'n inset vir die CEP in die outomatiese handelstelsel om berekeningsoortolligheid te maksimeer.
Tans voer 'n aparte risikobestuurstelsel (RMS) binne die Order Manager (OM) die oorblywende risikobeoordelings in 'n outomatiese handelstelsel uit kort voor die vrystelling van 'n bestelling.
Aangesien daar slegs een RMS-stelsel is om risiko oor alle logiese eenhede/strategieë te bestuur, het 100 afsonderlike handelaars voorheen hul risiko beheer. Dit is as gevolg van die skaalprobleem.
Sekere risikobeoordelings kan egter eksklusief wees vir spesifieke strategieë, terwyl ander moontlik oor alle metodes uitgevoer moet word.
Gevolglik bestaan die RMS self uit globale RMS (GRMS) en strategievlak RMS (SLRMS). Die SLRMS en GRMS kon ook gesien word via 'n gebruikerskoppelvlak (UI).
Kom ons gaan nou verder na die bediener se komponente.
Markadapter
Exchange of enige ander markdataverskaffer stuur data in sy formaat. Daardie taal kan al dan nie deur jou algoritmiese handelstelsel verstaan word nie.
Exchange gee jou toegang tot 'n API (Application Design Interface) wat jy kan gebruik om jou eie adapter te programmeer en te bou om die dataformaat te omskep in 'n formaat wat jou stelsel kan verstaan.
Komplekse gebeurtenisverwerkingsenjin
Die brein van jou benadering lê in hierdie afdeling. Sodra jy die data het, moet jy dit gebruik in ooreenstemming met jou plan, wat vereis dat jy verskillende statistiese berekeninge doen, vergelykings met vorige data maak en besluite neem wat sal lei tot die skep van bestellings.
Hierdie blok word saamgestel deur die besteltipe en bestelbedrag te gebruik. Eenvoudig gesê, 'n komplekse gebeurtenis is 'n versameling van inkomende gebeurtenisse. Dit bestaan uit nuus, markbewegings, aandelemarkneigings, ens.
Die vinnige voltooiing van rekenaarbewerkings op ingewikkelde gebeurtenisse staan bekend as komplekse gebeurtenisverwerking. 'n Outomatiese handelstelsel se bedrywighede kan behels die opsporing van ingewikkelde patrone, die skep van korrelasies en die vestiging van verbindings soos oorsaak en tyd tussen enige inkomende inligting.
Bestel roetestelsel
Deur die uitruil se gegewe API's te gebruik, word die bestelling geïnkripteer in 'n taal wat die uitruil kan verstaan. Die uitruil bied inheemse API's en FIX API's, twee verskillende tipes API's.
Inheemse API's is spesifiek ontwerp vir 'n gegewe uitruil. 'n Stel riglyne bekend as die FIX (Financial Information Exchange) protokol word deur verskeie uitruilings gebruik om datavloei in die sekuriteitsmarkte te fasiliteer en te verbeter.
In die deel na hierdie een, sal ons meer oor FIX verduidelik. As 'n ekonomie oop is, kan mense bestellings via 'n outomatiese handelstelsel aan beurse of nie-uitruilings indien, en ORP behoort bestellings in baie rigtings te kan hanteer.
Hier wil ons beklemtoon dat die bestellingsein handmatig deur 'n persoon of outomaties uitgevoer kan word. Die laaste afdeling is waarna ons verwys as 'n "outomatiese handelstelsel."
Die bestellingsbestuurdermodule sluit verskeie uitvoeringstegnieke in wat die koop-/verkoopbestellings in ooreenstemming met voorafbepaalde logika uitvoer.
Risikobestuur
Aangesien outomatiese handelstelsels werk sonder menslike betrokkenheid, is streng risiko-ontledings nodig om te verseker dat die handelstelsels funksioneer soos bedoel.
Swak risikobestuur of die gebrek aan risikokontroles vir 'n kwantitatiewe maatskappy kan lei tot aansienlike onverhaalbare verliese. As gevolg hiervan moet enige outomatiese handelstelsel 'n risikobestuurstelsel (RMS) hê.
Protokol ontwikkeling vir outomatiese handel stelsels
Om aan verskeie bestemmings vanaf 'n enkele bediener te koppel, was dit nodig, wat moontlik gemaak is deur die argitektuur se vermoë om na baie strategieë per bediener te skaal.
Om bestellings na verskeie bestemmings te stuur en data van talle beurse te ontvang, het die bestellingsbestuurder dus 'n aantal adapters gehuisves.
Die rol van elke adapter is om te dien as 'n tolk tussen die stelsel se interne kommunikasieprotokol en die protokol wat die beurs verstaan. Dus sal 'n aantal adapters nodig wees vir 'n aantal uitruilings.
Aangesien elke uitruil 'n protokol het wat aangepas is vir die vermoëns wat dit bied, moet 'n nuwe adapter geskep word en in die argitektuur ingeprop word om 'n nuwe uitruil by die outomatiese handelstelsel te voeg.
Standaardprotokolle is ontwikkel om hierdie hoofpyn van adapterinvoeging te voorkom. Die FIX-protokol is die bekendste van almal.
Die gaan-na-mark-tyd vir verbinding met 'n nuwe bestemming word aansienlik verkort, wat dit nie net hanteerbaar maak om met verskeie bestemmings aan te sluit nie.
Die outomatiese handelstelsel kan maklik met ander verskaffers kommunikeer vir analise of markdatafeeds danksy die bestaan van algemene protokolle.
As gevolg hiervan word die mark uiters doeltreffend omdat daar nie meer 'n beperking op integrasie met 'n nuwe ligging of verkoper is nie.
Daarbenewens word simulasie baie eenvoudig gemaak, aangesien al wat nodig is om aan 'n simulator te koppel deur die FIX-protokol te gebruik, is om bestellings uit te reik en data van die regte mark te ontvang.
Die simulator self kan intern geskep word of van 'n ander bron gekoop word. Soortgelyk aan lewendige markdata, kan aangetekende datastelle ook weer gespeel word danksy adapters onafhanklik van die databron.
Opkomende argitekture met lae latensie
Die strategieë kan nou enorme volumes data in real-time evalueer en vinnige handelskeuses maak danksy die grondliggende elemente van 'n outomatiese handelstelsel.
As gevolg van die ontwikkeling van industriestandaard kommunikasie protokolle soos FIX, is dit nou makliker om 'n algoritmiese handel lessenaar of outomatiese handel stelsel te bou, wat mededinging in die algoritmiese handel mark verhoog het.
Die klem het oorgeskakel na die verlaging van die vertraging vir die neem van besluite, aangesien bedieners meer geheue en vinniger kloktempo's gekry het.
Die vermindering van latensie was oor tyd nodig om verskeie redes, insluitend:
- Slegs in 'n lae latensie-omgewing maak die tegniek sin.
- Kompetisie skakel jou uit as jy nie vinnig genoeg is in die oorlewing van die sterkste speletjie nie
Colocation het 'n absolute noodsaaklikheid geword in 'n outomatiese handelstelsel vir enige hoëfrekwensiemetode wat 'n enkele bestemming behels.
Maar multi-bestemming stelsels vereis noukeurige voorbereiding. Voordat jy so 'n keuse maak, moet 'n mens veranderlikes in ag neem soos die duur van die bestemming se bestelling reaksie tyd en hoe dit vergelyk met die duur van die ping tussen die twee bestemmings.
Ten einde 'n outomatiese handel stelsel se totale latency te verminder, netwerk latency is tipies die eerste ding wat aangespreek moet word. Maar die argitektuur kan ook op baie ander maniere verbeter word.
Netwerkverwerkingsvertraging
Netwerkverwerkingsvertraging is die vertraging wat routers, skakelaars, ens. Die aantal hops wat dit neem vir 'n pakkie om van punt A na punt B te beweeg, sal die volgende vlak van optimalisering wees in die ontwerp van 'n outomatiese handelstelsel.
'n Hop word beskryf as 'n gedeelte van die pad tussen 'n pakkie se bron en die bestemming waar dit nie deur 'n fisiese toestel, soos 'n roeteerder of skakelaar, beweeg nie.
Dit waarna ons verwys as mikrobursts kan ook 'n impak hê op die vertraging van netwerkbedrywighede.
'n Vinnige styging in die tempo van data-oordrag wat die gemiddelde data-oordragtempo mag of nie mag beïnvloed nie, word na verwys as 'n mikrobars.
Aangesien outomatiese handelstelsels reëlgebaseer is, sal hulle almal eenvormig op dieselfde gebeurtenis reageer. 'n Mikro-uitbarsting van data-oordrag tussen die deelnemers en die bestemming kan plaasvind as gevolg van verskeie deelnemende stelsels wat opdragte gelyktydig stuur.
Toepassing latency
'n Outomatiese handelstelsel se aansoekvertraging is 'n maatstaf van die tyd wat dit neem om 'n aansoek te verwerk. Dit hang af van die aantal pakkies, verwerking gewy aan die toepassingslogika, die kompleksiteit van die berekening wat gebruik word, programmeringseffektiwiteit, ens.
Die stelsel sal tipies minder toepassingsvertraging hê namate sy verwerkertelling toegeneem het. Met hoër klokfrekwensies geld dieselfde.
Baie outomatiese handelstelsels baat by die toekenning van SVE-kerns aan kritieke dele van die program, soos byvoorbeeld die logika vir die strategie. Deur dit te doen, voeg die prosedure nie die vertraging by wat voortspruit uit die omskakeling van kerns nie.
Soortgelyk aan hierdie, as 'n outomatiese handelstelsel se benadering geprogrammeer is met kasgroottes en die nabyheid van geheuetoegang in gedagte, sal daar verskeie geheuekastreffers wees, wat latensie verder verminder.
Baie stelsels doen dit deur die kode te optimaliseer vir die spesifieke verwerker-argitektuur, wat gedoen word deur baie lae-vlak programmeertale te gebruik.
Deur volledig programmeerbare hekskikkings te gebruik, het sommige besighede selfs so ver gegaan as om ingewikkelde berekeninge op hardeware (FPGA) te verbrand.
toets
Toetsing, wat die handeling is om sagtewaretoepassingsfoute te identifiseer, is onmoontlik om te onderwaardeer, veral in Fintech. As gevolg van die moontlikheid van finansiële verlies, kan finansiële tegnologie nie bekostig om foute te hê nie.
Hoe meer gebreke wat kwaliteitversekeringsingenieurs kan identifiseer, hoe groter is die kans dat die finale produk behoorlik sal funksioneer. Afhangende van die firma wat die handelsplatform ontwikkel of die kliënt se behoeftes, sluit die toetsproses se struktuur in:
Die basis van funksionele toetsing is om insette te skep en die resultate te ontleed. Met die gebruik van vals kaarte word finansiële toepassingstoetssake uitgevoer. Hierdie kaarte poog om die betroubaarheid, doeltreffendheid en akkuraatheid van betalings te verbeter.
Om 'n stelsel se spoed, skaalbaarheid en stabiliteit uit te vind, word gedoen deur prestasietoetsing. Die spoed van 'n toepassing word beoordeel om te verstaan hoe vinnig dit reageer, en die skaalbaarheid daarvan dui aan hoeveel gebruikers dit gelyktydig kan ondersteun sonder om te crash.
Daarbenewens demonstreer stabiliteit of die toepassing korrek funksioneer onder verskillende vragte en of daar enige potensiële foute is.
Dit kan buite die vermoëns van 'n enkele kleinhandelaar wees om 'n volledig outomatiese handelstelsel te bou. Outomatiese handelstelsels, wat op 'n intekeningbasis in die markte aangebied word, is 'n opsie vir handelaars wat die algoritmiese tegniek van handel wil ondersoek.
Bou jou eie outonome handelstelsels
Beginnerhandelaars kan hul eie algoritmiese handelstegnieke ontwikkel en betrokke raak by suksesvolle markhandel. As 'n algemene uiteensetting kan die stadiums wat hieronder gelys word gebruik word om 'n algoritmiese handelstrategie te skep:
- Skep 'n handelskonsep wat jy dink suksesvol sal wees in aktiewe markte deur jou verbeelding of 'n metode te gebruik. Die konsep kan afgelei word van jou eie markwaarnemings, handelsboeke, akademiese referate, handelsblogs, handelsforums of enige ander bron.
- Versamel die nodige inligting – Jy sal historiese data nodig hê om jou hipotese te toets. Hierdie inligting is beskikbaar by betaalde dataverkopers of webwerwe soos Google Finance.
- Om 'n plan te skryf, vereis die gebruik van gereedskap soos Excel-, Python- of R-programmering. Sodra jy die data het, kan jy begin om jou benadering te kodeer.
- Om jou handelskonsep te toets teen historiese data nadat dit gekodeer is, word die terugtoetsing van jou benadering genoem. Terugtoetsing behels insetoptimalisering, die vestiging van winsdoelwitte en keerverliesopdragte, posisiegrootte en ander verwante take.
- Papierverhandeling met jou strategie - Na die terugtoetsfase is papierverhandeling met jou strategie nodig. Dit sal die toetsing van jou plan insluit met behulp van 'n marksimulator. Vir die papierhandelmetode is daar makelaars wat 'n algoritmiese handelsplatform verskaf.
- As jou benadering winsgewend is na papierhandel, kan jy dit in werklike situasies implementeer. Jy kan 'n handelsrekening skep met 'n betroubare makelaar wat algoritmiese handel bied.
Met elke jaar wat verbygaan, is daar meer uitruilings wat algoritmiese handel vir beide professionele en kleinhandelhandelaars toelaat, en meer en meer handelaars gebruik algoritmiese handel.
Gevolgtrekking
Dit was 'n deeglike artikel oor 'n outomatiese handelstelselargitektuur wat ons vol vertroue het, met 'n hoogs insiggewende begrip van die betrokke komponente sowel as die vele struikelblokke wat argitektuurontwikkelaars moet hanteer / oorkom om 'n sterk outomatiese handelstelsel te ontwerp.
Ek het my bes gedoen om jou 'n oorsig van die outomatiese handelstelsel te gee, maar daar is baie meer aan die gang onder die enjinkap. Ek hoop jy vind hierdie materiaal voordelig en gebruik dit goed.
Lewer Kommentaar