Algoritmisko tirdzniecības sistēmu veidošana: 2 galvenās pieejas, testēšana, rīki

Algoritmisko tirdzniecības sistēmu veidošana: 2 galvenās pieejas, testēšana, rīki

Views: views 467
Lasīšanas laiks: 6 min



Algoritmiskās tirdzniecības sistēmas galvenie komponenti ir pētniecības rīki, veiktspēja, izstrādes vienkāršība, elastība un testēšana, problēmu dalīšana, pazīstamība, uzturēšana, avota koda pieejamība, licencēšanas izmaksas un bibliotēku termiņš. Pirms izlemjat par "labāko" rīku, ar kuru izveidot automatizētu tirdzniecības sistēmu, ir jādefinē prasības:

  1. Kāds būs tirdzniecības biežums un iespējamais tirdzniecības apjoms?
  2. Vai sistēma prasīs riska pārvaldība vai portfeļa konstruēšanas modulis?
  3. Vai sistēmai būs nepieciešams augstas veiktspējas backtesters?

Tirgotājiem, kuriem nepieciešama vairāk pielāgotu un sarežģītāku sistēmu, varētu nākties apskatīt iespēju izmantot C #, Matlab vai Python, bet es teiktu, ka pārējiem 95% dienas tirgotāju pietiks ar algoritmisku tirdzniecības programmatūru.

1 - aprēķiniet Python, Matlab, C #

Šajā gadījumā automatizētas algoritmiskas izveidē svarīgs faktors ir programmēšanas prasmes tirdzniecības stratēģija. Zinot programmēšanas valodu, piemēram, Python vai R, jūs varēsit pats izveidot visaptverošu datu glabāšanu, backtest motoru un izpildes sistēmu. Tas ļauj jums izpētīt augstākas frekvences stratēģijas, jo jūs pilnībā kontrolēsit savu "tehnoloģiju kaudzīti". Lai gan tas nozīmē, ka jūs varat pārbaudīt savu programmatūru un novērst kļūdas, tas nozīmē arī vairāk laika, kas jāpavada infrastruktūras kodēšanai un mazāk stratēģiju ieviešanai, vismaz savas iepriekšējās karjeras sākumā.

Pamata darbplūsma ir šāda:

  • Algoritmiska tirdzniecības stratēģija ievada tirgus datus (vēsturiskos vai reālos) datora (backtest vai automatizētas izpildes) programmā.
  • Pēc tam programma, izmantojot API, iesniedz pasūtījumus brokerim un saņem atpakaļ paziņojumus par pasūtījuma statusu no brokera.

MATLAB un Python ir bijušas manas iecienītākās atkārtotās pārbaudes platformas. Tam ir ļoti visaptverošs un lietotājam draudzīgs interfeiss programmu izstrādei un atkļūdošanai, un tam ir plašs rīku komplektu klāsts, kas aptver gandrīz katru loģisko matemātisko vai skaitļošanas paņēmienu, ar kuru jūs, iespējams, sastapsities tirdzniecības stratēģijas izstrādē.

Vēsturisko datu importēšana no Yahoo Finance uz Python
Attēls: vēsturisko datu importēšana no Yahoo Finance uz Python
Algoritmiskās tirdzniecības process
Attēls: algoritmiskās tirdzniecības process

2 - algoritmiska tirdzniecības programmatūra. Bez kodēšanas prasmēm

Otra pieeja ir algoritmiski rīki, piemēram, Multicharts, StrategyQuant vai R Trader Strategy Builder (bezmaksas un ērti lietojams, mākoņa bāzes) un daudzi citi.

Dienas, kad algoritmisko tirdzniecību ieviesa tikai profesionāļi, ir beigušās. Nav jāvelta stundas C # apguvei, kad gandrīz visas sistēmas un stratēģijas var kodēt Stratēģija, Daudzprogrammu vai R tirgotāja stratēģijas veidotājs. Pēc mūsu pieredzes daži tirgotāji / programmētāji vēlas veikt tālo ceļu uz mērķi, bieži tehniska pārākuma aizsegā, uzticieties mums, vidējā algoritmiskās tirdzniecības stratēģijā lielākā daļa uzlabotās kodēšanas nav nepieciešama. API izveidošana vai visa pielāgošana, izmantojot MetaTrader, var būt ļoti nelietderīga, īpaši, ja vērtības radīšanas vietā jūs aizraujaties ar tehniskām detaļām.

Visām platformām ir savi pozitīvie un negatīvie, mums R Trader Strategy Builder ir iekšējs patentēts, viegli lietojams modulis, kas ļauj mazumtirgotājiem plānot, veikt atkārtotu pārbaudi un izvietot algoritmiskas tirdzniecības stratēģijas bez zināšanām programmēšanas valodās.

R Trader tirdzniecības platforma ir vienkāršāks veids, kā jūs varat iziet no tradicionālās point-and-click tirdzniecības. Paredzēts pieredzējušiem tirgotājiem, kā arī jaunpienācējiem, mūsu vienkāršā lietojumprogrammas saskarne ļauj dažās minūtēs automatizēt tirdzniecības stratēģijas. Nekādas kodēšanas un satraukuma - jūs darbosities un darbosities ne ātrāk.

Atkārtota pārbaude. Stratēģijas vednis R Trader stratēģijas veidotājā.
Attēls: atkārtota pārbaude. Stratēģijas vednis R Trader stratēģijas veidotājā.

Tirdzniecības sistēmu pārbaude un novērtēšana

Pētījumi ir saistīti ar stratēģijas izpildes novērtēšanu, izmantojot vēsturiskos datus. Tirdzniecības stratēģijas novērtēšanas process, salīdzinot ar iepriekšējiem tirgus datiem, ir pazīstams kā atpakaļpārbaude.

Algoritmiskā tirdzniecība ir atšķirīga no cita veida ieguldījumu klasēm, jo ​​mēs varam ticamāk sniegt cerības par nākotnes rezultātiem no iepriekšējiem rādītājiem. Vienkārši izsakoties, atkārtotu pārbaudi veic, pakļaujot jūsu konkrēto stratēģijas algoritmu vēsturisko cenu datu straumei, kas noved pie tirdzniecības signālu kopas. Katrai tirdzniecībai būs saistīta peļņa vai zaudējumi. Šīs peļņas / zaudējumu uzkrāšanās visā stratēģijā, kas paredzēta pēdējās pārbaudes laikā, novedīs pie kopējās peļņas un zaudējumiem.

Kādi ir galvenie algoritmiskās stratēģijas atkārtotas pārbaudes iemesli?

Filtrācija

mūsu mērķis sākotnējā pētniecības posmā ir filtrēt jebkuru stratēģiju, kas neatbilda noteiktiem kritērijiem. Atpakaļpārbaude nodrošina mūs ar vēl vienu filtrēšanas mehānismu, jo mēs varam novērst stratēģijas, kas neatbilst mūsu veiktspējas vajadzībām.

modelēšana

Atkārtota pārbaude ļauj mums (droši!) Pārbaudīt jaunus tirgus apstākļu modeļus.

Paraugā un ārpus parauga

Pārbaudot ideju par vēsturiskiem datiem, ir lietderīgi rezervēt vēstures datu periodu testēšanas vajadzībām. Sākotnējos vēsturiskos datus, pēc kuriem ideja tiek pārbaudīta un optimizēta, sauc par parauga datiem. Rezervēto datu kopu sauc par ārpuskopienas datiem. Šī iestatīšana ir svarīga vērtēšanas procesa sastāvdaļa, jo tā nodrošina iespēju pārbaudīt ideju par datiem, kas nav bijuši optimizācijas modeļa komponenti. Tā rezultātā ideju nekādā veidā neietekmēs dati, kas nav iekļauti izlasē, un tirgotāji varēs noteikt, cik labi sistēma varētu darboties ar jauniem datiem, ti, reālās dzīves tirdzniecībā.

Algoritmiskas tirdzniecības stratēģijas optimizācija

Lai arī stratēģijas optimizācijā ir neobjektivitāte, atkārtota pārbaude ļauj mums palielināt stratēģijas veiktspēju, mainot ar šo stratēģiju saistīto parametru vērtības un pārrēķinot tās veiktspēju. Pārmērīga uzstādīšana (līknes pielāgošana) ir nopietna problēma visās jomās, kas saistītas ar datu ieguvi, un jums ir jābūt uzmanīgiem, izmantojot pareizas validācijas un testa kopas. Šī iemesla dēļ varēja ieviest dažādas metodes, piemēram, atkārtotu pārbaudi ar dažādiem iestatījumiem, Montekarlo simulācijas, Walk-Forward-Matrix, Walk-Forward-Optimization, Multiple Out-of-Sample periodus.

Iepriekšēja veiktspējas pārbaude

Demogrāfiskā tirdzniecība vai papīra tirdzniecība tirgotājiem nodrošina citu ārpuskopienas datu kopu, pēc kuras novērtēt sistēmu. Iepriekšēja veiktspējas pārbaude ir faktiskās tirdzniecības simulācija un ietver sistēmas loģikas sekošanu aktīvam tirgum. Svarīgs turpmākās veiktspējas pārbaudes aspekts ir precīzi ievērot sistēmas loģiku; pretējā gadījumā ir grūti, ja pat neiespējami precīzi novērtēt šo procesa soli. Daudzi brokeri, kā arī RoboMarkets piedāvā simulētu tirdzniecības kontu, kurā var veikt darījumus un aprēķināt atbilstošo peļņu un zaudējumus. Izmantojot demonstrācijas tirdzniecības kontu, var izveidot pusreālistisku vidi, kurā var praktizēt tirdzniecību un tālāk novērtēt sistēmu.

Attēls: atkārtota pārbaude. Diagramma Python.
Attēls: atkārtota pārbaude. Diagramma Python.
Atkārtota pārbaude. R Trader Strategy Builder vēsturiskie darījumi.
Attēls: atkārtota pārbaude. R Trader Strategy Builder vēsturiskie darījumi.

Visbeidzot, es vēlētos apspriest instrumentus, kas būs noderīgi šajā jomā.

darbarīki

Pētniecības un automatizētas tirdzniecības programmatūra

Excel, R Trader stratēģijas veidotājs (https://rtrader.umstel.com - bezmaksas programmatūra), StrategyQuant (licences maksa), MultiCharts (licences maksa), TradeStation (licences maksa), Wealth-lab (licences maksa).

kods

Matlab, Python, R, C #

Datums

  1. Dati par sociālajiem noskaņojumiem (no Twitter un citiem sociālajiem medijiem sk. ISentium, TickerTags)
  2. Pūļa iegūtie dati (skat. Novērtēt)
  3. Uzvedības dati (sk. Kabota izpēte)
  4. Satelīta un gaisa attēli (skat. Ieskatu Orbital)
  5. Dati par patērētāju uzvedību (sk. Zīmola lojalitāti)
  6. Netradicionālie tiešsaistes resursi (sk. Zināšanas)
  7. OTAS (tehniskie dati)

Citi pakalpojumu sniedzēji

TIM grupa, Discern, Essentia, Kensho, RavenPack, SocialMediaAnalytics, Ayasdi, TheySay Analytics, Quid, Rage Framework, Dataminr.

Grāmatas (angļu valodā)

  1. Kvantitatīvā tirdzniecība: Kā izveidot savu algoritmiskās tirdzniecības biznesu - Ernests Čans
  2. Algoritmiskā tirdzniecība: uzvarošās stratēģijas un to pamatojums - Ernests Čans
  3. Mašīnu tirdzniecība: Datoru algoritmu ieviešana tirgu iekarošanai - Ernests Čans
  4. Algoritmiskā tirdzniecība un DMA: ievads tiešās piekļuves tirdzniecības stratēģijās - Barijs Džonsons
  5. Tirdzniecība un biržas: Tirgus mikrostruktūra praktiķiem - Lerijs Hariss

1. arXiv http://arxiv.org/archive/q-fin
2. SSRN https://www.ssrn.com/en/
3. Ieguldījumu stratēģiju žurnāls https://www.risk.net/journal-of-investment-strategies
4. Skaitļojošo finanšu žurnāls https://www.risk.net/journal-of-computational-finance
5. Matemātiskās finanses https://onlinelibrary.wiley.com/journal/14679965

Kopsavilkums

Kā redzam, algoritmiskās tirdzniecības stratēģiju izveidošanai ir dažādas pieejas. Jūs varat izvēlēties jebkuru, kas atbilst jūsu zināšanu līmenim un iespējām. Arī atkārtota pārbaude un turpmākā attīstība, pēc kuras tikai mēs varam pāriet uz praksi.

Ja jums ir kādi jautājumi, es ar prieku atbildēšu uz tiem komentāros zemāk.

Atvērt tirdzniecības kontu




komentāri

Iepriekšējais raksts

Nedēļa tirgū (01/13 - 01/19): statistika un centrālo banku lēmumi

Jaunā janvāra nedēļa izskatās diezgan ierasta. Mums ir statistika, politika, kā arī daži monetāri lēmumi. Liekas, ka pasaules ekonomika un kapitāla tirgi pēc Ziemassvētku un Jaunā gada brīvdienām darbojas pilnā apjomā.

Nākamais raksts

3 krājumi, kas jāiegādājas 2020. gadā: Delta Air Lines, HP, Morgan Stanley

Turpinās ASV ekonomikas izaugsmes 12 gadu cikls. Šis ir visilgākais laika posms bez krīzes. 2020. gada sākums turpina uzmundrināt investorus, un krājumi atjauno visu laiku augstākos rādītājus. Tie, kas tos nopirka agrāk, kļūst laimīgāki.