Codificarea propriului robot Algo-Trading - KamilTaylan.blog
1 mai 2021 15:15

Codificarea propriului robot Algo-Trading

Mulți comercianți aspiră să devină comercianți algoritmici, dar se luptă să-și codeze corect roboții de tranzacționare. Acești comercianți vor găsi online informații de codare algoritmică dezorganizate și înșelătoare, precum și promisiuni false de prosperitate peste noapte. Cu toate acestea, o posibilă sursă de informații fiabile este de la Lucas Liew, creatorul cursului de tranzacționare algoritmică online AlgoTrading101.Începând din august 2020, cursul a adunat peste 33.000 de studenți de la lansarea sa în octombrie 2014.

Programul Liew se concentrează pe prezentarea fundamentelor tranzacționării algoritmice într-un mod organizat. El este ferm în legătură cu faptul că tranzacționarea algoritmică „nu este o schemă de îmbogățire rapidă”. Mai jos sunt prezentate elementele de bază pentru a proiecta, construi și întreține propriul robot de tranzacționare  algoritmic (extras din Liew și cursul său).

Ce este un robot de tranzacționare?

La cel mai de bază nivel, un robot de tranzacționare algoritmic este un cod de computer care are capacitatea de a genera și executa semnale de cumpărare și vânzare pe piețele financiare. Principalele componente ale unui astfel de robot includ reguli de intrare care semnalează când se cumpără sau se vinde, reguli de ieșire care indică când se închide poziția curentă și reguli de dimensionare a poziției care definesc cantitățile de cumpărat sau de vânzare.

Chei de luat masa

  • Mulți comercianți de ceva aspiranți au dificultăți în a găsi educația sau îndrumarea potrivită pentru a-și codifica corect roboții de tranzacționare.
  • AlgoTrading101 este o sursă potențială de instrucțiuni fiabile și a strâns peste 33.000 între lansarea din 2014 și august 2020.
  • Un algoritm sau robot de tranzacționare este codul computerului care identifică oportunitățile de cumpărare și vânzare, cu posibilitatea de a executa comenzile de intrare și ieșire.
  • Pentru a fi profitabil, robotul trebuie să identifice eficiența regulată și persistentă a pieței.
  • În timp ce exemplele de scheme de îmbogățire rapidă abundă, comercianții de ceva aspiranți sunt mai bine serviți pentru a avea așteptări modeste.

Evident, veți avea nevoie de un computer și o conexiune la Internet pentru a deveni un comerciant algoritmic. După aceea, este necesar un sistem de operare Microsoft Windows sau Mac pentru a rula MetaTrader 4 (MT4), care este o platformă electronică de tranzacționare care folosește MetaQuotes Language 4 (MQL4) pentru codificarea strategiilor de tranzacționare. Deși MT4 nu este singurul software pe care l-ar putea folosi pentru a construi un robot, acesta are o serie de avantaje semnificative.

Un avantaj este că, în timp ce principala clasă de active a MT4 este schimbul valutar (FX), platforma poate fi utilizată și pentru tranzacționarea de acțiuni, indici de capitaluri proprii, mărfuri și Bitcoin folosind contractul pentru diferențe ( CFD ). Alte avantaje ale utilizării MT4 (spre deosebire de alte platforme) este că este ușor de învățat, are numeroase surse de date FX disponibile și este gratuit.

Strategii algoritmice de tranzacționare

Unul dintre primii pași în dezvoltarea unei strategii algo este de a reflecta asupra unor trăsături de bază pe care ar trebui să le aibă fiecare strategie de tranzacționare algoritmică. Strategia ar trebui să fie prudentă pe piață, întrucât este fundamental solidă din punct de vedere al pieței și al economiei. De asemenea, modelul matematic utilizat în dezvoltarea strategiei ar trebui să se bazeze pe metode statistice solide.

Apoi, determinați ce informații intenționează să capteze robotul dvs. Pentru a avea o strategie automată, robotul dvs. trebuie să fie capabil să capteze ineficiențe de piață identificabile și persistente. Strategiile de tranzacționare algoritmice urmează un set rigid de reguli care profită de comportamentul pieței, iar apariția unei ineficiențe unice a pieței nu este suficientă pentru a construi o strategie în jur. Mai mult, dacă cauza ineficienței pieței este neidentificabilă, atunci nu va exista nicio modalitate de a ști dacă succesul sau eșecul strategiei s-au datorat sau nu întâmplării.

Având în vedere cele de mai sus, există o serie de tipuri de strategii pentru a informa proiectarea robotului dvs. de tranzacționare algoritmică. Acestea includ strategii care profită de următoarele (sau orice combinație a acestora):

  • Știri macroeconomice (de exemplu, salarizarea non-fermă sau modificările ratei dobânzii)
  • Analiză fundamentală (de exemplu, utilizarea datelor privind veniturile sau note de lansare a veniturilor)
  • Analiza statistică (de exemplu, corelație sau co-integrare)
  • Analiză tehnică (de exemplu, medii mobile)
  • Microstructura pieței (de exemplu, arbitrajul sau infrastructura comercială)

Cercetările preliminare se concentrează pe dezvoltarea unei strategii care să se potrivească propriilor caracteristici personale. Factori precum profilul de risc personal, angajamentul de timp și capitalul comercial sunt cu toții importanți la care să ne gândim atunci când dezvoltăm o strategie. Apoi puteți începe să identificați ineficiențele persistente ale pieței menționate mai sus. După ce ați identificat o ineficiență a pieței, puteți începe să codificați un robot de tranzacționare potrivit propriilor caracteristici personale.

Backtesting și optimizare

Backtesting-ul se concentrează pe validarea robotului dvs. de tranzacționare, care include verificarea codului pentru a vă asigura că face ceea ce doriți și înțelegerea modului în care strategia funcționează în diferite perioade de timp, clase de active sau condiții de piață diferite, în special în  evenimente de tip lebădă neagră, cum ar fi Criza financiară 2007-2008.

Acum, după ce ați codat un robot care funcționează, maximizați performanța acestuia, reducând în același timp  prejudecățile de supradaptare. Pentru a maximiza performanța, trebuie mai întâi să selectați o măsură bună a performanței care să surprindă elementele de risc și recompensă, precum și consistența (de exemplu, raportul Sharpe ). Între timp, apare o prejudecată de exagerare atunci când robotul dvs. se bazează prea strâns pe date anterioare; un astfel de robot va emite iluzia unei performanțe ridicate, dar din moment ce viitorul nu seamănă complet cu trecutul, s-ar putea să nu reușească.

Executare live

Acum sunteți gata să începeți să folosiți bani reali. Cu toate acestea, pe lângă faptul că sunteți pregătiți pentru suișurile și coborâșurile emoționale pe care le-ați putea experimenta, există câteva probleme tehnice care trebuie abordate. Aceste probleme includ selectarea unui broker adecvat și implementarea mecanismelor de gestionare atât a riscurilor de piață, cât și a riscurilor operaționale, cum ar fi potențialii hackeri și perioadele de nefuncționare ale tehnologiei.

Chei de luat masa

Înainte de a intra în direct, comercianții pot învăța multe prin tranzacționare simulată, care este procesul de a practica o strategie folosind date de piață live, dar nu și bani reali.

De asemenea, este important la acest pas să verificați dacă performanța robotului este similară cu cea experimentată în etapa de testare. În cele din urmă, este necesară monitorizarea pentru a se asigura că eficiența pieței pentru care a fost conceput robotul există în continuare. 

Linia de fund

Având în vedere că Richard Dennis,legendarul comerciant de mărfuri, și-a învățat un grup de studenți strategiile sale personale de tranzacționare, care apoi au câștigat peste 175 de milioane de dolari în doar cinci ani, este plauzibil ca comercianții fără experiență să fie învățați un set strict de linii directoare și săaibă succes..  Cu toate acestea, deși există exemple extraordinare, comercianții aspiranți ar trebui să-și amintească cu siguranță că au așteptări modeste.

Liew subliniază că cea mai importantă parte a tranzacționării algoritmice este „înțelegerea în ce tipuri de condiții de piață va funcționa robotul dvs. și când se va defecta” și „înțelegerea momentului în care să interveniți”. Tranzacția algoritmică poate fi plină de satisfacții, dar cheia succesului este înțelegerea; orice curs sau profesor care promite recompense mari fără o înțelegere suficientă ar trebui să fie un semn de avertizare major pentru a sta departe.