Patroonaanpassingsconcept EA
Page 1 of 637 123 ... LastLast
Results 1 to 10 of 61

Thread: Patroonaanpassingsconcept EA

  1. #1
    1 Bijlage(n) Er is niet veel activiteit geweest in de Old Dogs with New Tricks-thread, behalve de berichten die afbreuk beginnen te doen aan het oorspronkelijke onderwerp. Ik heb in de tekenverzamelingslogboeken opgemerkt dat er deze week 110 unieke gebruikers waren, dus ik denk dat deze mensen geld verdienen.

    Dit is een nieuwer concept EA dat is geprogrammeerd om zijn eigen kaarspatronen te vinden. Het algoritme voor het vinden van patronen is eenvoudig: het controleert de vorige x gesloten balken en genereert een string, zoiets als LLDSSL, wat betekent dat de balken van rechts (meest recent) naar links lang, kort, kort, doji, lang, lang waren.

    De EA scant vervolgens de kaartgeschiedenis op zoek naar een patroon van balken met exact dezelfde volgorde. De EA controleert x balken na de reeks om te zien of die balk lang of kort was. De resultaten worden vervolgens toegevoegd aan de statistieken die door de EA worden gegenereerd.

    Als de kans dat een gebeurtenis plaatsvindt groter is dan de drempel, zal de EA de handel dienovereenkomstig nemen.


    Instellingen:
    externe tekenreeks Opmerking1 = == Hoofdinstellingen ==; extern int MagicNumber = 0;Dit nummer moet uniek zijn als er meerdere EA's op een terminal zijn aangesloten. extern bool SignalsOnly = False;Indien ingesteld op waar, zal de EA u alleen waarschuwen voor een ruil met een combinatie van de onderstaande waarschuwingen. externe bool Alerts = False;Indien ingesteld op true, stuurt de EA een pop-upwaarschuwing wanneer er een handelssignaal binnenkomt. extern bool SignalMail = False;Indien ingesteld op waar, stuurt de EA u een e-mail (ervan uitgaande dat u uw e-mail hebt ingesteld in uw MT4-terminal.) wanneer een handelssignaal binnenkomt. extern bool PlaySounds = False;Indien ingesteld op true, speelt de EA het bestand alerts.wav af wanneer er een ruilsignaal binnenkomt. extern bool ECNBroker = False;Sommige makelaars vereisen dat EA's eerst een transactie plaatsen en vervolgens de transactie aanpassen met stoploss en takeprofit. Als uw makelaar dit vereist, stelt u deze waarde in op True. extern bool EachTickMode = True;Indien ingesteld op true, zal de EA onmiddellijk handelen als het een signaal ziet. Indien ingesteld op false, neemt de EA alleen een ruil aan als er een signaal is aan het einde van de balk. extern double Lots = 0;Vaste lotgrootte extern bool MoneyManagement = False;Activeert/Deactiveert de functie lotgrootte. extern int Risico = 0;Het percentage van uw beschikbare marge dat u bereid bent in een transactie te steken. extern int Slippage = 5;Maximale slippage toegestaan ??????bij het plaatsen van een bestelling. extern int StopLoss = 100;Harde stoploss in pips. extern int TakeProfit = 60;Moeilijke winst nemen in pips. externe string Opmerking2 = == Patrooninstellingen ==; extern int NumberOfBars = 4;Het aantal te gebruiken maten bij het genereren van een patroon. extern int PredictionBar = 1;Het aantal streepjes achter een patroontekenreeks om een ??????voorspelling te controleren. extern int HistoryBars = 500;Het aantal balken dat moet worden gecontroleerd bij het zoeken naar overeenkomende patroontekenreeksen. Stel in op 0 om alle balken te gebruiken. extern int TimeLimit = 10;Het maximale aantal seconden nadat de huidige balk is geopend om een ??????transactie te plaatsen. extern int BarsClose = 1;Het aantal bars nadat een transactie is geopend om een ??????transactie te sluiten. externe dubbele drempel = 50,0;Het minimumpercentage dat nodig is om een ??????transactie te plaatsen. extern bool ReverseTrades = True;Verandert lange signalen in korte signalen en korte signalen in lange signalen. Opmerking: deze EA is zeer experimenteel en heeft nog niet bewezen winstgevend te zijn. Gebruik op eigen risico.

    https://www.aforexa.com/attachments/...8500707996.mq4

  2. #2

    Quote Originally Posted by ;
    Nou, 127 (of beter gezegd 128) betekent dat we 7 verschillende booleaanse waarden hebben om te gebruiken... Stel je voor dat we het patroon dat ik hierboven heb beschreven als basis nemen, dan hebben we 4 bits van de 7 gebruikt... dus men zou nog 3 bits kunnen gebruiken om b.v. de lengte van de kaars afhankelijk van ATR of iets dergelijks...
    Met behulp van het patroonschema van
    https://www.aforexa.com/trading-syst...-mistakes.htmland do not regard volatility at first EURUSD would generate for the last 1000 days the following string: 13256276506821245276424622681663426726242246762265 34324625322866507255476753621227547261768524416511 27256234164246630353207568583235667616266311853625 23654542876622235253753341625163345266315667005406 36010266246473613322665741266216066576051642642156 52556462531242778170671211200663216040466185316864 54443272326546652623222065867625318403666664146167 56576225602377171663260660062626765267531601565022 76203657124312766662664175627524526062616457212446 16716067066647436548633858240661452306086566561163 22272321672063205626623455231556622621673562766357 62131636182316221772182825528342283162117552102224 20642683628841252427751485155223213682564275286174 55663272260316166366652886757182164212416226106882 26625641417025735627115327276337366212652170602202 06211227366236573244627532366660026676242165622765 72626735621351613463164157452366142254462266662446 5326837663833661065541172467162666313130525 26271645615267160160620465821274272524556775083532 66474262247422226352156111262235580713623513362652 2322563

  3. #3

    Quote Originally Posted by ;
    Hoog - Open geeft een pip-waarde terug, laten we dat HO noemen Hoog - Sluiten geeft een pip-waarde terug... noem dat HC Laag - Open = LO Laag - Sluiten = LC Als ik een string zou genereren met deze waarden. Ik zou StringConenate(HO , HC , LO , LC) gebruiken. De resulterende string is een 4-co�rdinaatpunt dat kan worden uitgezet in een 4-d-ruimte. Elk punt stelt exact ��n staaf voor, geen enkele andere staaf heeft die co�rdinaat. Wat betreft deel a), ik vond slechts 20.000 unieke bars tegen 3 miljoen, ik ben er vrij zeker van dat bars zichzelf herhalen. Wat betreft deel b) De huidige patroonbevinding...
    Ok, dat is nu duidelijk... Op deze manier beschrijf je staven door hun absolute positie in de grafiek weg te laten, die wordt gegeven door OHLC... Leuke manier... Toch zei je dat je elke waarde zou normaliseren, dat het past op 255 mogelijke waarden... dat betekent: HO - maximaal 255 mogelijkheden CL - maximaal 255 mogelijkheden OC - max. 255 evt. Al met al zouden we ongeveer 16 miljoen verschillende staaftypes hebben die uiteindelijk slechts in ��n bit verschillen (wat betekent dat kaars x hetzelfde is als kaars y maar iets langer)... Stel je nu voor, elke staaf is gelijkmatig verdeeld (weet niet of mijn vertaling is correct - ik bedoel, de kans dat elke balk verschijnt is gelijk aan elke andere balk) dat betekent dat je 4 weken moet wachten in je tick-database om alle mogelijke balk te zien... Ok, de aanpak van dit project is zelfs dat er geen uniforme verdeling is - niettemin moet je met deze diepe classificatie miljarden teken bekijken om enkele geschikte patronen te vinden...

  4. #4

    Quote Originally Posted by ;
    Verwijder de absolute waarde in #3 en je hebt #4 niet nodig, toch?
    Rechts. Het enige probleem is het geheugengebruik. Maar ik weet niet zeker of er iets korter is in MQL4 dan een geheel getal van 4 bytes.

  5. #5

    Quote Originally Posted by ;
    Ronald, wat vind je van deze set: 1. Hoog - Open 2. Sluiten - Laag 3. Abs(Close - Open) 4. wat groter is Open of Close (0 - Open gt; Close; 1 - Open lt; Close ) U kunt slechts 1 bit gebruiken om nee weer te geven. 4. Wat meer is visualisatie kan ook makkelijker. Laten we zeggen dat we de volgende informatie over de balk hebben (op deze manier slaan we de gegevens op): S1 = Hoog - Open S2 = Sluiten - Laag S3 = Abs (Sluiten - Openen) S4 =...
    Verwijder de absolute waarde in #3 en je hebt #4 niet nodig, toch?

  6. #6

    Quote Originally Posted by ;
    IMHO, je wilt voorzichtig zijn met het identificeren van te veel verschillende patronen (bijvoorbeeld: 255)....
    In de statistiek heb je bij het berekenen van directe getallen een minimale steekproefomvang van 30 nodig om de minimale normale curve te bereiken. Bij het vergelijken van verhoudingen heb je minimaal 15 nodig om de minimale normale curve te bepalen. Je hebt gelijk, ik heb een flinke sample nodig, en er is geen reden waarom ik dat niet kan inbouwen als een filter voor de EA. Onthoud dat ik niet ge�nteresseerd ben in elk afzonderlijk patroon, ik ben alleen ge�nteresseerd in de voorspelbare patronen.

  7. #7
    IMHO, u wilt voorzichtig zijn met het identificeren van te veel verschillende patronen (bijvoorbeeld: 255). De reden is dat u statistische validiteit wilt hebben voordat u de trekker overhaalt bij handelsbeslissingen. Om statistische validiteit te bereiken, moet elk patroon een aanzienlijk aantal keren voorkomen voordat u er zinvolle conclusies uit kunt trekken. Naarmate u elke prijssectie in kleinere stukjes van de statistische taart begint te snijden, duurt het lang voordat u genoeg exemplaren van een bepaald segment ziet om geldige trends te identificeren. Laten we ons bijvoorbeeld voorstellen dat u na een aanzienlijke periode 6 exemplaren van (255)(202)(041)(132) heeft gevonden en van die 6 exemplaren, daarna 5 keer de prijs verhoogd met 50 pips, en 1 keer het daalde daarna met 20 pips. Wat zegt dit over de geldigheid van het patroon? Helaas weinig of niets nuttigs. Je hebt tientallen (en idealiter honderden) exemplaren van een patroon nodig voordat je er statistisch gezien zeker van kunt zijn dat wat je ziet niet zomaar een willekeurige blip is - ontluikende patronen die voortkomen uit de achtergrondruis, om vervolgens te verdwijnen voordat ze kunnen worden waargenomen. geprofiteerd van.

  8. #8
    Ronald, wat vind je van deze set: 1. Hoog - Open 2. Sluiten - Laag 3. Abs(Close - Open) 4. wat groter is Open of Close (0 - Open gt; Close; 1 - Open lt; Close ) U kunt slechts 1 bit gebruiken om nee weer te geven. 4. Wat meer is visualisatie kan ook makkelijker. Laten we zeggen dat we de volgende informatie over de balk hebben (op deze manier slaan we de gegevens op): S1 = Hoog - Open S2 = Sluiten - Laag S3 = Abs (Sluiten - Openen) S4 = 0 IF Open gt; Dichtbij; 1 ALS Open lt; Sluiten Voor visualisatie doen we zoiets: IF S4 == 0 THEN S3 = -S3 En gebruik S1, S2 en S3 om de balk te visualiseren. Natuurlijk kunnen we ook gewoon nr. 3 als Sluiten - Openen (met bordje) en gebruik geen nr. 4 helemaal... Ik hoop dat het ergens op slaat

  9. #9

    Quote Originally Posted by ;
    Zou je dat kunnen verduidelijken met een voorbeeld? Ik weet niet zeker wat u bedoelt met de vergelijking Hoog - Open enzovoort ... Zoals ik al zei, we hebben 255 mogelijke karakters, laat me dit feit beoordelen: a) men zou dit kunnen uitbreiden door 2 bytes te gebruiken voor elk staafpatroonalgoritme zou daar ook aan moeten werken, wat betekent dat we potenti�le 65k Bar-Types hebben b) denkend aan pt. a) mijn mening is dat je nooit het maximum van 255 zou moeten gebruiken.... hoe meer verschillen in bartypes je zoekt, hoe meer unieke bars je vindt... al met al kan het wat onwaarschijnlijk worden...
    Hoog - Open geeft een pip-waarde terug, laten we dat HO noemen Hoog - Sluiten geeft een pip-waarde terug... noem dat HC Laag - Open = LO Laag - Sluiten = LC Als ik een string zou genereren met deze waarden. Ik zou StringConenate(HO , HC , LO , LC) gebruiken. De resulterende string is een 4-co�rdinaatpunt dat kan worden uitgezet in een 4-d-ruimte. Elk punt stelt exact ��n staaf voor, geen enkele andere staaf heeft die co�rdinaat. Wat betreft deel a), ik vond slechts 20.000 unieke bars tegen 3 miljoen, ik ben er vrij zeker van dat bars zichzelf herhalen. Wat betreft deel b) De huidige patroonbevinding EA gebruikt 3 classificaties voor staven (lang, kort, doji). Dat was duidelijk te weinig. Ik probeer iets te ontwikkelen om 255 soorten bars te classificeren. Tegen mijn oorspronkelijke 20.000 unieke balken vertegenwoordigt elk van de 255 tekens ~78 balken. Ik denk dat dit een bereik is dat veilig genoeg is om op unieke wijze redelijke patronen te identificeren. Zo niet, dan denk ik dat ik nog een byte moet toevoegen. Ik probeer nog steeds een manier te vinden om ��n co�rdinaat te verwijderen terwijl ik toch elke staaf uniek identificeer, zodat ik op zijn minst de gegevens kan visualiseren.

  10. #10
    Quote Originally Posted by ;
    Je hebt gelijk, dat was ik vergeten
    . [edit]: Gecombineerd, is er een andere manier om een ??????unieke staaf te maken op basis van die 6 (of minder?) vergelijkingen? BIJV. Hoog - Openen Hoog - Sluiten Laag - Openen Laag - Sluiten Ervan uitgaande dat ik elk antwoord in een string verander en dan de strings combineer, zou elke andere balk die overeenkomt met die unieke numerieke string er precies zo uit moeten zien als de originele balk. [Einde bewerken]
    Zou je dat kunnen verduidelijken met een voorbeeld? Ik weet niet zeker wat u bedoelt met de vergelijking Hoog - Open enzovoort ... Zoals ik al zei, we hebben 255 mogelijke karakters, laat me dit feit beoordelen: a) men zou dit kunnen uitbreiden door 2 bytes te gebruiken voor elk staafpatroonalgoritme zou daar ook aan moeten werken, wat betekent dat we potenti�le 65k Bar-Types hebben b) denkend aan pt. a) mijn mening is dat men nooit het maximum van 255 zou moeten gebruiken.... hoe meer verschillen in bartypes je zoekt, hoe meer unieke bars je vindt... al met al kan het onwaarschijnlijk worden dat je er een zult vinden passend patroon, als je zoveel keuze hebt....

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  
This website uses cookies
We use cookies to store session information to facilitate remembering your login information, to allow you to save website preferences, to personalise content and ads, to provide social media features and to analyse our traffic. We also share information about your use of our site with our social media, advertising and analytics partners.