Teljes útmutató a Forex Backtestinghez

A digitális piac térhódítása miatt a technikai jártasságra még nagyobb hangsúlyt fektetnek. A részvények, CFD-k, határidős ügyletek és devizakereskedők jól teszik, ha felkészültek az egyre dinamikusabbá váló környezetben való eligazodásra

Az információs rendszertechnológiák fejlődésének köszönhetően olyan készségek, mint például a szoftveres kereskedési platformok használata és az internetkapcsolati problémák valós idejű hibaelhárítása elengedhetetlenek. Ezen túlmenően a kereskedelmi ötletek tesztelése az élő piacon való alkalmazás céljából természeténél fogva hasznos. Ennek egyik ilyen módja a kereskedési stratégia backtesztelése

Mi az a backtesztelés?

A backtesting egy kereskedési rendszer vagy stratégia alkalmazása egy historikus adathalmazon. Ha a vizsgálat befejeződött, a kereskedő képet kap a stratégia vagy a rendszer múltbeli teljesítményéről. A backtesztelés eredményeit ezután a stratégia piaci belépési és kilépési pontjainak vizsgálatára, valamint a kockázatkezelési paraméterek optimalizálására használják

A modern forex kereskedésben a technikai elemzés az aktív kereskedők számára a legmegfelelőbb módszertan. Míg a hosszú távú devizapiaci befektetők a fundamentumokra támaszkodhatnak, hogy megragadják a kiválasztott devizapárok széleskörű trendjeit, addig a swing, nappali és napközbeni kereskedők a technikai mutatókhoz fordulnak, hogy az ármozgásokat kezelhető kontextusba helyezzék. Az egyik módja annak, hogy bármelyik megközelítést érvényesnek vagy érvénytelennek ítéljék, a stratégia visszatesztelése.

Egy forex kereskedési stratégia backteszteléséhez két dologra van szükség: egy historikus adathalmazra és egy stratégiára. Ha a vizsgálat lezárul, megkezdődhet az optimalizálási folyamat

Kereskedjen a hírekkel: Gazdasági naptárunk megtekintése

Történelmi adatok

A historikus adatkészletek a korábban meghatározott időszakokban bekövetkezett ármozgások részletes beszámolói. A devizapiac esetében ezek a múltbeli árfolyam-ingadozásokból állnak. A historikus adatok bármilyen formában bemutathatók, az árváltozásoktól kezdve egy Excel-táblázaton keresztül egy vonal-, sáv- vagy gyertyatartó diagramig.

A historikus piaci adatok biztosítása a backtesztelési projekt végrehajtásának kezdeti lépése. Ehhez ki kell választani egy eszközt és egy időszakot, amelyben vizsgálódni kívánunk. Onnan az adatok kiválaszthatók a kívánt periodicitás szerint, konkrétan havi, heti, napi és napon belüli időkeretekre.

Kereskedési stratégia

Mielőtt a backtesztelés megkezdődne, ki kell dolgozni egy kereskedési stratégiát. A kereskedési stratégia egy szabályokon alapuló struktúra, amely szabályozza a piacra lépést, a piacról való kilépést és a vállalt kockázatot. A backteszteléshez e két elem közül kettő alapvető fontosságú

  • Piacra lépés: A piacra lépés az az árpont, ahol egy új vételi vagy eladási pozíciót nyitunk az élő piacon. A forex kereskedésben a piacra lépés egy devizapár vásárlásával vagy eladásával történik
  • Piaci kilépés: A piacról való kilépés az a pont, amikor egy nyitott pozíciót lezárnak. A piacról való kilépéshez az ember egy kiegyenlítő megbízást ad, hogy lezárja a fennálló hosszú (eladási) vagy rövid (vételi) pozíciót. Ez történhet take profit vagy stop loss megbízások végrehajtásával.

A piacra lépés és kilépés szabályai nélkül lehetetlen a backtesztelés. Bár a kereskedési ötletek történelmileg irrelevánsnak bizonyulhatnak, a tanulmány alapját képezik, és felhasználhatók egy hatékonyabb forex kereskedési stratégia kialakításához.

A stratégia optimalizálása

A pozícióméretezés és a kockázat vs. jutalom forgatókönyvek minden hatékony kereskedési stratégia kulcsfontosságú elemei. És bár ezek nem elengedhetetlenek egy backteszting tanulmányhoz, szerves részét képezik bármely stratégiai optimalizálásnak.

Az optimalizálás az a folyamat, amelynek során a múltbeli adatokat arra használják, hogy számszerűsítsék, hogyan befolyásolták a piaci feltételek a stratégia teljesítményét. Ez a piaci belépési és kilépési pontok vizsgálatával történik, hogy kiderüljön, van-e hatékonyabb módja a kockázati tőke alkalmazásának. A stratégia optimalizálásának gyakori módjai a kockázat és a hozam arányának elferdítése és a pozícióméretek módosítása.

Backtesting eszközök

A modern piac egyik legjobb tulajdonsága, hogy az átlagos kiskereskedőnek rengeteg backtesztelési lehetőség áll rendelkezésére. Az előfizetéses és ingyenes forex historikus adatkészletek könnyen elérhetők, csakúgy, mint a különböző backtesting eszközök. Ezen erőforrások birtokában bármely kereskedő képes statisztikai nyilvántartást készíteni egy stratégia múltbeli teljesítményéről.

Forex Backtesting szoftver

A backteszting tanulmány elkészítéséhez használt leggyakoribb eszközök közé tartozik az automatizált stratégia tesztelő. Ezek olyan szoftverprogramok, amelyeket kifejezetten a történelmi piaci adathalmazok átvizsgálására készítettek. Általában a speciális backtesting szoftvereket harmadik féltől vásárolják meg

Bizonyos esetekben maga a forex kereskedési platform is rendelkezik a funkciójába épített stratégiatesztelővel. A Ninjatrader például rendelkezik egy stratégiaoptimalizáló funkcióval, amely lehetővé teszi a historikus ármozgások visszatesztelését előre meghatározott belépési és kilépési szabályok tekintetében. A szakértői tanácsadók is backtesztelhetők a Metatrader 4 vagy Metatrader 5 rendszerben a stratégia tesztelő funkció segítségével

Kézi backtesztelés

Természetesen a backtesztelés egyik különösen hasznos eszköze a ceruza. Sok nagyszerű kereskedési rendszert teszteltek kézzel. Ha egy programozó vagy automatizált szoftver szolgáltatásai nem állnak rendelkezésre, akkor semmi baj nincs a jegyzettömb és a ceruza használatával

Forex Backtesting példa

A devizapiaci backtesztelés folyamatának teljes körű bemutatásához nézzünk egy valós példát. Tegyük fel, hogy Erin az EUR/USD kereskedő egy napközbeni 10/20 periódusú egyszerű mozgóátlag keresztezési stratégiát szeretne tesztelni. Mielőtt elkezdené, Erinnek meg kell határoznia a következőket:

  1. A vizsgálat időtartama
  2. Időszakosság vagy növekmény
  3. Piacra lépési pont
  4. Piaci kilépési pont

Erin úgy dönt, hogy megnézi, hogyan teljesít a mozgóátlag-keresztezési stratégia az előző évben. A választott periódusidő 30 perc. Amikor a 10 periódusú SMA a 20 periódusú SMA fölé keresztezi, egy hosszú pozíciót nyitnak; amikor a 10 periódusú SMA visszaesik a 20 SMA alá, a hosszú pozíciót lezárják, és új rövid pozíciót nyitnak.

A tanulmány elkészülte után Erin egy átfogó, 12 hónapos vételi és eladási mérőszámokkal rendelkezik az EUR/USD 30 perces időkeretére vonatkozóan. Ha a nyomon követési eredmények elfogadhatóak, az SMA-stratégia egy része vagy egésze beépíthető Erin kereskedési tervébe.

A backtesztelés előnyei

A stratégiák backtesztelése a profi és kezdő kereskedők körében egyaránt elterjedt gyakorlat. Számos kulcsfontosságú előnnyel jár azok számára, akik a piacon való előnyszerzésre törekszenek. A három legnagyobb közülük a statisztikai pályafeljegyzés létrehozása, a kereskedői bizalom előmozdítása és a rendszeralkalmazások.

1. Statisztikai nyilvántartás

Egy historikus adatsor visszatesztelése gyors és megfizethető módja egy stratégia teljesítményének ellenőrzésére. A győzelmek és veszteségek könnyen azonosíthatóak, így létrehozva egy statisztikai nyilvántartást. A stratégia nyerési százaléka, valamint a várható időszakos nyereség és veszteség mind könnyen elérhető. A végeredmény egy részletes, empirikusan számszerűsített beszámoló a múltbeli teljesítményről.

A tanulmányban olyan fejlett mérőszámok is szerepelhetnek, mint a kereskedésenkénti nyereség/veszteség, az egymást követő nyertesek/vesztesek, a kereskedési számla maximális lehívása, a saját tőke megtérülése és a helyreállásig eltelt idő. Ezek az értékek rávilágítanak arra, hogy egy stratégia vagy rendszer idővel hogyan teljesített a különböző piaci körülmények között

2. Bizalom

A stratégiai backtesztelés talán legnagyobb előnye a pszichológiai komponens. A módszertan hatékonyságának időbeli megfigyelésével az ember megnyugodhat az éles kereskedésben való alkalmazásának lehetséges eredményeit illetően. Ilyen perspektíva mellett a valós idejű piacon exponenciálisan könnyebb döntőnek lenni.

Tegyük fel például, hogy A kereskedő teljes mértékben backtesztelt egy Bollinger BandBollinger Band kitörési stratégiát. A vizsgálat eredményei kivételesnek bizonyultak, folyamatos nyereséget és robusztus nyerési százalékot generáltak. Értelemszerűen A kereskedő eléggé bízik a stratégiában ahhoz, hogy azt következetesen, habozás nélkül alkalmazza az élő piacon.

3. Rendszeres alkalmazások

A backtesting tanulmányok kifejezetten hasznosak a rendszerépítésben. A kereskedési rendszer olyan szabályrendszer, amely szabályozza a piacra lépést, a kilépést és az alkalmazott tőkeáttételt. A rendszerek lehetnek diszkrecionálisak vagy automatizáltak, és bármely piacon vagy időkeretben alkalmazhatók

A fejlődő technológia a kifinomult rendszerkereskedelmet a lakossági tömegek számára is elérhetővé tette. Valójában az algoritmikus rendszerek ma már az egész piacon elterjedtek, 2020-ban a devizakereskedők több mint 40%-a használ algókat.[1] Ennek megfelelően a statisztikai teljesítmény a legfontosabb barométer annak meghatározásához, hogy egy black box, jelszolgáltató vagy nagyfrekvenciás rendszer életképes-e

A backtesztelés hátrányai

Mint minden dolognak a pénzügyi piacokon, a historikus adatok backtesztelésének is van néhány hátránya, amit érdemes megjegyezni. A lista élén a megerősítési torzítás, a hibás adatok és a következetlen kereskedési végrehajtás áll.

1. Megbízhatatlan adatok

Fontos megjegyezni, hogy a forex egy tőzsdén kívüli (OTC) piac. A likviditásszolgáltatók és a brókerek viszont egyedi árakon folytatnak üzletet, bár a különbségek csekélyek. Ez a historikus adatok eltéréséhez vezethet, ami torzíthatja a backtesztelési eredményeket.

2. Megerősítési torzítás

A múltbeli események vizsgálatakor az emberek hajlamosak egy csapdának áldozatául esni: a megerősítési torzításnak. A megerősítési torzítás alááshatja bármely backtesting tanulmányt, az eredményeket pontatlanná és félrevezetővé téve.

A Cambridge szótár szerint a megerősítési torzítás "az a tény, hogy az emberek nagyobb valószínűséggel fogadnak el vagy vesznek észre olyan információkat, amelyek látszólag alátámasztják azt, amit már hisznek vagy várnak."[2] Ez különösen fontos a backtesztelésnél, mivel a kereskedők gyakran tudat alatt visszatöltik az adatokat vagy a vizsgálati paramétereket úgy alakítják, hogy pozitív eredményeket hozzanak létre. Ebben az esetben a statisztikai eredménylista félrevezető, és nem tükrözi egy stratégia vagy rendszer valódi teljesítményét

3. Végrehajtás

Amint azt bárki, aki jelentős kereskedési tapasztalattal rendelkezik, tanúsíthatja, az élő piacon való kereskedés sokkal másabb, mint a paraméterek alkalmazása a múltbeli forex adatkészletekre. Számos tényező játszik szerepet, különösen az ajánlati/bekérési spreadek és a csúszás.

A csúszás a kívánt megbízási ár és az ár közötti különbség, amelyen a megbízás ténylegesen teljesült a piacon. A backtesting nem tudja figyelembe venni ezt a változót, így a piacra lépés és a piacról kilépés értékei pontatlanok lehetnek. Továbbá, a vételi és eladási árkülönbözetek jelentősen változnak, ahogy a piaci feltételek a likviditás és a volatilitás tekintetében változnak.

A bid/ask spread és a slippage variancia együttesen képes jelentősen befolyásolni a backtesztelési eredményeket

Forward Vs Backtesting

A backtesting a piacelemzésnek csak az egyik típusa. Sokan nagyszerű kiindulópontnak, a jövőbeli rendszer- és stratégiaépítési projektek alapjának tekintik. Mások inkább az aktuális piaci viselkedést tanulmányozzák, és ennek megfelelően alakítják ki a stratégiát.

Mi a Forward Testing?

A forward tesztelés egy stratégia paramétereinek alkalmazása a fejlődő ármozgásokra. A papíralapú kereskedésként is ismert forward tesztelés magában foglalja egy rendszer vagy stratégia következetes alkalmazását az élő piacokon. Az ilyen projekteket egy demószámlához kapcsolódó kereskedési szimulátor segítségével lehet elvégezni. Számos olyan termék létezik, amelyet forward tesztelésre terveztek, mint például a Tradingview papíralapú kereskedési funkciója.

Átfogó elemzés készítése

A forward és a backtesting gyakran kombinálódik egy átfogó stratégiai elemzés létrehozásához. Ehhez a kereskedők kiválasztanak egy időszakot a backteszteléshez, majd forwardtesztelnek az élő piacon. Miután megfelelő forward tesztelési mintakészletet hoztak létre, az eredményeket összehasonlítják a backteszteléses vizsgálattal

A stratégia hatékonyságát ezután az előre és hátrafelé tesztelt adatsorok közötti eltérés megfigyelésével ítélik meg. Ha az eredmények eltérnek egymástól, akkor a rendszer véletlenszerű teljesítményt tükröz; ha kiegészítik egymást, akkor a rendszer paraméterei érvényesek.

Összegzés

A visszatesztelés egy rendszer vagy stratégia alkalmazása a historikus árképzési adatokra. Ennek során egy olyan statisztikai nyilvántartás jön létre, amely a módszertan múltbeli teljesítményét tükrözi. Az ilyen vizsgálatok elősegítik a kereskedők bizalmát, és hasznos eszközök a rendszerépítésben. A backtestingnek azonban számos buktatója van, többek között hibás adatkészletek, megerősítési torzítás, és nem veszi figyelembe a változó megbízások végrehajtását.

Végső soron a backtesting jó kiindulópont egy stratégia vagy rendszer elemzéséhez. Bár természetesen nem tökéletes, a fegyelem értékes lehet a gyengeségek és erősségek feltárásában, valamint a meglévő módszertan javításában.

FXCM Research Team

Az FXCM Research Team az FXCM számos piaci és termékszakértőjéből áll.

Az FXCM Research Team által publikált cikkek általában számos közreműködővel rendelkeznek, és célja, hogy általános oktatási és tájékoztató jellegű tartalmat nyújtsanak a piaci hírekről és termékekről.

Referenciák

1

Visszakereshető 16 aug 2022 https://www.reuters.com/business/banks-tighten-grip-fx-market-algo-trading-rises-survey-2021-07-08/

2

Visszakereshető 07 okt 2022 https://dictionary.cambridge.org/us/dictionary/english/confirmation-bias

Közlemény

Ezek az anyagok marketingkommunikációnak minősülnek, és nem veszik figyelembe az Ön személyes körülményeit, befektetési tapasztalatait vagy jelenlegi pénzügyi helyzetét. A tartalom általános piaci kommentárként szolgál, és nem értelmezhető úgy, hogy az bármilyen befektetési tanácsot, befektetési ajánlást és/vagy befektetési tranzakcióra való felhívást tartalmaz. Ez a piaci kommunikáció nem jelenti azt, hogy Önt befektetési tranzakcióra és/vagy befektetési termékek vagy szolgáltatások vásárlására kötelezné. Ezek az anyagok nem a befektetési kutatások függetlenségének előmozdítását célzó jogi követelményeknek megfelelően készültek, és nem tartoznak a befektetési kutatások terjesztését megelőző kereskedési tilalom hatálya alá.

Az FXCM, illetve annak kapcsolt vállalkozásai semmilyen módon nem vállalnak felelősséget Önnel szemben az ezen anyagok tartalmában található pontatlanságokért, hibákért vagy kihagyásokért, függetlenül azok okától, illetve az ilyen anyagok, szolgáltatások és azok tartalmának használatából eredő (közvetlen vagy közvetett) károkért. Következésképpen, minden személy, aki ezek alapján cselekszik, ezt teljes mértékben saját felelősségére teszi. Kérünk mindenképpen olvassa el és értse meg a fenti információkkal kapcsolatos teljes körű felelősségvállalási rendelkezésünket, amely itt elérhető.

A számadatok a múltra vonatkoznak, és a múltbeli teljesítmény nem megbízható mutatója a jövőbeli eredményeknek

Spreads widget: amikor statikus spreadek jelennek meg, a számok a piac zárásakor készült időbélyegzős pillanatfelvételt tükrözik. A spreadek változóak és megjelenésük késhet. Az egy részvényekre vonatkozó árfolyamok 15 perces késleltetéssel jelennek meg. A spread adatok csak tájékoztató jellegűek. Az FXCM nem vállal felelősséget a hibákért, a mulasztásokért vagy a késedelmekért, illetve az ezen információk alapján végrehajtott műveletekért.

${getInstrumentData.name} / ${getInstrumentData.ticker} /

Tőzsde: ${getInstrumentData.exchange}

${getInstrumentData.bid} ${getInstrumentData.divCcy} ${getInstrumentData.priceChange} (${getInstrumentData.percentChange}%) ${getInstrumentData.priceChange} (${getInstrumentData.percentChange}%)

${getInstrumentData.oneYearLow} 52/wk Range ${getInstrumentData.oneYearHigh}