Lemmik Postitused

Toimetaja Valik - 2020

MQL4: linnukese andmete kogumine masinasse

Tere kõigile!

Mida kauem arendate automatiseeritud kauplemissüsteeme, seda sagedamini tekib küsimus vajadusest kasutada kõrgekvaliteedilisi kauplemisinstrumentide noteeringuid - ilma “aukude”, trellide läbimise ja muude probleemideta. Üldiselt, mida on vaja kauplemisrobotite loomisel kompetentselt töötamiseks? Muidugi peate teadma programmeerimiskeelt. Muidugi peab süsteemide arendamiseks olema kauplemiskogemus. Muidugi peavad teil olema tööriistad nõustajate arendamiseks (meie puhul see on MT4 või MT5 terminal) ja olema hästi kursis selle töö omadustega. Kuid mis on kõige olulisem ja mida algajad botovodistid sageli unustavad, vajame kvaliteetset hinnapakkumiste ajalugu. Seal on isegi ütlus “prügi sisse - prügi välja” või “prügi sissepääsu juures - prügi väljapääsul”, mis tähendab ainult ühte: kui proovite oma nõustajaid madala kvaliteediga andmete põhjal, on väga tõenäoline, et saate testi tulemusi, mis on tegelikust väga kaugel. asjade seis.

Kuidas seda probleemi lahendada, on meie tänases materjalis.

Kust saada kvaliteetset lugu?

Mõned maaklerid pakuvad oma hinnapakkumisi. Näiteks kui teil on Alpari maakleri juures reaalajas konto, saate minutiterminalide hinnapakkumisi alla laadida otse terminalist alates 1999. aastast. Samuti pakuvad mõned maaklerid linnupakkumisi, kuid reeglina parimal juhul alates 2007. aastast. Pealegi, mida varasem aasta, seda halvem on nende kvaliteet.

Täna avan ma väikese artiklite sarja, mis on pühendatud tsitaatidega töötamisele. Arutame mõningaid tsitaatidega seotud probleeme ja kirjutame nende probleemide lahendamiseks mitmesuguseid skripte ja näitajaid. Töö lõppeesmärk on hankida tsitaatidega töötamiseks terviklikud ja põhjalikud tööriistad.

Internetist otsides võite leida rohkem kui ühe tsitaadi allika, sealhulgas linnukese. Kuid kolmandate osapoolte (mitte teie maakleri) hinnapakkumiste kasutamisel on mitu puudust. Esiteks ei ole need hinnapakkumised teie vahendaja, kuid väga tundlike ekspertnõustajate hinnapakkumiste (eriti linnukesi märkide) kasumlikkus ja üldiselt käitumine kipuvad erinevates andmevoogudes varieeruma. Halvimal juhul võib selguda, et Dukascopy puukide andmete jaoks optimeeritud robot liitub teie maakleri andmetega. Ja uuesti optimeerimisel pole sellega midagi pistmist, lihtsalt vood on väga erinevad. Muidugi on see boti stabiilsuse küsimus, kuid ideaalne võimalus oleks kasutada maakleri linnukese andmeid. Teiseks, enamasti ei saa kolmandate osapoolte pakkumised, mille leiate tasuta versioonist, kiidelda sellise olulise omadusega nagu kvaliteet. Kõige sagedamini leiate analüüsi ajal palju auke, tühimikke, tühimikke ja muid esemeid.

Meie ülesanded

Seega jõudsime oma arutluskäigu tulemusel mitmele kiireloomulisele ülesandele:

1). Me vajame tööriista oma kodumaise maakleri puukide ajaloo saamiseks, millega me kauplema hakkame. See lugu ei pruugi lubada meil optimeerida oma nõustajaid alates “karvastest aastatest”, kuid see aitab meil mõista, kas kolmanda osapoole ajaloo nõuniku töötamise tulemused erinevad meie maakleri ajaloost jooksmise tulemustest ja teha otsus erinevuse astme põhjal.

2). Vajame tööriista, et kontrollida kolmanda osapoole pakkumise ajalugu. Peame olema kindlad, et meie lugu, milles optimeerime nõunikke nii vaevaliselt, pole prügi ega sõela.

3). Kolmandate osapoolte selge tsitaatide ajaloo saamiseks vajame tööriista. Noh, laadisite puugid alla tosinast eri allikast ja oleks tore neid ühendada, et saada tsiteeritud fail, milles kõik augud oleksid täidetud. Kuid käsitsi teha, iga instrumendi jaoks - lihtsalt hull. Seetõttu peame teesist juhindudes, et laiskus on edusammude mootor, leidma viisi, kuidas seda teha automaatrežiimis "diivanilt tõusmata".

4). Me vajame tööriista mitmesuguste manipulatsioonide jaoks koos tsitaatide ajaloo vorminguga. Näiteks on meil puugidega * .tks-failid ja me peame hankima * .Csv-failid, millel on minutiline ajalugu. Kuidas seda teha? Muidugi, kirjutades vastava skripti. Või näiteks kui tegemist on nõustaja testimisega ja meil on ainult meie * .csv-failid, peame need teisendama * .fxt-vormingusse, nii et terminal neist aru saaks ja nende peal meie teri testiks.

5). Mida saab selle tee peal veel ära teha? Saate välja töötada maakleri serverist pärit hinnapakkumiste kvaliteedi hindamise kriteeriumid, jälgida keskmist levikut näiteks erinevatel kellaaegadel ja nädalapäevadel. Arvan, et erinevate maaklerite andmete võrdlemine oleks üsna huvitav, informatiivne ja mis kõige tähtsam - sellel on märkimisväärne praktiline mõte.

Puugide kogumine automaatrežiimis

Niisiis, meil on eespool kirjeldatud viis töövaldkonda. Nende kvaliteetse lahendusega saame väljundis tõelise põhjaliku “hinnapakkumiste tameri” ja sulgeme küsimuse, kust saada kvaliteetseid andmeid igaveseks testimiseks.

Ja esimene asi, millest räägime, on see, kuidas ise maaklerile (või maakleritele) linnupakkumisi hankida. Selleks peavad meil olema andmed iga linnukese saabumise aja ning igale pakkumisele vastavate pakkumiste ja pakkumiste hindade kohta. Sellist andmekogumit saame pikka aega, salvestades need andmed spetsiaalsesse faili veebis, mida kasutame hiljem oma töös. Suurema osa tööst saate üle kanda programmi, millest kirjutame täna. Koostame selle programmi võib-olla MT4 terminali indikaatori kujul ja kõik, mis on pärast selle kirjutamist vajalik, on lihtsalt indikaatori kinnitamine terminali diagrammile.

Esimese linnukese saabumisega algab puukide kohta andmete kogumine, mida saab hinnata vastavalt Ask and Bid graafikute ilmumisele "keldrisse". Andmeid salvestab indikaator terminali andmekataloogis vormingus .tks - linnukeandmed. Sel juhul langeb faili nimi kokku tööriista nimega. Noh, põhipilt on minu arvates selge, kuid käsitleme üksikasju "mööda teed". Ma ei anna koodiarvestusi kirjalikult, me analüüsime kogu meie koodi videoõppes.

Järeldus

Täna oleme loonud üsna lihtsa indikaatori puukide andmete kogumiseks MetaTrader4 terminalist. Sellel näitajal on kahtlemata võimalusi edasiseks täiustamiseks, eriti kasutusmugavuse osas. Näiteks võiksime koheselt valmistada vajalike perioodidega csv-faile või lisada failinimedele vahendajate nimesid. Näitajale võiksime lisada ka funktsionaalsuse, mis võimaldaks meil saata andmeid teise serverisse, mis moodustaks failid rühmadesse ja kleepiks andmed ühte suurde faili, ning rakendaks ka liidese lihtsa veebilehe kujul, mis annaks meile huvipakkuva maakleri failid, teisendatud soovitud ajaraami csv-vormingusse taotlusparameetrites täpsustatud kuupäevade jaoks. See tähendab, et indikaatori edasine täiustamine piirdub üldjoontes teie kujutlusvõime, võimaluste ja ülesannetega.

Järgmised õppetunnid sarjast Töö tsitaatidega:

Vaata videot: Robot Building Tutorials #6 - Intro to MQL4 (Aprill 2020).

Jäta Oma Kommentaar