A Metatrader stratégiai teszterének saját lelki világa van, amelyen viszonylagosan nehéz kiigazodni. A teszterben használható jó minőségű adatokról már volt szó, ebben a bejegyzésben azt vesszük górcső alá, hogy egy-egy teszt végén milyen információkat bocsát rendelkezésünkre a program.

Ez a cikk az mql4.com angol nyelvű leírása alapján készült. Néhány angol magyarázat egyáltalán nem egyértelmű (illetve nem hordoz túl sok magyarázatot…), így mint minden cikkel, ezzel kapcsolatban is várom visszajelzéseteket, kiegészítéseiteket!

Az eredeti cikkből vett képet fogom használni, ami ugyan angol, de a magyar nyelvű fordítás szövegeinek elhelyezése teljesen hasonló. Aki magyar nyelvű Metatradert használ, annak úgyis fel fog tűnni hogy elég sok helyen valahogy kimaradt egy-egy angol szöveg fordítása a programban.

A kép alatt megnézzük, hogy mi a jelentése egy-egy angol feliratnak. Az eredeti szöveget vastagon szedve jelölöm, mögötte per jellel elválasztva a magyar változat (amennyiben le van fordítva).

Egy konkrét teszteredmény részletezése

A stratégiai teszter jelentése

A stratégiai teszter jelentése

Bars in test / Bars in test

Megmutatja, hogy hány múltbéli gyertya alapján lett futtatva a teszt. Ez valószínűleg nem csak az adott idősík, hanem más idősíkokból vett gyertyák számát is mutatja.

Ticks modelled / Ticks modelled

Ennyiszer futott le az expert advisor – vagyis ennyi árváltozás történt, ennyiszer „ugrált” az aktuális ár vonala (nyilván vizuális teszt esetén látható csak)

Minden egyes adat egy adott gyertya állapotát (OHLCV – open, high, low, close, volume) jelzi. A különböző gyertyák állapotainak modellezése függ az idősíktól, a modellezés módjától illetve attól, hogy az adott idősík gyertyáján belül mennyi kisebb idősíkú gyertya létezik.

Modelling quality / Modelling quality

A teszt minőségét jelző százalék, az alábbi képlet szerint:

Modellingquality = ((0.25 * (StartGen-StartBar) + 0.5 * (StartGenM1-StartGen) + 0.9 * HistoryTotal-StartGenM1)) / (HistoryTotal-StartBar)) * 100%;

Ahol:

  • HistoryTotal – az összes gyertyaadat száma a múltbéli adatokban
  • StartBar – azon gyertya száma, ahol elindult a teszt. A modellezés a megadott start időpont gyertyájánál, de minimum a 101-ik gyertyánál indul.
  • StartGen – azon gyertya száma, amelyen a legközelebbi idősíkon elindult a tesztelés.
  • StartGenM1 – azon gyertya száma, amelyen a modellezés elindult M1 idősíkon

valamint:

  • a szimuláció adatbázisának legközelebbi idősíkjának adata és a szimuláció indulóidőpontjának legközelebbi adata közötti eltérés súlyozási tényezője 0,25
  • a szimuláció kezdetének perces idősíkja és a szimuláció kezdetének legközelebbi idősíkja közötti eltérés súlyozása 0,5;
  • a szimuláció kezdetének első perces adata és a szimulációs adatmennyiség vége közötti eltérés súlyozása 0.9.

Initial deposit / Kezdő betét

Ekkora összeget biztosítottunk a teszt számára.

Gross profit / Bruttó profit

Az nyereséges kereskedések profitjának összege.

Gross loss / Bruttó veszteség

A veszteséges kereskedések profitjának összege.

Total net profit / Összes nettó profit

A bruttó profit és bruttó veszteség különbsége.

Profit factor / Profit tényező

Megmutatja a bruttó profit és bruttó veszteség arányát.

Profit tényező = Bruttó nyereség / bruttó veszteség

Expected payoff / Várt eredmény

Várt eredmény = (nyereséges kereskedések / összes kereskedés) * (bruttó profit / profitos kereskedések) – (veszteséges kereskedések / összes kereskedés) * (bruttó veszteség / veszteséges kereskedések)

Egyszerűbben: nettó profit / összes kereskedés száma

Absolute drawdown / Teljes visszaesés

A kezdő betét és a teszt során elért legkisebb könyvelt egyenleg különbsége.

Teljes visszaesés = Kezdő betét – legkisebb könyvelt egyenleg

Maximal drawdown / Maximális lehívás

A legnagyobb különbség a lokálisan elért legmagasabb könyvelt egyenleg és az őt követő legkisebb floating (= el nem könyvelt profit, vagyis a nyitott pozíciók jelenértéke) érték között.

Maximális lehívás = (Legmagasabb könyvelt egyenleg – az őt követő legalacsonyabb floating értékek) maximuma

Az alábbi kép a maximális lehívás értékének növekedését mutatja be. A végső érték nagyságát a legvastagabb nyilak mutatják.

Maximális lehívás

Maximális lehívás

A maximális lehívás százalékértéke = Maximális lehívás / legnagyobb könyvelt egyenleg * 100%

Relative drawdown / Relative drawdown

A mindenkori könyvelt egyenleg és a maximálisan elszenvedett veszteség aránya százalékban.

Példa: az induló letétünk 1000 dollár. Ha elbukunk 250 dollárt, akkor a relatív lehívás 25% lesz. Amennyiben felküzdjük magunkat 2000 dollárra, és itt elvesztünk 500 dollárt, akkor az érték továbbra is 25% marad.

Ha ezután 10000 dollárra növekszik számlánk egyenlege, és elbukunk belőle 1000 dollárt akkor a relatív lehívás értéke 10%-ra változik.

A kimutatásban található többi eredmény legtöbbje egyszerűbb matematikai műveletekkel jön ki.

Total trades / Összes kereskedés

Ennyi kereskedés történt a teszt során.

Short positions (won %) / Short pozíciók (won %)

Az összes short kereskedés darabszáma, illetve a nyereségesek százaléka (profitos short pozíciók / összes short pozíció * 100%)

Long positions (won %) / Long pozíciók (won %)

Az összes long kereskedés darabszáma, illetve a nyereségesek százaléka (profitos long pozíciók / összes long pozíció * 100%)

Azok az ügyletek, amelyek eredménye nem pozitív és nem negatív – vagyis nulla – nyertes pozíciónak számítanak a darabszámok és az egymást követő nyereségek szempontjából is. A nullás pozíciók tehát az átlagos pozíciónkénti nyereséget is leronthatják, ezt érdemes figyelembe venni a kiértékelés során.

Profit trades (% of total)  / Nyereséges kereskedések (az összes %-a)

Az összes profitos kereskedés és az összes kereskedés százalékos aránya (összes profitos kereskedés / összes kereskedés * 100%)

Loss trades (% of total)  / Veszteséges kereskedések (az összes %-a)

Az összes veszteséges kereskedés és az összes kereskedés százalékos aránya (összes veszteséges kereskedés / összes kereskedés * 100%)

Largest profit trade / Legnagyobb nyereséges ügylet

A legnagyobb profittal zárult kereskedés a profitos ügyletek közül

Largest loss trade / Legnagyobb veszteséges ügylet

A legnagyobb veszteséggel zárult kereskedés a veszteséges ügyletek közül

Average profit trade / Átlag nyereséges ügylet

A profitos kereskedések átlagos nyeresége (Bruttó profit / profitos kereskedések száma)

Average loss trade / Átlag veszteséges ügylet

A veszteséges kereskedések átlagos vesztesége (Bruttó veszetség / profitos kereskedések száma)

Maximum consecutive wins (profit in money) / Maximum egymást követő nyereségek (a profit pénzben)

Az egy sorozatban egymást követő nyereséges kötések összprofitja

Maximum consecutive losses (profit in money) / Maximum egymást követő veszteségek (a profit pénzben)

Az egy sorozatban egymást követő veszteséges kötések összprofitja

Maximum consecutive wins (count of wins) / Maximum egymást követő nyereségek (a nyereségek száma)

Az egy sorozatban egymást követő nyereséges kötések darabszáma

Maximum consecutive losses (count of losses) / Maximum egymást követő veszteségek (a veszteségek száma)

Az egy sorozatban egymást követő veszteséges kötések darabszáma

Average consecutive wins / Átlag egymást követő nyereségek

Az egymást követő nyertes pozíciók sorozatainak átlaga

Average consecutive wins / Átlag egymást követő veszteségek

Az egymást követő veszteséges pozíciók sorozatainak átlaga

A színek jelentése a modellezés csíkjában

A következő színek fordulhatnak elő a modellezés minőségét jelző csíkban:

  • Lime (világos zöld): modellezés perces adatok alapján (7-es szám)
  • Mélyebb zöld színek: M5-től H4-ig alapul vett idősík adatokat jelzik (3-as, 4-es, 5-ös, 6-os számok)
  • Rózsaszín: fraktálszámításon alapuló modellezés kisebb idősík adata nélkül (2-es szám)
  • Szürke szín: modellezési korlátozás dátum alapján (1-es szám)
A backteszt modellezésének minősége

A backteszt modellezésének minősége

A fenti képen látható színes csík számításának alapja:

Gyertyák a tesztben = 4190;

Kezdő gyertya = 2371;

StartGen (H4) = 3042 (3-assal jelölve a képen);

Start H1 = 3355 (4-essel jelölve a képen);

Start M30 = 3841 (5-össel jelölve a képen);

Start M15 = 3891 (6-össel jelölve a képen);

Start M5 = 0 (nincs jelzés a képen, mivel az adatok percesen korábbiak);

A teljes képlet, a behelyettesített adatokkal:

((0.25*(3042-2371) + 0.5*(3917-3042) + 0.9*(4190-3917)) / (4190-2371))*100% =

((0.25*671 + 0.5*875 + 0.9*273) / 1819)*100% = 46.78%

Remélem, sikerült egy-két ismeretlen fogalmat tisztázni. Most pedig tessék kommentelni! :)