Popularni Postovi

Izbor Urednika - 2019

Priprema 100% kvalitetnih povijesnih podataka za strategije testiranja i savjetnike

Na polju trgovanja na financijskim tržištima nemoguće je izvući zaključak o operativnosti ili neprimjerenosti određene metode ili sustava bez kvalitetnih podataka za ispitivanja i optimizacije. Da bi razvio uistinu profitabilne trgovinske sustave, trgovcu će sigurno trebati barem visokokvalitetni povijesni podaci o cijenama za valutne parove interesa.

U pravilu se kod većine brokera kvaliteta ponuda kreće od 90 do 96%. MT4 terminal nije baš precizan alat, pa dodavanje 4-10% više netočnosti nije naša opcija. Naš izbor su citati 100% kvalitete. Gdje i kako ih nabaviti, kako obraditi i dobiti zajamčeno kvalitetan rezultat - u našem današnjem materijalu.

Vrste povijesnih podataka

Glavna vrsta povijesnih podataka, bez kojih se jednostavno ne može testirati, jesu, naravno, podaci o cijenama. Podaci o povijesnim cijenama mogu se dobiti za različita razdoblja i iz različitih izvora. Najčešći su za dnevne, minutne i sitnirske karte. Po pravilu, povijest je najdublji za dnevne karte - može se dobiti od 1971. (MetaTrader terminal ne podržava dužu povijest). Podaci o minutama u pravilu dolaze najviše od 1999. do 1998. godine, a krpelji uglavnom nisu ranije od 2004. do 2007. godine.

U pravilu su podaci za svako razdoblje sljedeći: datum svijeće, vrijeme, otvorena cijena, najviša cijena, najniža cijena, cijena zatvaranja i količina krpelja. U nekim izvorima citata obujam krpelja možda neće biti dostupan. Također, za razdoblja od D1 i više, često ne naznačite vrijeme otvaranja svijeće ili ne navode maksimalne i minimalne cijene. Citati ulaznica razlikuju se od citata pretvaranih u određenom razdoblju. U takvim navodnicima možete pronaći datum, vrijeme točno u sekundama, cijene i ponude.

Pored cijene, ponekad mogu biti potrebni i neki određeni podaci - na primjer, o rezultatima makroekonomskih pokazatelja, poput stope inflacije, podataka o cijenama stanova ili nezaposlenosti određenih zemalja, kao i o još specifičnijim, poput solarne aktivnosti ili mišljenja trgovaca o određenom instrumentu.

Podaci vremenske skale

Podaci se mogu koristiti u prirodnom vremenskom okviru ili ponovno izračunati na različitoj vremenskoj skali. Ovisno o strategiji, možda će vam trebati različiti vremenski okviri, od M1 ili čak krpelja do D1 ili MN1. Iz podataka kratkih vremenskih okvira možete lako produžiti podatke, ali ne i obrnuto. Na primjer, iz podataka razdoblja M1 lako možemo dobiti i M5, i H1, i D1. Zato je važno imati kvalitetnu bazu podataka s točno M1 navodima.

Ali M1 nije najmanja ljestvica, jer postoje i podaci o krpeljima. Krpelji nisu stalna jedinica vremena, ponekad su krpelji vrlo česti, osobito tijekom vijesti, a ponekad, na primjer, noću, imaju velike vremenske intervale jedni drugima. Povijest Tickova uglavnom je potrebna za testiranje vijesti savjetnika, hft strategije (koje uopće nije moguće koristiti na MT4 ili MT5 platformi), kao i za savjetnike koji koriste različite izračune unutar svijeća.

Ali za takve savjetnike utjecaj brokera je prevelik, kao što sam napisao u ovom članku. Ako savjetnik ne prebaci pola točke, nema potrebe da ga testirate na podacima o krpeljima - to je jako dugo i zahtijeva mnogo resursa. Uz to, podaci o besplatnim krpeljima koji se mogu pronaći na mreži nisu najbolje kvalitete i ne predugo, a plaćeni koštaju prilično pristojan novac - daleko je od činjenice da će se takva ulaganja uopće isplatiti.

Stoga ne biste trebali juriti za super preciznošću, sam ispitivač strategije i dalje će dati grešku koja eliminira sve napore. Bolje je opskrbiti se poviješću kvalitete minutnog vremenskog okvira, dnevnim vremenskim okvirom i raznim specifičnim podacima na koje ćete naići - nikad ne možete biti sigurni što će vam dobro doći, a što ne.

Koliko podataka vam je potrebno? Što više, to bolje. Činjenica je da što je više transakcija u testu, to je manji rizik od "uklapanja", što je statistički značajniji rezultat i veća je vjerojatnost da će vaš sustav i dalje raditi na isti način kao i u prošlosti. Stoga je vrlo preporučljivo koristiti svu dostupnu povijest.

Odabir vremenskog okvira

Što se tiče vremenskog okvira koji se koristi za posao, to je stvar ukusa. Kada radite u malim razdobljima poput M5 ili M15, potrebno je puno vremena za testove, osim toga, takvi sustavi su vrlo zahtjevni u pogledu kvalitete citata, vrlo ovisni su o brokerima i na konačni rezultat pristojno utječu troškovi poput širenja, zamjene, proklizavanja, provizija.

S druge strane, trgovanje takvim sustavima je dinamičnije, jer mogu obaviti desetine transakcija dnevno. Zbog relativno kratkog zaustavljanja, možete naići s pologom od samo 100 USD. Kao rezultat toga, rast depozita obično je brži nego kod dugoročnih sustava. Iako je često kraće - što je niže razdoblje sustava, to se u pravilu čini manje stabilnim.

Naprotiv, tijekom rada u velikim razdobljima, sustavi su stabilniji i nepopustljiviji, slabo ovise o brokeru i troškovima trgovanja, nisu vrlo zahtjevni u pogledu kvalitete kotacija i testovi se mogu vrlo brzo napraviti. Ipak, rast depozita je prilično dug, jer svaka transakcija može trajati tjednima.

Drugi problem - za dugoročne sustave potrebna je dovoljno velika količina povijesnih podataka. Osim toga, na istim dnevnim kartama čak su i ATR dvostepeni zaustavljači ponekad prilično veliki, a 2000 dolara možda neće biti dovoljno za pravilno upravljanje novcem. Osim toga, kada rade u visokim vremenskim okvirima, u pravilu koriste portfelje sustava da bi izgladili krivulju prinosa. Unatoč tome, teško je izdržati na psihološki desetak otvorenih transakcija, koji se vise ili dva tjedna povlače nagore ili prema dolje.

Odabir vremenskog okvira i dalje je osobna stvar svakog trgovca. Bilo koji od njih ima svoje prednosti i nedostatke, pa samo odlučite što vas više smeta.

Kvaliteta povijesnih podataka

Jedan od najčešćih razloga za dobivanje lažnih rezultata prilikom testiranja stručnog savjetnika u ispitivaču strategije na MetaTrader 4 terminalu je problem s integritetom povijesnih navoda. Iz različitih razloga, u povijesti cijena dostupnih na terminalu mogu se stvoriti "rupe" koje vode do praznina u protoku cijena koje nemaju nikakve veze sa stvarnošću. Ne treba reći da nema smisla testirati savjetnika na takvim navodima?

Loši podaci mogu dovesti bilo kakvu analizu sustava do stanja potpunog kaosa, dati neisplativi zaključke stajaćim sustavima ili, što je još gore, dati zeleno svjetlo sustavima koji ih ne vrijede. Stoga vrijedi pristupiti povijesnim podacima sa svom odgovornošću - ovo je osnova na kojoj će se graditi sva vaša trgovina u budućnosti. Loša povijesna baza može sustavno dovesti do pogrešaka i, kao rezultat, gubitka puno vremena i novca, a vi nećete shvatiti u čemu je problem i zašto vaši sustavi koji prave testove ne žele raditi u stvarnom životu.

Pogreške podataka mogu imati nekoliko različitih oblika. Prilikom trgovanja često postoje krpelji s jasno pogrešnim cijenama, što je jednostavno nemoguće. Primjerice, cijena na sekundu odlazi u nebo, a zatim se u sljedećoj sekundi vraća. Riječ je o takozvanom "šišanju" za kojeg su prije nekoliko godina sagriješili gotovo svi posrednici. Takva pogreška može dovesti do dogovora s ogromnom dobiti ili gubitkom. A ako u podacima ima puno takvih "iglica", test bilo kojeg sustava bit će daleko od stvarnosti. To se posebno odnosi na testove različitih rešetkastih strategija gdje je ukosnica zajamčeno odvod taloga i, kao rezultat, test ne prođe filtar.

Češće i manje uočljive su obične male pogreške u razinama cijena. Na primjer, umjesto cijene zatvaranja 1,4378, imamo cijenu od 1,4387. Naravno, takvu je pogrešku teško primijetiti, pogotovo ako se nalazi u velikom vremenskom okviru. Srećom, najčešće ne utječu u velikoj mjeri na rezultate testa, iako postoje iznimke. Zato je vrijedno provjeriti ponude nekoliko različitih dobavljača kako biste dobili najpouzdanije cijene.

Pa, najčešća greška je preskakanje podataka. Samo se iz određenog razloga određeno vrijeme ne bilježi u bazi podataka, pa se formiraju prijelomi citata. Najčešće se ovaj problem javlja tijekom praznika, u novogodišnjoj noći i noću. Što je "ljepši" grafikon, to je manje stvarnosti na testovima. Ovaj problem se također rješava popunjavanjem praznina iz drugih izvora.

Kao što ste već shvatili, prilikom testiranja savjetnika, pitanje stvaranja arhive citata kvalitete djeluje kao zadatak broj jedan. No, nažalost, MT4 terminal nema ugrađene alate za provjeru integriteta povijesnih podataka, pa morate koristiti opremu koja ispunjava ovaj neugodni jaz u opremi platforme.

Koji bi, prema mom mišljenju, trebali biti visokokvalitetni povijesni podaci?

Kvalitativni povijesni podaci formiraju se iz traka razdoblja M1. Sve gore odmiče nas dalje od točnosti reproduciranja ponašanja savjetnika. Prilikom formiranja povijesti citata najbolje je koristiti M1 citate. Osim toga, idealno je da se savjetnici za testiranje najbolje provode na M1 navodima. U ovom slučaju morate biti sigurni da su razdoblja fiksirana u samom kodu savjetnika, te da nije zadano razdoblje (Period ()) nije postavljeno, inače nećete dobiti rezultate na koje ste računali, jer algoritam neće raditi onako kako je planirano.

Također vrijedi zapamtiti da je savjetnik jednostavno dužan raditi upravo na otvaranju svijeće. Da bi se to postiglo, u pravilu je u šifri savjetnika propisana posebna funkcija koja omogućuje trgovanje samo kad se otvori novi svijećnjak određenog vremenskog okvira. Da biste izvršili pouzdane testove ne zatvaranjem svijeća, trebat će vam visokokvalitetni krpelji i poseban softver koji vam omogućuje provođenje takvih testova. Ako to nemate, terminal će sam izmisliti što se događalo unutar svijeća. Shvaćate - on može izmisliti bilo što.

Takvi podaci nemaju značajnih kvarova, odnosno takozvanih "rupa". To prije svega ovisi o dobavljaču ponuda - koliko je glatko radila oprema koja pohranjuje povijesne podatke.

Takvi citati nemaju propuste za jednu ili nekoliko traka. U idealnom slučaju trebate imati 100% kompletnih citata (da se ne brkate s kvalitetom modeliranja). Po mom mišljenju, 100% potpunost povijesti minutnih navoda je nužna jer se vremenski okviri formiraju iz minute, a nepostojanje nekih traka minuta u konačnici generira "zakrivljene" trake viših vremenskih okvira.

Želim odmah napomenuti da nekoliko DC-ovaca ima svoju dugu povijest citata u javnoj domeni, posebno u pogledu citata malih vremenskih okvira. U ovom članku smo razgovarali o tome gdje dobiti povijesne podatke.

Analiza rupa u povijesti citata

Skripta history_data_analysis pomoći će vam da otkrijete kvalitetu grafikona.

Ovaj kôd identificira nedostajuće trake ("rupe") i praznine (velike rupe) u podacima povijesti, određuje njihovu veličinu, trajanje i jaz. Radi na svim instrumentima i predviđen je za unutardnevne karte, tako da je vremenski okvir ograničen na razdoblje H4.

Analiza uzima u obzir samo vikende (subota i nedjelja - 48 sati), preostale trenutke u kojem kod smatramo rupama ili prazninama. Radi praktičnosti rada na grafikonu, kôd nudi filtar na kojem možete postaviti vremenski okvir koji nedostaje (M1,5,15,30), a koji će kod zanemariti kao rupe, broj traka koje nedostaju (minimalna vrijednost), a koji bi kod smatrao prazninom (prema zadanih 20 bara), kao i broj nedostajućih pipsa koji će kôd zanemariti kao jaz. Nakon pokretanja skripte i završetka njenog rada, vidjet ćete poruku:

Na primjer, testirao sam kvalitetu citata za par EURUSD Alpari:

Pa, na primjer, napravimo isti test za Dukascopy EURUSD M1 citate:

Kao što vidite, korištenje podataka Dukascopy za testiranje je najbolje - ukupna kvaliteta navoda ovdje je u regiji od 99,55%. Samo 0,45% prolazaka i praznina, vrlo dobar rezultat. Ipak, još uvijek imamo 4.662 nedostatka - nedostaje gotovo dvadeset pet tisuća barova i čak 39.740 bodova. I zbog toga - za najpouzdanije testove ovaj problem će se morati riješiti.

Dovođenje kvalitete navoda do 100%

1. Preporučujem korištenje podataka iz Ducaskopyja za osnovnu povijest citata, u njima je malo rupa i oni će ih morati manje 'zakrpati'. Da biste to učinili, možete koristiti bilo koji pomoćni program koji preuzima Ducaskopy krpelja. Preporučujem Tickstory Lite.

2. Nakon preuzimanja krpelja u programu Tickstory Lite desnom tipkom miša kliknite valutni par koji vas zanima i odaberite opciju "Izvezi u datoteku":

3. Ispunite polja s postavkama:

4. Otvorite katalog podataka:

5. U direktoriju podataka pronalazimo mapu povijest, a zatim željenu mapu pronalazimo po nazivu našeg poslužitelja:

6. Izbrišite sve hst datoteke željenog valutnog para.

7. Izvezite preuzete kotacije u terminal pritiskom na F2, odabirom željenog valutnog para, razdoblja M1 i klikom na gumb "Uvezi":

8. Otvorite grafikon valutnog para razdoblja M1.

9. Izvršite test kvalitete koristeći skriptu history_data_analysis. Pomoću tekstualne datoteke dobivene rezultatom testiranja morate pronaći najkritičnija mjesta. Tada se ta kritična mjesta uklanjaju. Kasnije ćemo ih nadopuniti citatima iz drugih izvora (staviti takozvane "zakrpe").

Želim zasebno skrenuti vašu pozornost na nedostatak citata tijekom novogodišnjih praznika - mnogi posrednici u ovom trenutku jednostavno ne rade, a oni izvori čiji brokeri rade kao sito u novogodišnjoj noći i može biti vrlo teško pronaći bilo kakvu odgovarajuću povijest za ovo razdoblje , Stoga se neće dogoditi ništa loše ako par dana uoči nove godine jednostavno ne bude - treba ga u potpunosti ukloniti, jer u protivnom savjetnici na testovima mogu pokazati pogrešne rezultate.

10. Gdje nabaviti sirovine za flastere - već smo raspravljali u ovom članku. Trebat će vam jedan, možda dva izvora - sve ovisi o konkretnom slučaju.

11. Prije svega, vaše podatke za zakrpe treba pretvoriti u csv format, ako ih imate u hst formatu, a hst2csv skripta će vam pomoći.

12. Potom bi te podatke iz drugih izvora trebalo dovesti u točno vrijeme, naime, za njih postaviti isti GMTOffset kao i vašeg brokera i ispravljene citate. Nemojte zanemariti, ovo je podatak o tome koji se točno pomak u odnosu na GMT za određeni izvor citata, je li se ikada promijenio i je li korištena pretvorba zimsko / ljetno vrijeme. Na primjer, citati Alpari imali su GMT + 2 prije 2011., a GMT + 3 nakon 2011. godine.

Da biste to učinili, trebat će vam zaseban terminal. Potrebno je zauzvrat preuzeti citate iz svakog izvora, promijeniti vrijeme GMT pomoću skripte GMTconverter, što sam napisao kad sam otkrio da iz nekog razloga takve skripte ne postoje u mreži. Skriptu možete pronaći / preuzeti na kraju članka. Također, pri uvozu preuzetih navodnika na zaseban terminal možete odrediti željeni GMT, ali to ponekad ne uspije. Da biste odredili željeni GMT prilikom uvoza citata, trebate navesti "Shift" u satima. Zatim je potrebno izvesti te citate klikom na gumb za izvoz. Na ovaj način će se navodnici spremiti u željenom formatu i uz GMT koji vam je potreban.

13. Nakon prilagođavanja navoda željenom obliku, jednostavno otvorite našu datoteku našim testom kvalitete i izvorom zakrpa koje smo dobili.Štoviše, morate otvoriti datoteke u Notepad-u, jer Excel možda neće otvoriti cijelu datoteku ako ima puno priča.

14. Svaki od problematičnih segmenata nalazimo u datoteci zakrpa i dijelove prenosimo u zasebno otvorenu datoteku bilježnice:

15. Ako u jednom od izvora nema dovoljno podataka, pokušajmo ga pronaći u drugim izvorima.

16. Zatim spremite pripremljenu datoteku u csv formatu. Samo promijenite datotečnu ekstenziju iz txt u csv.

17. Uvoz u terminal za Ducascopy citate. Izbrisani odjeljci bit će automatski vraćeni iz datoteke koju smo pripremili.

18. Nakon dugog i mukotrpnog rada na uvozu zakrpa, morate zatvoriti terminal i ponovo ga otvoriti kako bi se učitala povijest zakrpa. Opet skicirajte skriptu history_data_analysis i pogledajte rezultat našeg rada.

19. Sada dolazi red na drugu skriptu AllMinutes_Step1. Što on radi? Činjenica je da se u onim minutnim barovima u kojima se ništa nije dogodilo i nije bilo cijena, terminal automatski preskače. Skripta omogućuje tehničko popunjavanje propuštenih traka kako bi se osigurala naknadna ispravna generacija svijeća viših vremenskih okvira. Dakle, bacite ga na grafikon i uključite karticu "Stručnjaci". Ova kartica nam je potrebna da bismo vidjeli poruku o dovršetku ove skripte i njeno kratko izvješće.

20. Čim dođe poruka o dovršetku skripte, potrebno je otvoriti izvanmrežni raspored (Datoteka - Otvori izvan mreže - ALLEURUSD1):

21. Na otvoreni grafikon izbacujemo prvu povijest skripte_data_analysis. Dobivamo izvještaj na koji ćemo se vratiti malo kasnije.

22. Zatim pokrenite treću skriptu, hst2csv. Činjenica je da je prethodna skripta tijekom svog rada ne samo popunila sve trake koje nedostaju na grafikonu u izvanmrežnom načinu, već je i formirala istu kompletnu bazu navodnika u hst formatu. Datoteka je formirana u mapi povijesti i ima naziv "ALLEURUSD1". Pokrenite skriptu history_data_analysis na samostalnom grafikonu. Sada ćemo ovu datoteku ALLEURUSD1.hst morati preoblikovati u upravljiv (u smislu vremenskih pomaka) .csv format, što će hst2csv skripta zapravo i učiniti.

23. A sada se vratimo na izvještaj sastavljen na temelju analize autonomnog rasporeda. To je neophodno kako bi se pratili oni minimalni razmaci koje skriptu možda ne primjećuju. To se ne događa uvijek, ali ponekad se dogodi. Scenarij je pronašao i napunio tisuće usamljenih traka, ali, nažalost, nekoliko ih je moglo propustiti. I zbog toga će se ovaj kvar morati popraviti ručno.

U principu, to nije teško - izvješće u tablici prikazuje specifične koordinate tih prolaza. Stoga je rad vrlo sličan onome koji smo napravili u stavku 14. Općenito, idemo u mapu "Datoteke". Otvorite "ALLEURUSD1.csv" pomoću programa Notepad. Pomoću funkcije "pretraživanja" nalazimo se u pravom datumu. Propuštene trake popunjavamo zadnjom poznatom cijenom, ne zaboravljajući da promijenite vrijeme traka.

24. Otvorite arhivu citata (F2) u terminalu, izbrišite svu povijest hst formata pohranjenog u njemu, a zatim učitajte novu konvertiranu datoteku. Zatvorite i ponovo otvorite terminal. Otvaramo grafikon, u našem slučaju EURUSD M1, i izvršimo kontrolno mjerenje sa skriptu history_data_analysis u slučaju da nešto propustimo.

25. Stvar je prepuštena malom - za skriptu period_converter_ALL. S njim je, općenito, sve jednostavno - baci se na grafikon i pogledaj u gornji lijevi kut - dok brojevi tamo teku, skripta i dalje radi. Čim se pokret u tom kutu zaustavi, tada je posao završen. I na kraju, uzastopno mijenjamo sve vremenske okvire tako da se učitaju.

Zaključak

To je sve - u našem terminalu su sada citati 100% kvalitete. Možete dobiti najtačnija ispitivanja i dobro jamstvo pouzdanosti rezultata ako postoje pomoćni vremenski okviri razdoblja M1, koji 100% pokrivaju razdoblje ispitivanja.

Dakle, pitanje ispitivanja kvalitete pretvara se u potragu za detaljnim povijesnim podacima i naknadno sastavljanje citata najviše moguće kvalitete. U svakom slučaju, ako želite dobiti pouzdane rezultate ispitivanja, trebali biste se pobrinuti za vlastitu visokokvalitetnu bazu podataka s povijesnim podacima.

Preuzmite set potrebnih skripti

Upute za instaliranje skripti u MT4

Pogledajte video: CATASTROIKA 2012 HD 1280x720 - Multi-subs (Studeni 2019).

Ostavite Komentar