Samenvatting
Het bedrijf besteedt tijd aan handmatige marktanalyse, spreadsheetverwerking en het plaatsen van orders.
De oplossing werd Python-handelssoftware die marktgegevens, strategielogica, spreadsheets en brokeraccounts met elkaar verbindt.
De software is ontwikkeld om handmatig handelswerk, herhaalde gegevensverwerking en vermijdbare uitvoeringsinspanning te verminderen.
Klantverhaal
De klant is een algoritmisch handelsbedrijf uit Polen. Het voert live-, backtest- en hoogfrequente strategieën uit via broker-API's en handelt in aandelen en opties.
Het team verwerkt candlegegevens, handelsinvoer en koop- en verkooporders over verschillende brokeraccounts. Handelaren en handelsbedrijven moeten handmatige analyse van marktgegevens, verwerking van handelsgegevens en het plaatsen van orders vervangen door geautomatiseerde systemen.
De opdracht was duidelijk: automatiseer de handelsworkflow in Python, verbind deze waar nodig met Interactive Brokers of een Shoonya Broker Account en valideer strategieën via backtesting. Het bedrijf had ook Excel-gegevens nodig die in het proces konden worden ingelezen en na uitvoering als bijgewerkte handelsgegevens konden worden teruggegeven.
De oplossing werd opgebouwd uit verbonden schermen voor intervalinstellingen, candleanalyse, live monitoring, Excel-gegevens en backtesting. Strategievelden, ordertypen, brokerstatus en handelslogboeken bleven zichtbaar, zodat het bedrijf het proces volgens de eigen regels kon beheren.
De klant vroeg om
- Strategieën valideren via backtesting en de gevraagde begeleiding of documentatie leveren.
- De handelsautomatisering in Python bouwen, met Java- of C++-alternatieven waar nodig.
- Interactive Brokers of Shoonya Broker Account verbinden waar nodig.
- Excel-handelsinvoer lezen en de gegevens na uitvoering bijwerken.
Waarom kant-en-klare software niet voldeed
Kant-en-klare brokerplatforms ondersteunen het kopen, verkopen en beheren van financiële activa, maar volgens hun beschrijvingen combineren ze de spreadsheetinvoer, configureerbare strategielogica, backtesting en brokeruitvoering van dit bedrijf niet in één aangepast proces. De oplossing is ontworpen om deze onderdelen samen te brengen en af te stemmen op de eigen regels van het bedrijf, met documentatie en training voor zelfstandig gebruik.
Projectoverzicht
De oplossing is ontworpen rond een Python-handelsapplicatie die marktgegevens, strategielogica, spreadsheetinvoer en brokeraccounts met elkaar verbindt. De structuur houdt de belangrijkste stappen op één plek: gegevens voorbereiden, candles beoordelen, een strategie valideren, orders uitvoeren en posities monitoren.
Voor de verwerking van handelsinvoer werd een Excel-werkomgeving ingericht. Deze leest spreadsheetgegevens, toont candlegegevens en markeert de bijgewerkte handelsgegevens die na de uitvoering zijn gegenereerd.
Het handelsscherm brengt selecteerbare intervallen, strategieparameters en koop- en verkoopcriteria samen. De verbindingsstatus van de broker en markt-, limiet- of stoporders blijven in hetzelfde scherm beschikbaar.
De applicatie plaatst orders via ondersteunde brokerverbindingen en houdt uitvoeringsinformatie beschikbaar voor monitoring.
Er is speciale aandacht besteed aan strategievalidering. Het backtestscherm gebruikt historische candlegegevens, strategieparameters en resultatentabellen, zodat het bedrijf een strategie kan vergelijken voordat deze voor livehandel wordt gebruikt.
Het systeem is opgezet als een reeks modules, met ruimte voor documentatie, installatiebegeleiding, ondersteuning na oplevering en latere uitbreidingen zoals lokale verwerking of debugging van live markten.
Belangrijkste geleverde functies
- Geautomatiseerde handel via brokeraccounts
- Markt-, limiet- en stoporders
- Candlegegevens ophalen met selecteerbare intervallen
- Configureerbare strategieën en koop-/verkoopcriteria
- Excel-handelsgegevens importeren en bijwerken
- Strategieën backtesten met historische candlegegevens
- Live monitoring van orders, posities en meldingen
- Verbindingsstatus van brokeraccounts
- Python-gebaseerde handelsautomatisering