Monday 9 October 2017

Trading System Optimering


Strategier optimering Algoritmer för automatiserad Trading. Automation öppnar möjligheten att handla flera modeller eller samma liknande modell med flera parametersatser Men det väcker frågan om hur man bäst kan optimera dessa parametersatser Chris Donnan, som arbetar med handel med derivathandel med ett stort Wall Street-företag, svarar mycket. Mycket arbete med algoritmisk handel har varit inom handelens genomförande. VWAP, TWAP, Implementation Shortfall-algoritmer och deras bröder har blivit allestädes närvarande tekniker för att driva affärer. Det är oundvikligt att algoritmer blir komponentelement i andra delar av det automatiserade handelslandskapet på ungefär samma sätt som dessa exekveringsalgoritmer har modellerat exekveringsaspekterna. Det handlar bara om tid innan optimeringsalgoritmer är en integrerad del av detta utrymme. Dessa algoritmer kan användas för att ställa in eller träna hela handelssystem och eller något element som sträcker sig från riskparametrar, till VWAP-parametrar, till inmatning a d avsluta regelparametrar. Optimaliseringsalgoritmer är verktyg som kan tillämpas på träning eller avstämning av automatiserade handelssystem. Denna träning sker vanligtvis under svansänden av handelsfas utvecklingsfas, men det är också möjligt att använda optimeringsalgoritmer kontinuerligt under verkliga tidshandel I den här artikeln kommer vi att fokusera på att använda optimeringsalgoritmer som en integrerad del av handelssystemets utvecklingsprocess. Du har utvecklat ditt senaste och bästa handelssystem. Du är säker på att denna modell kommer att läggas i produktionshandel. Gör du själv rättvisa genom rulla ut det som det är. Kan det här systemet justeras för att ge större avkastning. Kan detta system justeras för att få en bättre riskprofil - mindre drawdowns, större affärer. Kan du undvika att förlora pengar på ett system som redan är manuellt passar och kommer att misslyckas i realtid. Kan du skapa mer än ett system från detta kandidatsystem. Vet inte att det är idealiskt om du bara kunde exp utnyttja dina mål till datorn och få det att anpassa ditt handelssystem för att möta dina mål. Det är här där optimeringsalgoritmer passar in. Optimeringen av handelssystem är ett viktigt steg, men du måste veta vad du får dig in i. Det finns en hel värld av kraftfulla tekniker som kan användas för att optimera ditt handelssystem, men varje teknik har egna fördelar och bagage. Inte bara måste du välja en viss optimeringsmekanism, men lika viktigt måste du utöva en lämplig process så att du gör det skjut inte dig själv i foten. Mellan tiden som ditt system utvecklas och tidpunkten för att det går i produktion, syftar optimeringsprocessen till att förbättra dina chanser till framgång och lönsamhet. Vad är optimering. enklaste mening, optimera ditt handelssystem innebär att de önskvärda numeriska egenskaperna hos ditt handelssystem går upp och eller gör de oönskade numeriska egenskaperna hos din tradin G-systemet går ner Att tjäna pengar är önskvärt - så du vill maximera hur mycket pengar ditt system gör Förlora pengar är oönskat, så du vill minimera hur mycket pengar ditt system förlorar. Det står givetvis helt enkelt på engelska - men inte så helt enkelt sagt till en dator i många fall Vi kallar dessa önskvärda oönskade egenskaper fitness mål och de antingen minimeras eller maximeras Vi kan bara tänka på dem som mål Vi vill tillämpa en optimeringsalgoritm för att optimera vårt handelssystem s. What bästa eller optimala medelvärdet för ditt handelssystem. Det första du måste göra är att bestämma vad som är bäst eller bra eller optimalt för dig. Detta till synes enkla mål kan ofta bli en svår uppgift i praktisk verklighet. För att börja, kan du bestämma det bästa medel ger mest pengar Det här låter helt klart rimligt för ett handelssystem Så snart du gör det - börjar du optimera och du får reda på att ditt bästa system nu har en zillion penny trades Härifrån - y du kan fördjupa din vision av bästa för att tjäna mer pengar per handel. Det låter bra också tills du ser att du får en jätte handel och en miljon jätteförluster - och du har en nettoförlust. Processen fortsätter ett tag och tänker på hur man berättar för datorn vad du vill ha av det. Nästa - du kanske börjar titta på saker som Sharpe-förhållandet, Sortino-förhållandet, Sterling-förhållandet osv. Det här är alla träningsberäkningar som kombinerar dina fitnessattribut i ett enda numeriskt värde - ett mål Du kan av kursen kommer med dina egna beräkningar som försöker kombinera alla önskvärda egenskaper i ett bra handelssystem till ett nummer I slutet av dagen - det viktiga att notera är att du måste uttrycka ditt mål för optimisten. Oavsett mål du anges för din optimiserare - det borde göra en av två saker för det individuella målet, gör de siffror du vill gå upp - faktiskt gå upp och eller de siffror du vill gå ner - gå faktiskt ner igen. I praktisk verklighet är det ofta fai Det är svårt att uttrycka dessa mål, allt är uppbyggt i ett vackert antal. Möjliga tekniker. Det finns många enheter du kan använda för att optimera ditt handelssystem. Människor börjar ofta göra det manuellt Detta är överlägset den vanligaste mekanismen för optimering Traders och eller quants utveckla en modell, titta på den, ändra några inmatningsparametrar och se till att det gör mer av vad de vill och mindre av vad de inte. Det här är en iterativ process som ofta förbrukar mycket tid och ansträngning, går i cirklar och är svår att mätning. Du kan välja att göra en brute force optimization. Det här är den typ av optimering som uttömmande försöker varje enskild kombination av systemparametrar för att se vilken som är bäst. En brute force optimization är endast praktisk möjligt när du har ett relativt litet antal ingångar och eller liten mängd data att utvärdera Om du har massor av insatser kan du titta på bokstavligen eons för att slutföra din uttömmande sökning. Copyright Automated Trader Ltd 2017 - Strategier Compliance Technology. Hur man optimerar handelssystemet. NOTE Det här är ganska avancerat ämne. Läs först tidigare AFL-handledning. Tanken bakom en optimering är enkel Först måste du ha ett handelssystem, det här kan vara ett enkelt glidande medelvärde, till exempel i nästan varje system finns det några parametrar som medelvärde som bestämmer hur givna systemet beter sig, dvs det är väl lämpat för långsiktigt eller kort sikt, hur reagerar det på mycket volatila lager etc. Optimeringen är processen att hitta optimala värden för dessa parametrar som ger Högsta vinst från systemet för en viss symbol eller en symbolisk symbol AmiBroker är ett av de få programmen som gör att du kan optimera ditt system på flera symboler samtidigt. För att optimera ditt system måste du definiera från en upp till tio parametrar som ska vara optimerad Du bestämmer vad som är ett minimum och maximalt tillåtet värde för parametern och i vilka steg detta värde ska uppdateras. AmiBroker utför sedan flera back t ests systemet använder ALLA möjliga kombinationer av parametervärden När denna process är klar visar AmiBroker listan över resultat sorterade efter nettovinst. Du kan se värdena för optimeringsparametrar som ger det bästa resultatet. Skrivning AFL-formel. Optimering i backtester är stöds via ny funktion kallas optimera Syntaxen för den här funktionen är följande: variabelt optimera Beskrivning, standard min max step. variable - är normal AFL-variabel som får tilldelas värdet som returneras genom att optimera funktionen Med normal backtesting, scanning, exploration och comentary modes optimera funktionen returnerar standardvärdet, så ovanstående funktionsanrop motsvarar variabel standard. I optimeringsläget optimerar funktionen returnerar successiva värden från min till max inkluderat med steg-stegning. Beskrivning är en sträng som används för att identifiera optimeringsvariabeln och visas som ett kolumnnamn i optimeringsresultatlistan. Default är ett standardvärde som optimerar funktionen returnerar i prospekterings-, indikator-, kommentars-, scannings - och normala bakprovslägen. min är ett minimivärde av variabeln som optimeras. max är ett maximivärde av variabeln som optimeras. step är ett intervall som används för att öka värdet från min till max. AmiBroker stöder upp till 64 samtal för att optimera funktionen, därför upp till 64 optimeringsvariabler, notera att om du använder uttömmande optimering är det väldigt bra att begränsa antalet optimeringsvariabler till bara få. Varje samtal för att optimera generera max-min stegoptimeringslösenord och flera samtal för att optimera multiplicera antalet körningar som behövs. Exempelvis optimering av två parametrar med 10 steg kräver 10 10 100 optimeringsloops. Kalloptimera funktionen endast en gång per variabel i början av din formel eftersom varje samtal genererar nya optimeringsloops. Multiple - symboloptimering stöds fullt ut av AmiBroker. Maximum sökutrymme är 2 64 10 19 10 000 000 000 000 000 000 kombinationer.1 Enstaka variabel optimiz ation. sigavg Optimera Signalgenomsnitt 9 2 20 1.Buy Cross MACD 12 26, Signal 12 26 sigavg Sälj Cross Signal 12 26 sigavg, MACD 12 26.2 Tvåvariabel optimering lämplig för 3D charting. per Optimera per 2 5 50 1 Nivåoptimera nivå 2 2 150 4.Buy Cross CCI per, - Level Sälj Korsnivå, CCI per.3 Flera 3-variabel optimering. mfast Optimera MACD Fast 12 8 16 1 mslow Optimera MACD Slow 26 17 30 1 sigavg Optimera Signalgenomsnitt 9 2 20 1. Köp Cross MACD mfast, mslow Signal mfast, mslow, sigavg Sälj kryssignal mfast, mslow, sigavg, MACD mfast, mslow. Efter att ha skrivit in formuläret klickar du bara på Optimera-knappen i Automatiskt analysfönster. AmiBroker börjar testa alla möjliga kombinationer av optimeringsvariabler och rapportera resultaten i listan Efter att optimeringen är klar visas listan över resultat sorterat efter nettovinsten. Eftersom du kan sortera resultaten med någon kolumn i resultatlistan är det enkelt att få de optimala värdena för parametrar för lägsta drawdown, lägsta siffra av bransch, största vinstfaktor, lägsta marknadsexponering och högsta riskjusterad årlig avkastning De sista kolumnerna i resultatlistan presenterar värdena för optimeringsvariabler för givna test. När du bestämmer vilken kombination av parametrar som passar dina behov är det bästa du behöver göra för att ersätta standardvärdena för att optimera funktionssamtal med optimala värden. I nuvarande steg måste du skriva dem manuellt i formningsredigeringsfönstret den andra parametern för att optimera funktionssamtal. Visar 3D animerade optimeringsdiagram. För att visa 3D optimeringsschema behöver du att köra tvåvariabel optimering först Två variabla optimeringar behöver en formel som har 2 Optimera funktionssamtal Ett exempel på två variabla optimeringsformler ser ut som this. per Optimera per 2 5 50 1 Nivåoptimera nivå 2 2 150 4.Buy Cross CCI per, - Level Sälj Korsnivå, CCI per. Efter inmatning av formuläret måste du klicka på Optimera knappen. När optimeringen är klar bör du klicka på nedrullningspilen på Opti mize-knappen och välj Visa 3D-optimeringsgraf Om några sekunder visas en färgstark tredimensionell yta i ett 3D-kartvisningsfönster. Ett exempel på 3D-diagram som genereras med ovanstående formel visas nedan. Som standard visar 3D-diagrammen värden på Netto vinst mot optimeringsvariabler Du kan dock plotta 3D-ytplan för varje kolumn i optimeringsresultattabellen. Klicka bara på kolumnrubriken för att sortera den blå pilen kommer att visas vilket indikerar att optimeringsresultat sorteras efter vald kolumn och sedan välja Visa 3D optimeringsgraf igen. Med visualisering hur systemets parametrar påverkar handelsprestanda kan du lättare bestämma vilka parametervärden som producerar bräckliga och vilka ger robust systemprestanda. Robusta inställningar är regioner i 3D-grafen som visar gradvis snarare än abrupta förändringar i ytan. 3D-optimeringskartor är bra verktyg för att förhindra kurvmontering Kurvmontering eller överoptimering inträffar när systemet är mer komplext än Det måste vara och all den komplexiteten fokuserade på marknadsförhållanden som aldrig kan hända igen. Radikala förändringar eller spikar i 3D optimeringsdiagrammen visar tydligt överoptimeringsområden. Du bör välja parameterregion som producerar en bred och bred platå på 3D-diagram för ditt verkliga handel Parametersatser som producerar vinstspikar fungerar inte på ett tillförlitligt sätt i verklig handel. 3D-kartvisnings kontroller. AmiBroker s 3D-kartvisare erbjuder totalt visningsförmåga med full grafrotation och animering. Nu kan du se dina systemresultat från alla tänkbara perspektiv. Du kan kontrollera positionen och andra parametrar i diagrammet med hjälp av musen, verktygsfältet och tangentbordsgenvägarna, oavsett vad du tycker är lättare för dig Nedan hittar du listan.- Rotera - håll ner VÄNSTER musknapp och flytta i XY riktningar - för att zooma in , zoom ut - håll nere höger musknapp och flytta i XY riktningar - Flytta översätt - håll ner VÄNSTER musknapp och CTRL-tangent och flytta i XY riktningar - för att animera - håll ner VÄNSTER musknapp, dra snabbt och släpp knappen medan du drar. SACE - animera automatisk rotera LÄNST PIL SÖK - rotera vänster vänster HÖGER PIL SÖK - rotera vert höger UPP PIL TAST - vrid horisonten NER PIL TAST - vrid horisonten ner NUMPAD PLUS - När du zoomar in NUMPAD - MINUS - Förstora zoom NUMPAD 4 - Flytta åt vänster NUMPAD 6 - Flytta åt höger NUMPAD 8 - Flytta upp NUMPAD 2 - Flytta ner PAGE UP - Vattennivå upp PAGE DOWN - Vattennivån ner. Smart icke - uttömmande optimering. AmiBroker erbjuder nu smart, icke-uttömmande optimering utöver regelbunden och uttömmande sökning. Utomgående sökning är användbar om antalet parametrar i ett givet handelssystem är helt enkelt för stort för att vara genomförbart för uttömmande sökning. Utökad sökning är helt bra så länge det är rimligt att använda det Låt oss säga att du har 2 parametrar vardera från 1 till 100 steg 1 Det är 10000 kombinationer - perfekt OK för uttömmande sökning Nu med 3 parametrar har du 1 miljon kombinationer - det är fortfarande OK för uttömmande sökning men kan vara långvarig Med 4 parametrar har du 100 miljoner kombinationer och med 5 parametrar 1 100 har du 10 miljarder kombinationer I så fall skulle det vara för tidskrävande att kontrollera dem alla, och det här är det område där icke - uttömmande smarta sökmetoder kan lösa det problem som inte kan lösas inom rimlig tid med uttömmande sökning. Det är absolut den enklaste instruktionen hur man använder nytt, icke-uttömmande optimeringsmedel i det här fallet CMA-ES.1 Öppna din formel i Formula Editor. 2 Lägg till den här raden längst upp i din formula. OptimizerSetEngine cmae du kan också använda spso eller trib here.3 Valfritt Välj ditt optimeringsmål i Automatisk analys, Inställningar, Walk-forward-fliken, Optimeringsmålfält Om du hoppar över det här steget kommer det att optimera för CAR MDD-förening årlig avkastning dividerad med maximal drawdown. Now om du kör optimering med hjälp av denna formel, kommer den att använda ny evolutionär icke-uttömmande CMA-ES optimizer. How fungerar det. Optimeringen är den process för att hitta minsta eller maximala givna funktion. Varje handelssystem kan betraktas som en funktion av ett visst antal argument. Ingångarna är parametrar och citatdata. Utmatningen är ditt optimeringsmål, säg CAR MDD. Och du letar efter maximalt givna funktion. av smarta optimeringsalgoritmer är baserade på naturdjurbeteende - PSO-algoritm eller biologisk process - Genetiska algoritmer, och vissa är baserade på matematiska begrepp som härrör från människor - CMA-ES. Dessa algoritmer används inom många olika områden, bland annat finansiera Enter PSO finance eller CMA-ES finansiering i Google och du kommer att hitta mycket information. Inga uttömmande eller smarta metoder kommer att hitta globala eller lokala optimala Målet är givetvis att hitta global en, men om det finns en enda skarp topp ut av zillions parameterkombinationer , icke-uttömmande metoder kan misslyckas med att hitta denna enda topp, men när den bildas av näringsidkaren är perspektivet att hitta en enkel vass topp är oanvändbar för handel eftersom det resultatet skulle vara ins bordet är ömtåligt och inte replikerbart i verklig handel. I optimeringsprocessen letar vi ganska efter platåregioner med stabila parametrar och detta är det område där intelligenta metoder lyser. Som en algoritm som används av en uttömmande sökning ser det ut som följer. en optimeringsenheten genererar vissa vanligen slumpmässiga startpopulationer av parameteruppsättningar b-backtest utförs av AmiBroker för varje parameteruppsättning från befolkningen c resultaten av backtest utvärderas enligt algoritmens logik och ny befolkning genereras baserat på utvecklingen av resultaten d om nya bästa finns - spara det och gå till steg b tills stoppkriterierna är uppfyllda. Exempel på stoppkriterier kan innefatta en uppnående specificerad maximal iterationer b stopp om intervallet av de bästa objektivvärdena för de senaste X generationerna är noll c stopp om du lägger till 0 1 standardavvikelsevektor i någon huvudaxelriktning ändras inte värdet av objektivvärdet d others. To använda någon smart icke-uttömmande optimizer i AmiBroker behöver du spec om den optimeringsmotor du vill använda i AFL-formuläret med OptimizerSetEngine-funktionen. Funktionen väljer extern optimeringsmotor definierad av namnet AmiBroker skickas för närvarande med 3 motorer Standard Particle Swarm Optimizer spso, stamstammen och CMA-ES cmae - namnen i axlarna ska användas i OptimizerSetEngine-samtal. Förutom att välja optimeringsmotor kanske du vill ställa in några av sina interna parametrar. Använd så OptimizerSetOption-funktionen. OptimizerSetOptionsnamn, värdefunktion. Funktionen ställa in ytterligare parametrar för extern optimeringsmotor Parametrarna är motor - avhängiga Alla tre optimeringsmedel som skickas med AmiBroker SPSO, Trib, CMAE stöder två parametrar. Kör antal körningar och MaxEval maximal utvärderingstest per enskild körning. Varje parameters beteende är motorberoende, så samma värden kan och brukar ge olika resultat med olika motorer som används. Skillnaden mellan Runs och MaxEval är enligt följande. Utvärdering eller test är singl e backtest eller utvärdering av objektivt funktionsvärde RUN är en fullständig körning av algoritmfyndet optimalt värde - vanligtvis involverar många tester utvärderingar. Varje gång bara RESTARTS hela optimeringsprocessen från den nya början ny initial slumpmässig population Därför kan varje körning leda till att hitta olika lokal max min om den inte hittar global en så kör parametern definierar antal efterföljande algoritm körningar MaxEval är det maximala antalet utvärderingar bactests i en enda run. If problemet är relativt enkelt och 1000 test är tillräckliga för att hitta global max, 5x1000 är mer sannolikt att hitta globalt maximalt eftersom det finns mindre chanser att sitta fast i lokal max eftersom efterföljande körningar kommer att starta från olika initiala slumpmässiga populationer. Att välja parametervärden kan vara knepigt. Det beror på problem under testet, dess komplexitet osv. osv. Varje stokastisk icke-uttömmande metod ger dig ingen garanti för att hitta global max min, oavsett antal test om det är mindre än uttömmande e Det enklaste svaret är att specificera så många test som det är rimligt för dig när det gäller den tid som krävs för att slutföra. En annan enkel rådgivning är att multiplicera med 10 antalet tester med att lägga till en ny dimension som kan leda till att överskatta antalet test som krävs , men det är ganska säkert. Skickade motorer är konstruerade för att vara enkla att använda. Därför används rimliga standardautomatiska värden, så optimering kan vanligtvis köras utan att ange något som accepterar standardvärden. Det är viktigt att förstå att alla smarta optimeringsmetoder fungerar bäst i kontinuerlig parameter mellanslag och relativt släta objektivfunktioner Om parametrarummet är diskreta evolutionära algoritmer kan ha problem med att hitta optimalt värde. Det gäller speciellt binära parametrar - de är inte lämpade för någon sökmetod som använder gradient av objektiv funktionsförändring som de flesta smarta metoder gör om ditt handelssystem innehåller många binära parametrar, du borde inte använda smart optimizer direkt på dem Istället försöka optimera endast kontinuerliga parametrar med smart optimizer och byta binära parametrar manuellt eller via externt script. SPSO - Standard Particle Swarm Optimizer. Standard Particle Swarm Optimizer bygger på SPSO2007-kod som ska producera bra resultat förutsatt att korrekta parametrar, dvs Runs MaxEval finns för specifika problem Att välja rätt alternativ för PSO optimizer kan vara svårt, därför kan resultaten skilja sig väsentligt från fall till fall. levereras med fullständiga källkoder i ADK-undermappen. Exempelkod för Standard Particle Swarm Optimizer hittar optimalt värde i 1000 test inom sökutrymmet på 10000 kombinationer. OptimalizerSetEngine spso OptimizerSetOption Kör, 1 OptimizerSetOption MaxEval, 1000.sl Optimera s, 26, 1, 100, 1 fa Optimera f, 12, 1, 100, 1.Buy Cross MACD fa, sl, 0 Sälj Kors 0, MACD fa, sl. TRIBES - Adaptiv Parameter-mindre Partikel Swarm Optimizer. Tribes är adaptiv, parameter-mindre version av PSO partikel swarm optimering icke-uttömmande optimizer För vetenskaplig bakgrund se. I teorin borde det fungera bättre än vanlig PSO, eftersom det automatiskt kan justera svärmstorleken och algoritmstrategin för att problemet ska lösas. Praktiken visar att dess prestanda är ganska lik PSO. Plugin implementerar Tribes-D dvs dimensionslös variant Baserat på Maurice Clerc Originalkälla används med tillstånd från författaren. levereras med fullständig källkod inuti ADK-mappen. Stödda parametrar MaxEval - maximalt antal utvärderingsbacktests per kör standard 1000. Du borde öka antalet utvärderingar med ökande antal dimensioner antal optimeringsparametrar Standard 1000 är bra för 2 eller maximalt 3 dimensioner. Runs - antal körningar startar om standard 5 Du kan lämna antalet körningar till standardvärdet på 5.By standard antal körningar eller omstart är inställt på 5.Till använda Stammaroptimering behöver du bara lägga till en rad i din kod. OptimizerSetOption MaxEval, 5000 5000 utvärderingar max. CMA-ES - Covariance Matrix Adaptation Evolutionär Strategi Optimizer. CMA-ES Covariance Matrix Adaptation Evolutionary Strategy är avancerad icke-uttömmande optimizer För vetenskaplig bakgrund se Enligt vetenskapliga riktmärken överträffar nio andra, mest populära evolutionära strategier som PSO, Genetisk och Differential evolution. The plugin implementerar Global variant av sökning med flera omstartar med ökande pop ulationstorlek kommer med full källkod inuti ADK-mappen. Med standard antal körningar eller omstart är inställt på 5 Det rekommenderas att lämna standardnumret på omstart. Du kan variera det med OptimizerSetOption Kör, N-samtal, där N ska vara inom intervallet 1 10 Ange mer än 10 körningar rekommenderas inte om möjligt. Observera att varje körning använder TWICE storleken på befolkningen i tidigare körning så att den växer exponentiellt. Därför slutar med 10 körningar med befolkningen 2 10 större 1024 gånger än den första körningen. Där är en annan parameter MaxEval Standardvärdet är NOLL vilket innebär att plugin automatiskt beräknar MaxEval krävs. Det rekommenderas att INTE definiera MaxEval själv som standard fungerar bra. Algoritmen är tillräckligt smart för att minimera antalet utvärderingar som krävs och det konvergerar mycket snabbt till lösningspunkten, så ofta det hittar lösningar snabbare än andra strategier. Det är normalt att pluginhoppet kommer att hoppa över några utvärderingssteg, om det upptäcker att lösningen hittades, därför e du borde inte bli förvånad över att optimeringsfältet kan röra sig mycket snabbt vid vissa punkter. Pluggen har också förmåga att öka antalet steg över initialt uppskattat värde om det behövs för att hitta lösningen. På grund av dess adaptiva natur är den beräknade tiden kvar och eller antalet steg som visas av framdriftsdialogrutan är bara gissning vid tiden och kan variera under optimeringskursen. För att använda CMA-ES optimeringsprogram behöver du bara lägga till en rad i din kod. Detta kommer att köra optimeringen med standardinställningarna som är bra för de flesta fall. Det bör noteras, som det är fallet med många continouos-space-sökalgoritmer, påverkar den minskande stegparametern i Optimera funciton-samtal inte signifikant optimeringstider. Det enda som är viktigt är problemdimensionen, dvs antal olika parametrar antal optimera funktionssamtal Antalet steg per parameter kan ställas in utan att påverka optimeringstiden, så använd den finaste upplösningen du vill ha i teorin y algoritmen borde kunna hitta en lösning på högst 900 N 3 N 3 backtests där N är dimensionen I praktiken konvergerar det en massa snabbare. Till exempel kan lösningen i 3 N 3-dimensionellt parameterutrymme säga 100 100 100 1 miljon uttömmande steg kan kan hittas i så få som 500-900 CMA-ES-steg. Multiple-threaded individuell optimering. Börja från AmiBroker 5 70 förutom multitråds multithreadning kan du utföra multi-threaded single-symbol optimering För att komma åt denna funktionalitet, klicka på drop nerpil bredvid Optimera-knappen i fönstret Ny analys och välj Individuell optimering. Individuell optimering kommer att använda alla tillgängliga processorkärnor för att utföra enkelsymboloptimering, vilket gör det mycket snabbare än vanlig optimering. I nuvarande symbolläge utförs optimering på en symbol I alla symboler och filterlägen kommer det att behandla alla symboler i följd, dvs första fullständiga optimering för första symbolen, sedan optimering på andra symbolen, etc. Limitations 1 Custo m backtester stöds INTE 2 Smart optimeringsmotorer stöds INTE. Endast EXHAUSTIVE optimering fungerar. Vi kan eventuellt bli av med begränsning 1 - när AmiBroker ändras så anpassad backtester inte använder OLE längre men 2 är förmodligen här för att stanna länge. NeuroShell Trader och NeuroShell Day Trader-diagram kan innehålla flera diagramsidor, var och en refererar till en annan säkerhet. Kortsidor gör det möjligt för dig att visa och handla dina handelssystem över många värdepapper samtidigt. Indikatorer, handelsstrategier och förutsägelser för neuralt nätverk läggs till diagrammet är individuellt backtested, optimerat och applicerat på alla värdepapper samtidigt. Om du lägger till och tar bort kartor i flygningen, kommer NeuroShell Trader automatiskt att backtest och optimera de tillförda värdepapperen. Använd noga förutsägelser och handelssystem över hela din portfölj av aktier, valutor valutor etc. Den mest kraftfulla, men ändå lätt att använda handelsprogramvara tillgänglig för handel forex s tocks, indexes, futures och more. Copyright 2016.Låta dina system lära dig visdom av ålder och erfarenhet. World Systems Group, Inc. SÖVRA AV VERDENS S MEST RESPEKERADE FINANSIELLA FÖRETAG TRUSTERAR VÅR TEKNIK. Inte bara är detta ett av de mest kraftfulla handelsverktygen jag någonsin har stött på och jag har provat de flesta av dem, det är också det enklaste att använda. Under 15 års erfarenhet av handel och kund av flera verktyg under åren överstiger NeuroShell Trader support varje gång mina förväntningar. Möjligheten att bygga handelssystem är så enkel. Strategier som kräver inblandad programmering i annan programvara kan snabbt byggas på ett 1 1 2 sätt. Jag har provat många andra paket, men det finns få verktyg som ger dig flexibilitet att designa, optimera och implementera som NeuroShell Trader. Slutligen kunna springa de typer av test som jag har velat i åratal, men som helt enkelt tog för lång tid att vara livskraftig. Programvaran har fler möjligheter än jag troligen kommer att använda, men det är lätt att använda även för den här bonden från mittvästern, som inte har studerat matematik i 35 år. World Systems Group, Inc Låt dina system lära dig visdom av ålder och erfarenhet. Bygga börser, terminer, index och valutahandel utan UTAN kodning.

No comments:

Post a Comment