Hoe u uw eigen Algo Trading Robot codeert

How we can build AI to help humans, not hurt us | Margaret Mitchell (November 2024)

How we can build AI to help humans, not hurt us | Margaret Mitchell (November 2024)
Hoe u uw eigen Algo Trading Robot codeert

Inhoudsopgave:

Anonim

Ooit een algoritmische handelaar willen worden met de mogelijkheid om uw eigen handelsrobot te coderen? En toch, ben je gefrustreerd over de hoeveelheid ongeorganiseerde, misleidende informatie en valse beloften van een nachtelijke welvaart? Welnu, Lucas Liew, de maker van de online algoritmische handelscursus AlgoTrading101, heeft misschien de oplossing voor je. Met uitstekende recensies en het verzamelen van meer dan 8, 000 studenten sinds de eerste lancering in oktober 2014, blijkt Liew's cursus - gericht op het op een georganiseerde manier presenteren van de fundamenten van algoritmische handel - vrij populair te zijn. Hij is onvermurwbaar over het feit dat algoritmische handel "geen snel-rijk-snel-schema is. "Op basis van inzichten van Liew en zijn cursus, die hieronder worden beschreven, zijn de basisprincipes van wat er nodig is om uw eigen algoritmische tradingrobot te ontwerpen, bouwen en onderhouden.

Wat een algoritmische tradingrobot is en is

Op het meest basale niveau is een algoritmische tradingrobot een computercode die de mogelijkheid heeft om signalen voor kopen en verkopen op financiële markten te genereren en uit te voeren. De hoofdcomponenten van een dergelijke robot omvatten invoervoorschriften die aangeven wanneer ze moeten kopen of verkopen, regels afsluiten die aangeven wanneer de huidige positie moet worden gesloten en positiebepalingsregels die de hoeveelheden bepalen die moeten worden gekocht of verkocht. (Zie voor meer informatie: Basisbeginselen van algoritmische handel: concepten en voorbeelden .)

De hoofdtools

Vanzelfsprekend hebt u een computer en een internetverbinding nodig. Daarna is een Windows- of Mac-besturingssysteem nodig om MetaTrader 4 (MT4) uit te voeren, een elektronisch handelsplatform dat de MetaQuotes Language 4 (MQL4) gebruikt voor het coderen van handelsstrategieën. Hoewel MT4 niet de enige software is die je zou kunnen gebruiken om een ​​robot te bouwen, heeft het een aantal belangrijke voordelen.

Hoewel MT4's belangrijkste activaklasse valuta (FX) is, kan het platform worden gebruikt voor de handel in aandelen, aandelenindexen, grondstoffen en Bitcoins met CFD's. Andere voordelen van het gebruik van MT4 in tegenstelling tot andere platforms zijn onder meer dat het eenvoudig te leren is, beschikt over een groot aantal beschikbare FX-gegevensbronnen en is gratis. Helaas staat MT4 geen directe handel in aandelen- en termijnmarkten toe en het uitvoeren van statistische analyses kan lastig zijn; MS Excel kan echter worden gebruikt als een aanvullend statistisch hulpmiddel.

Algorithmische handelsstrategieën

Het is belangrijk om te beginnen met na te denken over enkele kernkenmerken die elke algoritmische handelsstrategie zou moeten hebben. De strategie moet marktbewust zijn, omdat deze fundamenteel gezond is vanuit markt- en economisch oogpunt. Ook moet het wiskundige model dat wordt gebruikt bij het ontwikkelen van de strategie gebaseerd zijn op degelijke statistische methoden.

Vervolgens is het van cruciaal belang om te bepalen welke informatie uw robot wil vastleggen. Om een ​​geautomatiseerde strategie te hebben, moet uw robot identificeerbare, aanhoudende marktinefficiënties kunnen vastleggen.Algorithmische handelsstrategieën volgen een rigide reeks regels die profiteren van marktgedrag en dus is het optreden van een eenmalige marktinefficiëntie niet genoeg om een ​​strategie rond te bouwen. Verder, als de oorzaak van de ondoelmatigheid van de markt niet identificeerbaar is, is er geen manier om te weten of het succes of falen van de strategie te wijten was aan toeval of niet.

Met het bovenstaande in gedachten zijn er een aantal soorten strategieën om het ontwerp van uw algoritmische tradingrobot te informeren. Deze omvatten strategieën die profiteren van (i) macro-economisch nieuws (bijvoorbeeld niet-agrarische loon- of rentewijzigingen); (ii) fundamentele analyse (bijvoorbeeld gebruikmakend van inkomstengegevens of publicatie-aantekeningen); (iii) statistische analyse (bijvoorbeeld correlatie of co-integratie); (iv) technische analyse (bijvoorbeeld voortschrijdende gemiddelden); (v) de marktmicrostructuur (bijvoorbeeld arbitrage of handelsinfrastructuur); of (vi) elke combinatie van het bovenstaande. (Zie voor gerelateerde literatuur: Wat is marktefficiëntie? )

Uw robot ontwerpen en testen

Er zijn in wezen vier stappen nodig om een ​​handelsrobot te bouwen en te beheren:

Vooronderzoek < : deze stap richt zich op het ontwikkelen van een strategie die past bij uw persoonlijke eigenschappen. Factoren zoals persoonlijk risicoprofiel, tijdsbesteding en handelskapitaal zijn allemaal belangrijk om na te denken over het ontwikkelen van een strategie. U kunt dan beginnen met het identificeren van de persistente marktinefficiënties die hierboven zijn genoemd. Als u een marktinefficiëntie hebt vastgesteld, kunt u beginnen met het coderen van een tradingrobot die is aangepast aan uw persoonlijke kenmerken. Backtesting

: deze stap is gericht op het valideren van uw tradingrobot. Dit omvat het controleren van de code om ervoor te zorgen dat het doet wat u wilt en inzicht krijgen in hoe het presteert over verschillende tijdsblokken, activaklassen of verschillende marktomstandigheden, met name bij evenementen met het type black swan zoals de wereldwijde financiële crisis van 2008. Optimalisatie

: u hebt nu dus een robot gecodeerd die werkt en u wilt in dit stadium de prestaties maximaliseren terwijl de overbodige vooringenomenheid wordt geminimaliseerd. Om de prestaties te maximaliseren, moet u eerst een goede prestatiemeting selecteren die risico- en opbrengstelementen bevat, evenals consistentie (bijvoorbeeld Sharpe-ratio). Overdreven vooringenomenheid treedt op wanneer uw robot te nauw is gebaseerd op gegevens uit het verleden; zo'n robot straalt de illusie van hoge prestaties af, maar omdat de toekomst nooit helemaal op het verleden lijkt, kan het zelfs falen. Live uitvoering

: u bent nu klaar om echt geld te gaan gebruiken. Maar afgezien van voorbereid te zijn op de emotionele ups en downs die je zou kunnen ervaren, zijn er een paar technische problemen die moeten worden aangepakt. Deze kwesties omvatten het selecteren van een geschikte makelaar en het implementeren van mechanismen om zowel marktrisico's als operationele risico's te beheersen, zoals potentiële hackers en stilstand van technologie. Het is ook belangrijk om bij deze stap na te gaan of de prestaties van de robot vergelijkbaar zijn met die in de testfase. Ten slotte is continue monitoring nodig om ervoor te zorgen dat de marktefficiëntie waarvoor de robot is ontworpen, nog steeds bestaat.(Zie voor meer informatie: Hoe trading-algoritmen worden gemaakt .) De bottom line

Gezien het feit dat Richard Dennis, de legendarische commodityhandelaar, een groep studenten zijn persoonlijke handelsstrategieën leerde die vervolgens gingen om in slechts vijf jaar meer dan $ 175 miljoen te verdienen, is het volledig mogelijk voor onervaren handelaren om een ​​strikte set richtlijnen te leren en succesvolle handelaren te worden. Dit is echter een buitengewoon voorbeeld en beginners moeten zeker onthouden dat ze bescheiden verwachtingen hebben.

Om succesvol te zijn, is het belangrijk om niet alleen een aantal richtlijnen te volgen, maar ook om te begrijpen hoe deze richtlijnen werken. Liew benadrukt dat het belangrijkste onderdeel van algoritmische handel is: "begrijpen onder welke soorten marktomstandigheden uw robot zal werken en wanneer deze zal afbreken" en "begrijpen wanneer in te grijpen. "Algorithmische handel kan lonend zijn, maar de sleutel tot succes is begrip. Elke cursus of leraar die hoge beloningen belooft met minimaal begrip, zou een belangrijk waarschuwingssignaal moeten zijn.