Populære Innlegg

Redaksjonens - 2020

MQL4: Samler kryssdata på maskinen

Hei alle sammen!

Jo lenger du utvikler automatiserte handelssystemer, desto oftere oppstår spørsmålet om behovet for å bruke høykvalitetssitater av handelsinstrumenter - uten “hull”, pasninger av stenger og andre problemer. Generelt, hva er nødvendig for å kunne jobbe kompetent med å lage handelsroboter? Selvfølgelig må du kjenne programmeringsspråket. Selvfølgelig må du ha handelserfaring for å utvikle systemer. Selvfølgelig må du ha verktøyene for å utvikle rådgivere (i vårt tilfelle er dette MT4- eller MT5-terminalen) og være godt kjent med funksjonene i dets arbeid. Men hva som er viktigst og hvilke nybegynnere botovodister ofte mister synet, trenger vi en kvalitetshistorie med sitater. Det er til og med et ordtak "søppel inn - søppel ute", eller "søppel ved inngangen - søppel ved utkjørselen", noe som betyr bare en ting: hvis du tester rådgiverne dine om data av lav kvalitet, er det veldig sannsynlig at du vil få testresultater som er veldig langt fra reelle tingenes tilstand.

Hvordan vi løser dette problemet, er i dagens materiale.

Hvor får jeg en kvalitetshistorie?

Noen meglere oppgir egne tilbud. For eksempel, hvis du har en live-konto hos en Alpari-megler, kan du laste ned minuttkurser direkte fra terminalen siden 1999. Noen meglere oppgir også kryssnoteringer, men som regel i beste fall siden 2007. Dessuten, jo tidligere året, jo dårligere er kvaliteten.

I dag åpner jeg en liten artikkelserie som vil bli viet til å jobbe med sitater. Vi vil diskutere noen problemer relatert til sitater og skrive forskjellige manus og indikatorer for å løse disse problemene. Det endelige målet med arbeidet vil være å skaffe komplette og omfattende verktøy for å jobbe med sitater.

Hvis du søker på Internett, kan du finne mer enn en kilde med sitater, inkludert kryss for. Men de viktigste ulempene ved å bruke tilbud fra tredjeparter (ikke megleren din) er flere. For det første hører ikke disse sitatene til megleren din, men lønnsomheten og generelt oppførselen til høysensitive sitater fra ekspertrådgivere (spesielt kryssmerke), har en tendens til å variere mye på forskjellige datafeeder. I verste fall kan det godt vise seg at den optimaliserte bot på Dukascopy kryssdata vil smelte sammen med dine meglerdata. Og omoptimalisering vil ikke ha noe med det å gjøre, bare strømningene er veldig forskjellige. Dette er selvfølgelig et spørsmål om botstabilitet, men det ideelle alternativet ville være å bruke kryssdata fra megleren din. Dernest kan ofte ikke tilbud fra tredjepart, som du kan finne i gratisversjonen, skryte av en så viktig egenskap som kvalitet. Oftest, under analysen, vil du finne mange hull, hull, gap og andre gjenstander.

Våre oppgaver

Som et resultat av resonnementene våre kom vi til flere presserende oppgaver:

1). Vi trenger et verktøy for å få krysshistorikken til vår innfødte megler, som vi skal handle på. Denne historien vil kanskje ikke tillate oss å optimalisere rådgiverne våre fra de "rene årene", men det vil hjelpe oss å forstå om resultatene når vi kjører en rådgiver i en tredjepartshistorie avviker fra kjøringen for vår meglers historie og tar en beslutning basert på forskjellen.

2). Vi trenger et verktøy for å sjekke kvaliteten på en tilbudshistorie fra tredjepart. Vi må være sikre på at historien vår, der vi så nøye optimaliserer rådgiverne våre, ikke er søppel eller sil.

3). Vi trenger et verktøy for å få en klar tilbudshistorie fra tredjepart. Vel, du lastet ned merker fra et dusin forskjellige kilder, og det ville være fint å kombinere dem for å få en tilbudsfil der alle hullene er fylt. Men å gjøre det manuelt, for hvert instrument - bare gal. Derfor, veiledet av avhandlingen om at latskap er fremdriftsmotoren, må vi komme med en måte å gjøre dette på i en automatisk modus, "uten å komme opp fra sofaen."

4). Vi trenger et verktøy for forskjellige manipulasjoner med sitatet i sitatet. For eksempel har vi * .tks-filer med flått, og vi må få * .Csv-filer med en minutthistorikk. Hvordan gjør jeg det? Selvfølgelig ved å skrive det aktuelle manuset. Eller for eksempel når det gjelder testing av rådgiveren, og vi bare har * .csv-filene, må vi konvertere dem til * .fxt-format slik at terminalen forstår dem og tester kornene våre på dem.

5). Hva annet kan gjøres underveis? Du kan utvikle kriterier for å evaluere kvaliteten på flyten av sitater fra meglerens server, spore gjennomsnittlig spredning på forskjellige timer på dagen og ukedagene. Jeg tror at det å sammenligne data fra forskjellige meglere ville være ganske interessant, informativt og viktigst av alt, det gir betydelig praktisk mening.

Samle flått i automatisk modus

Så vi har fem arbeidsområder beskrevet ovenfor. Med deres høykvalitetsløsning vil vi få et ekte omfattende bryst av "sitat tamer" ved utgangen og stenge spørsmålet om hvor du kan få data av høy kvalitet til testing for alltid.

Og det første vi snakker om, er hvordan du selv får takkekurser for megleren din (eller meglerne). For å gjøre dette, må vi ha data om ankomsttidspunktet for hvert kryss og prisene for bud og spør som tilsvarer hvert tilbud. Vi vil motta et slikt datasett i lang tid ved å lagre disse dataene i en spesiell fil på nettet, som vi vil bruke senere i vårt arbeid. Du kan overføre hoveddelen av arbeidet til et program som vi skal skrive i dag. Vi vil kanskje utarbeide dette programmet, i form av en indikator for MT4-terminalen, og alt som kreves etter å ha skrevet det, er ganske enkelt å knytte indikatoren til diagrammet i terminalen.

Med ankomsten av det første krysset vil samlingen av flåttdata begynne, som kan bedømmes ut fra utseendet til Ask og Bid-diagrammer i "kjelleren". Dataene lagres av indikatoren i terminaldatakatalogen i formatet .tks - kryss av for data. I dette tilfellet vil filnavnet sammenfalle med navnet på verktøyet. Jeg synes, hovedbildet er klart, men vi vil takle detaljene "underveis." Jeg vil ikke gi kodeberegninger i et skriftlig skjema; vi vil analysere all koden vår i en videoopplæring.

Konklusjon

I dag har vi laget en ganske enkel indikator for å samle kryssdata fra MetaTrader4-terminalen. Denne indikatoren har utvilsomt muligheter for ytterligere forbedringer, spesielt med tanke på brukervennlighet. For eksempel kunne vi umiddelbart forberede csv-filer med periodene vi trenger eller legge meglernavn til filnavnene. Vi kan også legge til funksjonalitet til indikatoren, som vil tillate oss å sende data til en annen server, som ville danne filer i grupper og lime inn data i en stor fil, og også implementere et grensesnitt i form av en enkel webside som vil gi oss filer av en megler av interesse, konvertert til csv-format av ønsket tidsramme for datoene spesifisert i forespørselsparametrene. Det vil si at den videre forbedringen av indikatoren er stort sett begrenset til fantasien, mulighetene og oppgavene du står overfor.

Følgende leksjoner fra serien Work with Quotes:

Legg Igjen Din Kommentar