Neural network forex indikatorer
Forex prediction. This exempel är väldigt lik den föregående. Den enda skillnaden är att den visar data för valutahandel valutapar. Hur man arbetar med appleten. Om du inte har sett det första exemplet, utforska det först - grundläggande beskrivning är Tillgänglig där. I denna applet finns följande data tillgängliga Alla är slutdatum för slutet av året, dvs 313-värden Som i föregående applet har varje av följande tidsserier följande värden noll för intervall under 0, Nära värde i intervallet 0-tal värden, och igen noll efter det senast kända värdet. EURUSD - EUR USD valutakursdata. USDJPY - EUR USD valutakurspardata. USDCHF - EUR USD valutautparingspardata. EURJPY - EUR USD-valuta-valutapardata. Observera att det här exemplet är enbart som illustration. Handel med denna enkla inställning är vanligtvis inte långt ifrån att du använder förutsägelsen med det senast tillgängliga värdet. Observera att för handel måste vi utveckla regler för in - och utträde , Och att de är viktigare än exakt förutsägelse. Vänta tills appleten är laddad. Applikation och beskrivning c Marek Obitko, 2008 använder det neurala nätverket i appleten Java-klasserna BPNeuron och BPNet från NeuralWebspace, c Tom Vehovsk, 1998, som var Modifierad för syftet med denna applet. Two Forex - använder indikator neuron direktdistributionsnätet feedforward neaural nätverk, som lär sig genom återförökning av fel backpropagation Nätverket laddas genom en DLL-fil, C-källkod som är attached. Neuron-nätverket är ingenting Mer än en icke-linjär modellutgång som en funktion av ingångar Vid ingångarna serveras användardata, som exempel tidsserier. Utgångens betydelse ställs också in av användaren, till exempel signaler 1 köpa 0 sälja Strukturen av nätverket, Återigen inställd av användaren Nätverket består av en direktfördelning .- Inmatningsskiktets inmatningsskikt, vars element är inmatade. Dolda lager dolda lager, som består av beräkningsnoder som heter ne Uron s och utgångslaget, som består av en eller flera neuron s, är utbytena över nätverket. Alla noder i angränsande lager är länkade. Dessa anslutningar kallas synapser. Varje synap har en viktvikt wi, j, k, Som multipliceras med data som överförs av synapser Data flyttningar från vänster till höger är ingångar från nätverket till dess utgångar Hence namnet direktdistributionsnät Det totala provet av detta nätverk är avbildat i bilden nedan. Data bearbetas neuron s i två Steg.1 1 Alla ingångar multipliceras med lämplig vikt som du läggs till. 2 2 Sedan aktiverar den resulterande mängden hanterad aktivering neuronaktiverings - eller avfyrningsfunktionen och aktiverings - eller avfyrningsfunktionen och skickas till den enda utgången. Betydelsen av aktiveringen Funktionen neuron som är det modellerande arbetet neuron och hjärnneuronet utlöses först efter att informationen har nått ett visst tröskelvärde. I de matematiska aspekterna ger det bara nonlinearity-nätverket Wi Tvärtom skulle neuron nettoförlust vara en linjär autoregressiv modell linjär prediktionsmodell. Den vanligaste aktiveringsfunktionen neuron är en sigmoid-funktion. fx 1 1 exp - xfx 1 1 exp - x. Tröskeln för aktivering av denna funktion är 0 Denna tröskel kan Skiftas på den horisontella axeln på bekostnad av en ytterligare ingångs-neuron-biasingång, och kallas input bias bias-ingången, som tilldelas en viss vikt på samma sätt som andra ingångar neuron. Thus, antalet ingångar, lager, neuron S i varje lager och vikten av ingångar neuron s hela neuron nätverk, dvs icke-linjär modell, som det skapar För att använda denna modell behöver du veta vikten Vikten beräknas genom att träna nätverket på tidigare data, dvs med någon tidigare ingång Data var kända värden på utsignalen Vikten av nätverket är optimerade för att matcha dess utmatning med testlösningen. Vanligtvis inmatade ingångar till nätverket flera uppsättningar av inmatning och motsvarande utgångsdata och beräknat medelvärde d Förflyttning av produktionen från nätverksprovningen Utbildningsnätet är att minska problemet genom att optimera vikterna Det finns flera optimeringsmetoder, bland annat den huvudsakliga vägen bakåtförökning av fel ALO och metoden för genetisk förbättring. Två funktioner Tåg - och testtåg är utformat för att träna nätverket för att tillhandahålla in - och utdata. Testet är för att beräkna utgångsdata baserat på vikterna erhållna efter körning. Ingång grön färg och utdata blå parametrar av funktionen Train är. double inpTrain - inmatning äldre först dubbel utTarget - Impressum äldsta första dubbla outTrain - avslutar nätverket efter träning int ntr - antalet träningsuppsättningar av inmatning ex UEW - Manövrering nyckel Externa värden för att initialisera vikterna 1 använd extInitWt, 0 använd slumpmässiga nummer extInitWt - ursprungliga värden för vikter dubbelt tränadeWt - värdena på vikter efter träning int numLayers - antal lager i nätverket inklusive inmatning, dold och utmatning int lSz - array size numLayers , Som behöll antalet neuron s i varje lager lSz 0 lSz 0 specificerar antalet nätverksingångar int OAF - en nyckelfunktion vid aktivering av utgångs neuron s 1 funktion aktiverad, 0 nej dubbel LR-hastighetsutbildning dubbel MF - ögonblicket Av inlärningsfrekvens int nep - det maximala antalet träningssteg epok Epok består av att kontrollera alla träningssatserna dubbla maxMSE - medelvärde där lärandet slutar. Ingång grönt och ut Sätt blåa parametrar av funktionen Test är. double inpTest - Inmatningsdata Äldre först dubbel utTest - Impressum Int Ntt - Satser av in - och utdata dubbla extInitWt - Ursprungliga värden av vikter NumLayers - Antal lager i nätverket inklusive ingång, Dold och utgång Int lSz - array size numLayers, som behöll antalet neuron s i varje lager l lSz 0 specificerar antalet nätverksingångar int OAF - en nyckelfunktion vid aktivering av utgångs neuron s 1 funktion aktiverad, 0 no. Using aktivering av Utgående neuron s beror på utmatningens natur Om utgångssignalerna i nätverket är binomiala 0 1 måste du använda aktiveringsfunktionen OAF 1 Om utgången är en förutsägelse av pris krävs inte aktiveringsfunktionen i utmatningsskiktet OAF 0.Exemplar av indikatorer som används neuron Network. BPNN - förutsäga framtida priser Nätverksinmatningsparametrar är de relativa ökningarna i priserna. xi Öppna testfältet Open testbar fördröjning i -1 0. varför dröjsmål jag tagit från Fibonacci-serien Net Arbetsproduktionen förutspås en relativ ökning av framtida priser Aktiveringsfunktionen i utgångslaget är avaktiverat. Inmatningsparametrar är en indikator extern int lastBar - Antalet sista streck externt int FutBars - Antalet framtida förutsägda streck extern Int NumLayers - Antal lager I nätverket inklusive inmatning, dold och utmatning extern int numInputs - antalet nätverksingångar extern int numNeurons1 - antalet neuron s i ett lager nummer 1 extern int numNeurons2 - antalet neuron s i lagret nummer 2 extern int numNeurons3 extern int numNeurons3 extern Int numNeurons4 extern int numNeurons5 extern int ntr - antal träningssatser av ingångsutgång extern dubbel LR - lärarnätets hastighet extern dubbelt MF-koefficient för tidsinlärningsnätet externt intepunkt - det maximala antalet träningssteg epoks. extern Int maxMSEpwr - exponent används för att beräkna det maximala tillåtna genomsnittliga kvadratfelet lärande maxMSE 10 maxMSEpwr. Buy-Sälj - Köp Sälj Köp-Sälj - Prediktiv Indicato R köp säljsignaler Som i föregående exempel serverades inmatningsnätet. xi Öppna testfältet Öppna teststartsfördröjningen i -1 0 xi Öppna testfältet Öppna teststartsfördröjningen i -1 0. För barer som tidigare fått signal för att köpa eller sälja Dessa Sista signalerna är idealiska som ingångssignaler för att få ett givet vinst Nätverksutgångssignal är 1 eller 0 köp sälja Utgångslagsaktiveringsfunktionen extern int lastBar - Antal sista streck extern int minProfit - Minsta vinst för att hitta den perfekta posten Peka på det förflutna externa dubbla tröskelvärdet - tröskeln för att känna igen utsignalerna som 0 eller 1 extern int numLayers - antal lag i nätverket inklusive inmatning, dold och utmatning extern int numInput - antalet nätverksinmatningar. Extern int numNeurons1 - the Antal neuron s i ett lager nummer 1 extern int numNeurons2 - antalet neuron s i lagret nummer 2 externt int numNeurons3 extern int numNeurons3 extern int numNeurons4 extern int numNeurons4 extern int numNeurons5 extern int ntr - t Han antal träningssatser av ingångsutgång beror på antalet köpförsäljningssignaler i det förflutna, 0 väljer alla giltiga signaler extern dubbelt LR - lärarnätets hastighet extern dubbelt MF-koefficient för tidsinlärningsnätet externt int Maximalt antal träningssteg epoker extern int maxMSEpwr - exponent används för att beräkna det maximala tillåtna medelvärdet för felinlärning maxMSE 10 maxMSEpwr. Arrow till höger om de vertikala gröna linjerna anger köpförsäljningssignaler som genereras av nätverket för att testa framtida staplar Pilarna Till vänster visar den optimala ingångspunkten i det förflutna. Installering av files. Copy bifogad DLL-fil i C-programfilerna MetaTrader 4 expertbibliotek. Anger användningen av DLL i metatrader Verktyg - Alternativ - Expert Advisors - Tillåt DLL-import. Om DLL-filen fungerar inte, kompilera dig själv Alla nödvändiga filer finns i Hybrid Neural Network Stop-and-Reverse-strategier för Forex. by Michael R Bryant. Neurala nätverk har använts i tradi Ng system i många år med varierande grad av framgång Den främsta attraktionen är att deras olinjära struktur bättre kan fånga komplexiteten i prisrörelsen än standard, indikatorbaserade handelsregler En av kritiken har varit att neurala nätverksbaserade handelsstrategier tenderar att Att vara överpassad och därför inte fungera bra på nya data En möjlig lösning på detta problem är att kombinera neurala nätverk med regelbaserad strategilogik för att skapa en hybrid typ av strategi Denna artikel visar hur det kan göras med hjälp av Adaptrade Builder . I synnerhet kommer denna artikel att illustrera followingbining neurala nätverket och regelbaserad logik för handelsposter. En tre-segmentsdata kommer att användas, med det tredje segmentet som används för att validera de slutliga strategierna. Den resulterande strategiska koden för både MetaTrader 4 och TradeStation kommer att visas, och det kommer att påvisas att valideringsresultaten är positiva för varje plattform. Neurala nätverk som Trade Entry Filters. Math. Ematiskt är ett neuralt nätverk en icke-linjär kombination av en eller flera viktiga ingångar som genererar ett eller flera utgångsvärden. För handel används ett neuralt nätverk vanligtvis på ett av två sätt 1 som en förutsägelse för framtida prisrörelse eller 2 som en indikator Eller filter för handel Här kommer dess användning som indikator eller handelsfilter att betraktas. Som en indikator fungerar ett neuralt nätverk som ett ytterligare villkor eller filter som måste uppfyllas innan en handel kan matas in. Ingångarna till nätverket är typiskt andra Tekniska indikatorer, såsom momentum, stokastik, ADX, glidande medelvärden och så vidare, samt priser och kombinationer av föregående ingångar är skalade och det neurala nätverket är utformat så att utgången är ett värde mellan -1 och 1 en Tillvägagångssätt är att tillåta en lång ingång om utgången är större än eller lika med ett tröskelvärde, t. ex. 0 5, och en kort post om utgången är mindre än eller lika med negativet av tröskeln, t ex -0 5 Detta villkor skulle Vara i en Om det fanns ett långt ingångsförhållande, skulle det vara sant och den neurala nätverksutgången måste åtminstone vara lika med tröskelvärdet för en lång ingång. När du ställer in ett neuralt nätverk , Skulle en näringsidkare normalt vara ansvarig för att välja inmatningar och nätverkstopologi och för att träna nätverket, vilket bestämmer värdena för optimala vikter. Såsom kommer att visas nedan utför Adaptrade Builder dessa steg automatiskt som en del av den evolutionära byggprocessen som mjukvaran är Baserat på Använda det neurala nätverket som ett handelsfilter gör att det enkelt kan kombineras med andra regler för att skapa en hybridhandelstrategi, en som kombinerar de bästa egenskaperna hos traditionella regelbaserade tillvägagångssätt med fördelarna med neurala nätverk. Som ett enkelt exempel, Builder kan kombinera en glidande genomsnittlig crossover-regel med ett neuralt nätverk så att en lång position tas när det snabba rörliga genomsnittet passerar över den långsamma rörelsen Ålder och den neurala nätverksproduktionen är vid eller över dess tröskel. Stopp-och-omvänd handelsstrategier. En stopp-och-omvänd handelsstrategi är en som alltid finns på marknaden, vare sig lång eller kort. Strängt sett, stop-and-reverse Innebär att du byter handel när din stopporder är slagen. Jag använder den som en kort hand för någon handelsstrategi som vänder sig från lång till kort till lång och så vidare, så att du alltid är på marknaden. Med denna definition, Det är inte nödvändigt för orderna att vara stopporder. Du kan ange och vända med hjälp av marknads - eller gränsorder också. Det är inte nödvändigt att varje sida använder samma logik eller till och med samma ordertyp. Till exempel kan du ange lång och avsluta Kort på en stopporder och ange kort och avsluta länge på en marknadsordnad med olika regler och villkor för varje utträde. Detta skulle vara ett exempel på en asymmetrisk stopp-och-omvänd strategi. Den främsta fördelen med en stopp-och-omvänd Strategi är att genom att alltid vara på marknaden, du nev Saknar några stora drag En annan fördel är enkelhet När det finns separata regler och villkor för att komma in och utträda handel är det mer komplexitet och mer som kan gå fel. Kombinera poster och utgångar innebär att färre tidsbeslut måste fattas, vilket kan betyda färre misstag . Å andra sidan kan det hävdas att de bästa förutsättningarna för att utträda en handel är sällan detsamma som de för att komma in i motsatt riktning att ingående och existerande branscher i sig är separata beslut som därför bör använda separata regler och logik. En annan potentiell nackdel Att alltid vara på marknaden är att strategin kommer att handla genom varje öppningsgap Ett stort öppningsgap mot positionen kan innebära en stor förlust innan strategin kan vända strategier som går in och ut mer selektivt eller att utgången vid slutet av Dag kan minimera effekten av öppningsluckor. Eftersom målet är att bygga en forexstrategi, är MetaTrader 4 MT4 ett uppenbart val för trading pla Tform givet att MetaTrader 4 är utformad främst för forex och används ofta för handel på dessa marknader se till exempel MetaTrader vs TradeStation A Language Comparison Men under de senaste åren har TradeStation riktat in valutamarknaden mycket mer aggressivt Beroende på din volym och Eller kontonivå är det möjligt att handla forexmarknaderna via TradeStation utan att ådra några plattformskostnader eller betala några provisioner. Spread är enligt uppgift tätt med god likviditet på de stora valutaparen. Av dessa skäl var båda plattformarna riktade mot detta projekt. Vissa problem uppstår När du riktar in flera plattformar samtidigt. För det första kan uppgifterna vara olika på olika plattformar, med tidsskillnader, prisnoteringar för vissa staplar, volymer och tillgängliga datumintervall. För att jämföra över dessa skillnader erhölls data från båda plattformarna och strategierna Byggdes över båda dataserierna samtidigt De bästa strategierna var därför de som arbetar Redogörs väl för båda dataserierna trots skillnader i data. De datainställningar som används i Builder visas nedan i Fig. 1 Som kan härledas från tabellen Market Data i figuren riktades euro-dollarns valutamarknad med EURUSD med en stångstorlek Av 4 timmar 240 minuter Andra barstorlekar eller marknader skulle ha tjänat lika bra jag kunde bara skaffa så mycket data via min MT4-plattform som anges av datumintervallet som visas i fig 1 dataserie 2, så samma datumintervall användes Vid erhållande av ekvivalenta dataserier från TradeStation användades dataserie 1 80 av data för Building kombinerad in-sample och out-of-sample med 20 6 20 14 till 2 10 15 avsatt för validering 80 av original 80 var då Satt till in-sample med 20 satt till out-of-sample, som visas i Fig. 1 Bidra spridningen var inställd till 5 pips och handelskostnader på 6 pips eller 60 per fullstorlek 100 000 aktier antogs per round - Sväng Båda dataserierna ingick i byggnaden, vilket indikeras av kontrollerna i l Fält 1 Marknadsdata-inställningar för att bygga en Forex-strategi för MetaTrader 4 och TradeStation. Ett annat potentiellt problem när du riktar in flera plattformar är att Builder är utformad för att duplicera hur varje plattform som stöds beräknar dess indikatorer, vilket Kan innebära att indikatorvärdena kommer att vara olika beroende på vilken plattform som väljs. För att undvika denna möjliga källa till skillnad, bör alla indikatorer som utvärderas annorlunda i MetaTrader 4 än i TradeStation elimineras från byggnaden, vilket innebär att följande indikatorer bör undvikas. Alla andra indikatorer som är tillgängliga för båda plattformarna beräknas på samma sätt på båda plattformarna TradeStation innehåller alla indikatorer som finns tillgängliga i Builder, medan MetaTrader 4 därför inte innehåller endast indikatorer som finns tillgängliga på båda plattformarna, MetaTrader 4 Plattformen ska väljas som kodtyp i Builder som automatiskt kommer att ta bort Några indikatorer från byggsatsen som inte är tillgängliga för MT4, vilket kommer att lämna indikatorerna som finns tillgängliga på båda plattformarna Dessutom har jag, eftersom jag märkte skillnader i volyldata från varje plattform, avlägsnat alla volymberoende indikatorer från byggsatsen Slutligen avlägsnades tidsindikatorn på grund av skillnader i tidszoner mellan datafiler. I fig 2 nedan visas listan över indikatorer som används i byggsatsen sorterad efter om indikatorn har bedömts av eller inte Byggprocess Överväg kolumn Indikatorerna borttagna av hänsyn till ovanstående skäl visas överst i listan. De återstående indikatorerna, som börjar med Simple Mov Ave, var alla en del av byggsatsen. Figur 2-indikatorval i byggare, som visar indikatorerna Utvärderingsalternativen som används i byggprocessen visas i Fig. 3 Såsom diskuterades valdes MetaTrader 4 som kodutgångsval Efter strategier är buil T i Builder kan något av alternativen på fliken Evalueringsalternativ, inklusive kodtypen, ändras och strategierna utvärderas, vilket också kommer att skriva om koden på vilket språk som är valt. Den här funktionen användes för att hämta TradeStation-koden för Den slutliga strategin efter strategierna byggdes för MetaTrader 4.Figure 3-utvärderingsalternativen i Builder för EURUSD-forexstrategin. För att skapa stop-and-reverse-strategier, togs alla exittyper bort från byggsatsen som visas nedan i Fig 4 All Tre typer av orderingång - marknad, stopp och begränsning - lämnades överväga, vilket innebär att byggprocessen skulle kunna överväga någon av dem under byggprocessen. Figur 4 Ordertyper valdes i Builder för att skapa en stopp-och-omvänd Strategy. The Builder-mjukvaran genererar automatiskt regelbaserade logiska förhållanden för inmatning och eller utgång. För att lägga till ett neuralt nätverk i strategin behöver den bara välja alternativet Inkludera ett neuralt nätverk i inmatningsförhållandena på strategin Ions-fliken, som visas nedan i Fig. 5. De neurala nätverksinställningarna lämnades till deras standardvärden. Som en del av stop-and-reverse-logiken ställdes alternativet Market Sides till Long Short och alternativet att vänta på avsluta innan nya handeln startades Var avmarkerad Sistnämnden är nödvändig för att möjliggöra att orderingången lämnar den aktuella positionen vid en omkastning. Alla övriga inställningar lämnades vid standardinställningarna. Alternativ 5 Strategi valts i Builder för att skapa en hybridstrategi med både regelbaserade och neurala nätverksförhållanden. Den evolutionära karaktären av byggprocessen i Builder styrs av träningen som beräknas utifrån målen och villkoren som definieras på fliken Metrics, som visas nedan i Fig. 6 Byggnadsmålen behölls enkelt för att maximera nettovinsten samtidigt som komplexiteten minimeras, vilket Fick en liten vikt i förhållande till nettovinsten Mer betoning på byggnadsförhållandena, som inkluderade korrelationskoefficienten och betydelsen för den allmänna strategikvaliteten, som vi Ll som medelstängerna i branschen och antalet branscher. I början var endast de genomsnittliga staplarna i branschen inkluderade som ett byggnadsförhållande. I några av de tidiga byggnaderna blev nettovinsten gynnad över handelslängden så numret - värdet av metrisk var tillsatt Det angivna intervallet för antalet branscher mellan 209 och 418 motsvarar genomsnittliga handelslängder mellan 15 och 30 bar baserat på antalet barer under byggnadsperioden. Som ett resultat av detta lägger man till den här metriska tonvikten På handelslängdsmålet, vilket resulterade i att fler medlemmar av befolkningen hade det önskade utbudet av handelslängder. Figur 6 Bygga mål och villkor som anges på fliken Metrics bestämma hur träningen beräknas. Villkoren för att välja toppstrategier duplicerar byggnadsförhållandena Förutom att de översta strategierna är utvärderade över hela datamängden, inklusive valideringssegmentet, vilket är separat, snarare än bara under byggnadsperioden, vilket är fallet för builen D villkor De bästa strategierna används av programmet för att avsätta alla strategier som uppfyller alla förhållanden i en separat population. De slutliga inställningarna görs på fliken Byggalternativ, som visas nedan i Fig. 7 De viktigaste alternativen här är de Befolkningsstorlek, antal generationer och alternativet att återställa baserat på externt resultat. Befolkningsstorleken valdes för att vara stor nog för att få bra mångfald i befolkningen samtidigt som den fortfarande är tillräckligt liten för att bygga in en rimlig tid Antalet generationer var baserat på hur lång tid det tog under några preliminära byggnader för resultaten att börja konvergera. Figur 7 Byggalternativ inkluderar befolkningsstorlek, antal generationer och alternativ för återställning av befolkningen baserat på urvalet Funktionen. Alternativet att återställa på OOS-prestanda utanför proverna startar byggprocessen efter det angivna antalet generationer om det angivna villkoret är uppfyllt i detta fall kommer befolkningen att Återställas om nettoresultatet utanför provet är mindre än 20 000 Detta värde valdes utifrån preliminära tester för att vara tillräckligt högt, vilket det förmodligen inte skulle uppnås. Följaktligen upprepades byggprocessen var 30: e generationen tills manuell Stoppad Detta är ett sätt att låta programmet identifiera strategier som baseras på toppstrategierna under en längre tidsperiod. Periodiskt kan Topstrategies befolkning kontrolleras och byggprocessen avbröts när lämpliga strategier finns. Notice som jag släckte - prov i citat När tidsperioden utanför provet används för att återställa befolkningen på detta sätt är perioden utanför provtagningen inte längre existerande. Sedan denna period används nu för att styra byggprocessen , Det är effektivt en del av provperioden. Det är därför lämpligt att avsätta ett tredje segment för validering, vilket diskuterades ovan. Efter flera timmars bearbetning och ett antal automatiska ombyggnader fanns en lämplig strategi i Toppstrategipopulationen Den stängda kurvan för handelskapital visas nedan i figur 8 Egenkapitalkurvan visar konsekvent prestanda över båda datasegmenten med ett adekvat antal branscher och i huvudsak samma resultat över båda dataserierna. Figur 8 Closed-trade equity curve för EURUSD Stop-and-reverse-strategi. För att kontrollera strategin under valideringsperioden, kontrolleras datumet på fliken Marknader, se figur 1, ändras till slutdatumet för data 2 11 2015 och strategin utvärderades genom att välja utvärdera Kommandot från strategismenyn i Builder Resultaten visas nedan i Fig. 9 Valideringsresultaten i den röda rutan visar att strategin höll på data som inte användes under byggprocessen. Figur 9 Closed-trade equitykurva för EURUSD-stopp - referensstrategi, inklusive valideringsperioden. Den slutliga kontrollen är att se hur strategin utfördes på varje dataserie separat med hjälp av kodutmatningsalternativet för den plattformen. Detta är nödvändigt eftersom en S förklaras ovan kan det finnas skillnader i resultaten beroende på 1 kodtypen och 2 dataserierna Vi måste verifiera att de valda inställningarna minimerade dessa skillnader, som avsedda att testa strategin för MetaTrader 4, dataserien från TradeStation Avmarkerad på fliken Markörer och strategin revurderades. Resultaten visas nedan i Fig 10, vilket duplicerar bottenkurvan i Fig. 9.Figur 10 Closed-trade equitykurva för EURUSD-stopp-och-omvänd strategi, inklusive Valideringsperioden för MetaTrader 4. För att testa strategin för TradeStation, valdes dataserien från TradeStation och serien för MetaTrader 4 avmarkerades på fliken Marknader. Kodutgången ändrades till TradeStation och strategin var åter - evaluerade Resultaten visas nedan i Fig 11 och verkar vara väldigt lik den mellanliggande kurvan i fig 9, som förväntat. Figur 11 Closed-trade equity kurva för EURUSD stopp-och-omvänd strategi, inklusive validering Period för TradeStation. Koden för båda plattformarna finns nedan i Fig 12 Klicka på bilden för att öppna kodfilen för motsvarande plattform. Genom att undersöka koden avslöjar att den regelbaserade delen av strategin använder olika volatilitetsrelaterade förhållanden för den långa Och korta sidor De neurala nätverksingångarna består av en mängd olika indikatorer, inklusive veckodag, trend ZLTrend, intraday high, oscillatorer InvFisherCycle, InvFisherRSI, Bollinger-band och standardavvikelse. Strategiens hybridkaraktär kan ses direkt i Koddeklarationen från TradeStation-koden. Om EntCondL och NNOutput 0 5 börja sedan Köp EnMark-L NShares-aktier nästa bar på marknaden. Den variabla EntCondL representerar regelbaserade inmatningsförhållanden och NNOuput är utgången från det neurala nätverket. Båda förhållandena har Att vara sant att placera den långa postordern. Den korta inmatningsvillkoren fungerar på samma sätt. Steg 12 Handelsstrategikod för EURUSD-stopp-och-omvänd strategi kvar, MetaTrader 4 righ T, TradeStation Klicka på siffran för att öppna motsvarande kodfil. Ladda ner en Builder-projektfil som innehåller de inställningar som beskrivs i den här artikeln. Den här artikeln tittade på processen att bygga en hybridregelbaserad neuralt nätverksstrategi för EURUSD med hjälp av en stopp - och - revers alltid i marknadsinriktningen med Adaptrade Builder Det visades hur strategikoden kan genereras för flera plattformar genom att välja en gemensam delmängd av indikatorerna som fungerar på samma sätt i varje plattform. De inställningar som krävs för att generera strategier som går från lång till Kort och bakåt beskrevs och det visades att den resulterande strategin utfördes positivt på ett separat, valideringssegment av data. Det verifierades också att strategin genererade liknande resultat med data - och kodalternativet för varje plattform. Som diskuterats ovan stoppades - och-bakåtriktat tillvägagångssätt har flera nackdelar och kan inte vädja till alla. En all-in-market-strategi kan dock vara mer attraktiv med Valutatransaktioner eftersom valutamarknaden handlar dygnet runt Som ett resultat är det inga öppningsöppningar och handelsorderna är alltid aktiva och tillgängliga för att vända handeln när marknaden förändras. Användningen av intradagdata 4 timmars barer gav mer Datafält för användning i byggprocessen, men var annars ganska godtyckligt, eftersom strategins strategiska karaktär alltid innebär att handeln transporteras över natten. Byggprocessen fick utveckla olika förutsättningar för att komma in i långa och korta, Vilket resulterar i en asymmetrisk stop-and-reverse-strategi Trots namnet går den resulterande strategin i både långa och korta affärer på marknadsordningar, även om marknads-, stopp - och begränsningsorderna alla betraktades av byggprocessen oberoende av varje sida. I praktiken reverseras Från lång till kort skulle innebära att sälja kort två gånger antalet aktier på marknaden eftersom strategin var för länge, t ex om den nuvarande långa positionen var 100 000 aktier skulle du sälja korta 200,0 00 aktier på marknaden Likaså om den nuvarande korta positionen var 100 000 aktier skulle du köpa 200 000 aktier på marknaden för att vända från kort till lång. En kortare prishistoria användes än vad som var idealisk. Resultaten var dock positiva på valideringssegmentet, Vilket tyder på att strategin inte var överpassad. Detta stödjer tanken att ett neuralt nätverk kan användas i en handelsstrategi utan att nödvändigtvis överdriva strategin på marknaden. Strategin som presenteras här är inte avsedd för faktisk handel och testades inte i verklig handel - spårning eller - handel Men denna artikel kan användas som en mall för att utveckla liknande strategier för EURUSD eller andra marknader. Som alltid bör varje handelsstrategi du utvecklar testas noggrant i realtidsspårning eller på separata data för att validera resultaten Och att bekanta sig med strategiens handelsegenskaper före live trading. This artikel förekommit i februari 2015-numret av Adaptrade Software nyhetsbrevet. HYPOTETISKA ELLER SIMULERADE RESULTATRESULTAT HAR SÄRSKILDA BEGRÄNSNINGAR TILL NÅGOT FAKTISKA PRESTANDARDREKORD, SIMULERADE RESULTAT FÖRSÄKRAR INTE DIREKT HANDEL, SOM HANDLINGARNA INTE FAKTISKT UTFÖRS TILL RESULTATEN KAN HÄR FÖRSÖKAS ELLER ÖVER KOMPENSERAS FÖR KONSEKVENSEN, OM NÅGOT, AV SÄRSKILDA MARKNADSFAKTORER, SOM MASKET OM LIKVIDITETSIMULERADE HANDELSPROGRAM I ALLMÄNNA ÄR ÄVEN FAKTISKT ATT DE HAR DESIGNERAT MED FÖRSÄLJNINGEN AV HINDSIGHT NÅGOT REPRESENTATION SKA GÖR ATT ANTAL RÄKTER ELLER ÄR LIKTIGT ATT SKAFNA RESULTAT ELLER TABELL SOM LIKNANDE TILL SHOWN. If du vill bli informerad om nya nyheter, nyheter och specialerbjudanden från Adaptrade Software, var vänlig och gå med i vår e-postlista Tack.
Comments
Post a Comment