Stappen om een automatisch trading systeem te maken
Als u al een idee heeft over de strategie die u wilt gebruiken, ga dan direct naar stap 4.
Omdat we automatisch traden meer toegankelijk willen maken, bieden we ook de mogelijkheid om trading systemen te maken zonder dat u deze hoeft te programmeren.
1 Het eerste idee
Bepaal de koop / verkoop condities
Vanuit een "eerste idee" bepaalt u de koop- en verkoop condities van uw strategie. Met ProRealTime kunt u deze koop- en verkoopcondities testen alvorens te beslissen of u ze daadwerkelijk gaat gebruiken. U kunt dan gemakkelijk beslissen of u met dit idee wilt verder gaan en verbeteren op basis van uw ervaringen.
Uw antwoorden op de volgende vragen kunnen u een eerste idee geven van het type strategie dat u wilt maken:
- Heeft u een trading methode in een boek of op het internet gezien die u wilt testen?
- Wat zijn uw favoriete indicatoren uit het talrijke aantal dat beschikbaar is voor u?
- Wilt u rekening houden met hoog en laag koersen in uw koop- en verkoopbeslissingen?
- Moet uw systeem rekening houden met 1 conditie of meerdere condities?
- Wilt u een trend-volgende of een tegen-de-trend-in strategie gebruiken?
- Wilt u alleen long posities innemen of ook shortposities om te profiteren van neerwaartse trends?
- Wilt u uw uitstap baseren op condities gerelateerd aan technische analyse of gerelateerd aan money management technieken (target en bescherming stop orders gebaseerd op de instapkoers van de positie)?
In het algemeen start een strategie met een simpel idee dat steeds verder wordt verbeterd.
Bijvoorbeeld, strategieën kunnen gebaseerd zijn op een combinatie:
- van trend-volgende indicatoren (moving average, etc.) of overbought/oversold oscillatoren (RSI, Stochastic, etc.)
- van retracements (Fibonacci, pivot points, etc.)
- van uitbraken van koerspieken of dalen
- van divergenties (of tegen-de-trend-in) tussen koers en een indicator
- van afwijkend volume
Gebruik ideeën van uw eigen handmatige trading ervaringen
Als u actief bent op de financiële markten dan is de beste inspiratie vaak te vinden in datgene wat al het beste voor u werkt met "handmatig" trading.
Handmatig traden kan worden gezien als continu experimenteren en automatisch traden als de automatisering van technieken die u al met succes toepast in handmatig trading.
Doe ideeën op uit externe bronnen
Veel boeken praten over trading strategieën en kunnen trading ideeën of complete strategieën aandragen die u kunt testen.
2 Keuze van het fonds
Als het eerste idee is bepaald, bepaalt u de financiële instrumenten waarop u uw strategie wilt testen. Deze sectie kan u een aantal ideeën geven waarmee rekening gehouden kan worden bij het maken van uw keuze.
Liquiditeit: is het instrument dat u wilt kiezen liquide genoeg zodat uw trading systeem altijd in staat is om een positie te sluiten in goede condities?
Handelsuren: wilt u dat uw strategie in staat is om 's nachts posities in te nemen en als gevolg daarvan instrumenten gebruikt die tijdens weekdagen 24 uur per dag quoten?
Opening gap: hoe meer de handelsuren op een markt beperkt zijn (bijv: van 09:00 tot 17:35), hoe groter het risico de volgende dag op een opening met een significante gap tussen de vorige slotkoers en de nieuwe openingskoers. Om dit risico te beperken is het mogelijk om te handelen op markten die 24 uur per dag quoten of markten met wat beperktere sluitingstijden (bijv van 23:00 tot 08:00). Om het risico van een openingsgap te voorkomen kunt u bijv ook plannen om elke open positie te sluiten minimaal 15 minuten voor de sluiting van de markt.
Vereiste margin: zorg ervoor dat u voldoende vereiste margin heeft om de positie(s) van uw trading systeem of systemen inclusief eventuele verliezen te kunnen dekken (zie tabel hieronder voor margin voorbeelden).
Minimum te behalen winst: sommige trading systemen vertrouwen op het frequent innemen van korte termijn posities met als doel het maken van kleine winsten. Als zo een systeem wordt gebruikt, kan het interessant zijn om een instrument te gebruiken waarvoor de ratio van "Uitvoering kosten" (rekening houdend met de bied/laat spread en brokerkosten) en "Waarde van het instrument" laag is. De tabel hieronder bevat enkele voorbeelden.
Instrument | Minimum verschil voor winstgevendheid* | Vereiste margin | ||
---|---|---|---|---|
Standaard contract | Mini contract | Standaard contract | Mini contract | |
Index CFDs | ||||
1 France 40 @4.400 | ~0,023 % | ~0,028 % | 150 € | 15 € |
1 Germany 30 @ 9.500 | ~0,01 % | ~0,03 % | 750 € | 150 € |
1 Wall Street @ 16.500 | ~0,011 % | ~0,014 % | 500 $ | 100 $ |
1 US 500 @ 1.900 | ~0,022 % | ~0,03 % | 1.500 $ | 300 $ |
Forex | ||||
1 EUR/USD @ 1,35 | ~0,006 % | ~0,006 % | 675 $ | 67,5 $ |
1 GBP/EUR @1,23 | ~0,008 % | ~0,008 % | 615 € | 6,15 € |
Aandelen CFDs | ||||
500 AXA @ 20 € (10.000 €) | 0,1 % | - | 500 € | - |
4.500 AXA @ 20 € (90.000 €) | ~0,01 % | - | 9.000 € | - |
500 Intel @ 25 $ (12.500 $) | 0,08 % | - | 625 $ | - |
500 Visa @ 220 $ (110.000 $) | ~0,009 % | - | 44.000 $ | - |
Edelmetaal CFDs | ||||
Goud (spot) @ 1.250 | ~0,04 % | ~0,04 % | 1.250 $ | 125 $ |
Zilver (spot) @ 1.900 | ~0,16 % | ~0,16 % | 1.425 $ | 142,5 $ |
Voorbeelden gebaseerd op IG CFD koersen met een minimum spread op 1 juni 2014.
De spreads kunnen variëren en zijn niet altijd gelijk aan de minimum spread.
3 Money/Risk management
De begrippen "Money management" en "Risk management" verwijzen vaak naar regels voor:
- Beheren van kapitaal
- Beheren van posities
- Beheren van risico
Een goed geplande money management strategie moet u in staat stellen om uw winsten te maximaliseren en tegelijkertijd uw risico te beperken. Afhankelijk van uw money management techniek kan een bepaalde strategie winnend of verliezend zijn voor een bepaalde reeks van historische data.
De onderstaande vragen kunnen u enkele ideeën geven over de manier van money management die u wellicht wilt gebruiken:
Leverage/hefboom: wat is de maximale hefboom waar u niet overheen wilt gaan?
Leverage wordt als volgt berekend: 1/ [beschikbare cash / positie waarde]
Om leverage te beperken kunt u de positie grootte verkleinen of de portefeuille waarde vergroten.
- Short selling: wilt u alleen koopposities innemen of wilt u ook verkoopposities (short) innemen?
- Posities overnight aanhouden of deze sluiten: Wilt u nooit in positie blijven zitten ("flat") voordat de markt sluit iedere dag om het risico op een gap tussen de vorige slotkoers en de openingskoers van de volgende dag (ook wel openingsgap genoemd) te voorkomen?
- Beleggingshorizon: wilt u een beleggingshorizon gebruiken van minuten, uren, dagen of meer langere termijn?
- Tijd restricties: wilt u tijd restricties hanteren op uw systeem, bijvoorbeeld om geen nieuwe posities te openen na een bepaalde tijd dichtbij de sluitingstijd van de markt?
- Targets: wilt u targets gebruiken met een vaste waarde die uw posities sluiten zodra een bepaalde winst is bereikt of wilt u liever uw posities sluiten op basis van technische analyse condities?
- Bescherm uw posities: wilt u stops gebruiken ter bescherming gebaseerd op een maximum verlies per positie of gebaseerd op een koersniveau in de grafiek?
- Soorten stops: als u stops gebruikt, wilt u dan vaste stops gebruiken of trailing stops met niveaus die continu opnieuw worden geëvalueerd? Meer over de verschillende typen stops
- Max positie grootte: wat is de maximale positie grootte die u niet wilt overschrijden?
Merk op dat de maximale positie grootte elke keer zal worden gevraagd als u een trading systeem start en voorrang heeft op de condities in de code.
Maximum aantal orders: wat is de maximale hoeveelheid orders die uw trading systeem per dag mag uitvoeren?
(Bijv: 1 round-turn per dag of meer actief).Merk op dat het maximale aantal orders kan worden ingesteld via de "Setup - Trading instellingen" menu.
4 Zet uw idee om naar een trading systeem
We hebben deze essentiële stap vereenvoudigd
Om een automatisch systeem te maken zonder te programmeren
- Voeg aan het venster met het gewenste instrument de indicatoren toe die gebruikt worden in uw strategie en stel deze in.
- Dan, klik op de knop rechtsboven in de grafiek en klik op de tab "Backtesting & Automatisch trading" en kies "Nieuw".
- Om uw koopcondities te definiëren (voor long posities), klik op "Koop" knop.
- Om het platform te laten weten van welke elementen uw koopconditie afhangt, klikt u op het vak met daarin het gevraagde element (bijv: als uw conditie afhangt van de MACD, klik op het vak met daarin de MACD).
- Het venster toont u vervolgens de mogelijke condities via dropdown menu's. Zodra een conditie is gekozen, klikt u als u klaar bent op "OK" of "Extra conditie" als u meerdere gecombineerde condities wilt definiëren.
- Optioneel: u kunt stap 3 tm 5 herhalen om ook de condities in te stellen om uw long positie te verkopen, condities in te stellen om short posities aan te gaan en condities om deze shorts weer te sluiten.
- Klik op de "Stops & Targets" knop om uw Stops, Trailing Stops & Targets te definiëren.
Klik vervolgens op de "Genereer code" knop.
Het platform zal de code gebaseerd op uw condities aanmaken!
U kunt systemen maken door deze zelf te programmeren in ProBuilder taal.
ProBuilder taal (gemaakt door ProRealTime) is eenvoudig genoeg voor gebruikers zonder programmeerkennis om toch snel ProOrder systemen te kunnen maken.
We hebben programmeer handleidingen voor u gemaakt. Bestudeer deze in uw eigen tempo en leer stap voor stap uw eigen systemen te maken met behulp van vele voorbeelden:
- Programmeer Guide - Indicatoren & Basis Functies (ProBuilder)
- Programmeer Guide - Trading Systemen (ProBacktest & ProOrder)
De code editor fungeert, met haar intelligente functies, ook als programmeer assistent:
- Geintegreerde help: een menu toont alle beschikbare functies met voor elke functie helpteksten en gebruiksvoorbeelden.
- Real-time error opsporing: de editor geeft programmeer errors real-time aan terwijl u typt
- Automatische opmaak: uw code wordt automatisch gekleurd en opgemaakt om het lezen en het begrijpen ervan te vereenvoudigen.
Als u een ProRealTime Trading rekening of een CFD rekening gesponsord door ProRealTime heeft, kunt u gebruik maken van programmeer assistentie door ons een aanvraag te sturen via dit speciale formulier.
Vertel ons zo precies mogelijk uw condities voor het in- en uitstappen van posities en uw money management regels en wij proberen u een code te sturen die zo goed mogelijk overeenkomt met uw wensen.
Let op : ProRealTime biedt geen beleggingsadvies aan. Onze programmeer assistentie bestaat uit het versturen van voorbeelden van regels code waarmee u een aantal of alle condities die u heeft aangegeven aan ons in de praktijk kan brengen, zonder enige tussenkomst aangaande uw keuze van deze beleggingscondities.
5 Test uw trading systeem
We bieden twee elkaar aanvullende methoden aan om uw trading systemen te testen.
- ProBacktest: Backtest uw systemen met historische data
- PaperTrading: test uw systeem dag na dag in echte markt condities
Simuleer uw strategieën met ProBacktest
Met de ProBacktest module kunt u de implementatie van uw strategie gebaseerd op historische data simuleren om een inschatting te krijgen wat de prestaties hadden kunnen zijn.
De ProBacktest module kan u de prestaties van een systeem gebaseerd op de beschikbare historische data bevestigen maar ook de zwakke punten blootleggen, die u vervolgens weer kunt verbeteren.
Meerdere jaren historische intraday data
Uw systeem backtesten op langere en meer betrouwbare data geeft meer relevante en bruikbare resultaten.
ProRealTime biedt meerdere jaren historische intraday data. De betrouwbaarheid van deze data wordt bewaakt door een speciaal team dat zich full-time richt op data onderhoud en directe verbindingen met de beurzen.
Start een ProBacktest simulatie met uw trading systeem
Het gebruik van ProBacktest is gemakkelijk:
- Open het grafiekvenster van het instrument waarop u uw systeem wilt backtesten met het gewenste tijdsframe voor de simulatie (bijv: 15 minuten).
- Gebruik het "historie" dropdown menu (bovenaan links in het grafiekvenster) om de gewenste hoeveelheid historische data te laden (bijv 10.000 units).
- Klik bovenin de grafiek op de knop en dan op de tab "ProBacktest & Automatisch Trading" en kies het systeem dat u wilt backtesten.
- Klik "Wijzigen" voor toegang tot het code editor venster. Stel in de "ProBacktest" tab de volgende parameters in:
- Startkapitaal: geef de hoeveelheid startkapitaal van uw simulatie aan
- Commissie instellingen; stel de commissies in die gelden voor elke transactie in de simulatie (vaste hoeveelheid, %, spread, etc.)
- Max positie grootte: geef de maximale positie grootte aan waar het trading systeem niet overheen mag in de simulatie.
- Historische data gebruikt in de simulatie: standaard wordt het systeem gesimuleerd op alle geladen data in de grafiek. Gebruik deze optie als u de hoeveelheid data wilt verkleinen waarop u uw systeem wilt simuleren (bijv: van 1 januari tot 30 juni 2014).
- Klik op de knop "ProBacktest mijn systeem" om de simulatie te starten.
Analyseer de resultaten van de ProBacktest simulatie
Als het trading systeem is gebacktest, kunt u kijken naar:
- De equity curve
- De positie historie (in grafiekvorm)
- De historie van uitgevoerde orders (in lijst- of grafiekvorm)
- Een gedetailleerd statistisch rapport
Het gedetailleerde rapport geeft u nuttige statistieken zoals:
Winstanalyse
- Winst voor de gesimuleerde periode (in % en absoluut)
- Winst/verlies ratio
- % winstgevende posities
- Gesplitste analyse voor long en short posities
- ...
Positie analyse
- Gemiddelde tijd in positie
- % tijd in de markt
- Gemiddeld aantal orders per dag/maand
- ...
Risico analyse
- Grootste verlies op een positie
- Max. drawdown (historisch grootste verlies)
- Gemiddelde exposure / Minimale exposure
- ...
Meer informatie over ProBacktest? Ga naar pagina 23 van de trading systemen programmeer guide.
Waarschuwing: de met ProBacktest berekende statistieken hebben betrekking op data uit het verleden. In het verleden behaalde rendementen bieden geen garantie voor de toekomst.
Simuleer een strategie in PaperTrading modus
PaperTrading is een trading simulator waarmee u het handelen in echte marktcondities kunt oefenen met een virtuele portefeuille.
Hierdoor kunt u dus ook de uitvoering van uw trading systeem simuleren en deze dagelijks volgen in echte marktcondities met de PaperTrading.
PaperTrading toont u real-time wanneer uw systeem een positie inneemt en toont ook uw eigen reacties op automatisch trading situaties.
Na het starten van uw ProRealTime platform in PaperTrading modus, werkt het starten van een automatisch systeem hetzelfde als in de echte trading modus, zoals beschreven in onderdeel 6 op deze pagina.
6 Gebruik uw systeem voor live trading
Hoe?
- Open de grafiek van het instrument waarop u het trading systeem wilt uitvoeren
- Kies in deze grafiek het gewenste tijdframe voor de uitvoering van uw trading systeem
- Klik bovenin de grafiek op de knop, dan op de tab "ProBacktest & Automatisch Trading" en kies het systeem dat u wilt uitvoeren.
- Klik op de knop "Voorbereiden voor automatisch trading" om het systeem naar ProOrder te sturen.
- Het ProOrder venster opent. Uw systeem staat in de "Niet lopend" sectie van het ProOrder venster.
Snellere methode - als u bezig bent met de simulatie van het systeem in de ProBacktest module kunt u het systeem slepen vanuit de grafiek naar het ProOrder AutoTrading venster:
In het grafiek venster, klik-links op de "Equity curve" of de titel "ProBacktest - Posities", houd de muisknop ingedrukt en beweeg de cursor naar het ProOrder AutoTrading venster. Als u de muisknop loslaat, verschijnt het systeem in het ProOrder venster in de "Niet lopend" sectie.
Setup ProOrder instellingen
- Klik bovenin het ProOrder venster op de knop voor de instellingen van ProOrder.
- Positie en order status na stoppen van systemen: als een systeem is gestopt, wilt u dan dat ProOrder posities sluit en lopende orders annuleert; of dat deze behouden blijven en u ze zelf handmatig beheert.
- Stop vanwege aantal orders: kies een limiet voor het maximale aantal orders dat het systeem kan plaatsen. Boven deze limiet wordt het systeem gestopt.
- Stop vanwege systeem vervaldatum: om veiligheidsredenen hebben alle systemen een gemeenschappelijke geldigheidsdatum, waarna ze worden gestopt. Om deze geldigheidsdatum te verlengen klikt u op "Verleng" in het ProOrder venster. Met de "geldigheidsduur" parameter bepaalt u hoeveel dagen iedere verlenging is.
Als u de instellingen heeft gedaan, klik op het kruis icoon om het instellingen venster te sluiten en ga terug naar ProOrder.
Start uw systeem
- In het ProOrder venster, klik op de knop van uw trading systeem.
- Het nieuwe venster vraagt u om de start van uw automatisch trading systeem te bevestigen. Dit venster herinnert u aan belangrijke informtie:
- Het instrument en tijdframe waarop het systeem zal worden uitgevoerd
- De naam van het systeem en de versie (welke overeenkomt met de datum en tijd van verzending naar de ProOrder servers)
- De code van het trading systeem
- Voorkeuren die u heeft bepaald in de ProOrder instellingen
- De uitvoering condities van automatisch trading systemen
- Voordat u het systeem kunt starten moet u de parameter "Max positie grootte" bepalen. Dit is de maximale positie grootte die uw systeem mag innemen, ongeacht de condities in de code.
Voorbeeld :- In een van uw systemen op de DAX30 Future heeft u een "Max positie grootte" van 2 contracten ingevoerd.
- Uw systeem heeft al een long positie (koop) van 1 contract
- Een nieuwe conditie voldoet in uw systeem en wil 2 extra contracten kopen waardoor u in theorie in totaal 3 contracten zou hebben.
- Deze conditie zal worden genegeerd omdat u de "Max positie grootte" heeft bepaald op 2 contracten.
- Tenslotte, klik op de knop
Uw systeem wordt dan getoond in de sectie "Lopend" in het ProOrder venster en knippert om te laten zien dat deze is geactiveerd. De status is veranderd van "Niet lopend" naar "Lopend".
7 Monitor en verbeter continu uw systeem
Monitor uw systemen
Wanneer een ProOrder systeem wordt uitgevoerd kunt u de activiteit en prestaties controleren in het ProOrder venster in de ProRealTime software.
Equity curve
Voor elk trading systeem kunt u de equity curve tonen die de performance (winsten en verliezen) aangeeft van het systeem sinds de start.
Een nauwkeurige analyse van de equity curve schommelingen kan u nuttige informatie geven voor het verbeteren van uw systeem. Bijvoorbeeld, hoe u sommige van de verliezen kunt voorkomen of posities zou kunnen vergroten tijdens perioden dat het systeem winsten maakt.
Order en positie historie
De positie historie grafiek geeft op basis van een histogram een overzicht van de historische posities van het trading systeem. Het is nuttig om te zien of uw systeem vaak in positie zit en de gemiddelde grootte daarvan.
De order historie wordt getoond in de koersgrafiek. De instaporders worden met pijlen en de uitstaporders met kruisjes weergegeven.
Deze informatie is ook beschikbaar in het gedetailleerde rapport venster in lijst formaat.
Statistieken
Het gedetailleerde trading rapport geeft u inzicht in ongeveer dertig statistieken van elk trading systeem zoals:
- Winst analyse: Gemiddelde winst per soort positie (long/short), percentage winners, winst/verlies ratio, etc.
- Analyse van uw orders en posities: Gemiddeld aantal trades per dag, percentage tijd in de markt, gemiddelde tijd tussen twee posities, etc.
- Risico analyse: max drawdown, maximale risico exposure, gemiddelde risico exposure, etc.
Tip: het gedetailleerde rapport, de order lijst en posities lijst kunnen eenvoudig worden geëxporteerd naar externe applicaties zoals spreadsheet applicaties (via drag & drop).
Continu verbeteren van uw systemen
Alle bovenstaande informatie zal nuttig zijn om zwakheden in uw systemen te detecteren, verbeter deze en pas ze aan nieuwe markt omstandigheden aan.
Let op: als u een trading systeem wijzigt, blijft de oude versie in ProOrder staan (tenzij u deze handmatig verwijdert). Om eenvoudig het verschil te zien tussen oude en nieuwe versies toont ProOrder een versie nummer (welke correspondeert met de datum & tijd waarop het systeem naar ProOrder is verzonden).
Zodra u vertrouwd bent met de basics van de ProOrder module raden wij u aan om ook de programmeer guides die wij zorgvuldig hebben geschreven door te nemen zodat u ook zelf met meer vrijheid en zelfstandigheid kunt programmeren.
Wanneer u uw systeem gaat verbeteren, zijn de ProBacktest en ProOrder modules uw beste partners om uw wijzigingen via simulatie te bevestigen.
- Programmeer Guide - Indicatoren & Basis Functies (ProBuilder)
- Programmeer Guide - Trading Systemen (ProBacktest & ProOrder)
Import / Export uw systemen
Deel uw systemen met vrienden
Wilt u een van uw systemen delen met een vriend?
Het is erg eenvoudig:
- Selecteer in het "ProBacktest en Automatisch Trading" venster het systeem dat u wilt delen en klik op "Export".
- In het volgende venster, kies "Geen, code is volledig wijzigbaar", en klik op "Export"
- Uw trading systeem wordt geëxporteerd als een ".itf" bestand.
- U kunt nu het bestand e-mailen aan de gewenste persoon die het weer eenvoudig kan importeren in zijn ProRealTime platform!
Importeer een systeem gemaakt door iemand anders
Heeft u een ".itf" bestand gedownload vanaf een internet site of forum? Heeft een vriend u een trading systeem verzonden, die hij heeft gemaakt?
Hier ziet u hoe u deze kunt gebruiken in onze ProOrder AutoTrading module:
- In het "ProBacktest en Automatisch Trading" venster, klik op de "Import" knop.
- In het venster dat opent, selecteert u het ".itf" bestand op uw computer en bevestig uw keuze om het bestand te importeren in uw platform.
- Het systeem is nu zichtbaar in de lijst met systemen, in het venster "ProBacktest en Automatisch Trading".
- Controleer of het systeem is aangepast aan uw situatie en pas het aan, indien nodig, aan uw eigen behoefte. Gebruik nooit een trading systeem van een derde zonder deze eerst getest te hebben en te hebben aangepast indien nodig.
Let op: om een geïmporteerd trading systeem uit te voeren naar ProOrder moet de code toegankelijk zijn (en wijzigbaar). Echter, backtesting kan in ieder geval altijd.