Trgovci željni isprobavanja trgovačke ideje na živom tržištu često se pogriješe oslanjajući se u potpunosti na rezultate testiranja kako bi utvrdili hoće li sustav profitirati. Iako backtesting može ponuditi trgovcima korisne informacije, često je zabludu i to je samo jedan dio procesa evaluacije.
Testiranje izvan uzorka i testiranje performansi unaprijed pružaju daljnju potvrdu o učinkovitosti sustava i mogu pokazati prave boje sustava prije nego što se na red pojavi pravi novac. Dobra povezanost između backtestinga, izvan uzorka i rezultata testiranja uspješnosti poslovanja presudna je za utvrđivanje održivosti trgovinskog sustava.
Osnove backtestinga
Backtesting se odnosi na primjenu trgovinskog sustava na povijesne podatke kako bi se provjerilo kako bi sustav funkcionirao tijekom određenog vremenskog razdoblja. Mnoge današnje trgovačke platforme podržavaju backtesting. Trgovci mogu testirati ideje s nekoliko pritisaka na tipke i steći uvid u učinkovitost ideje bez riskiranja sredstava na računu za trgovanje. Ponovno testiranje može procijeniti jednostavne ideje, poput performansi kliznog prosjeka na povijesnim podacima ili složenijih sustava s različitim ulazima i okidačima.
Sve dok se ideja može kvantificirati, može se poduprijeti. Neki trgovci i investitori mogu potražiti stručnost kvalificiranog programera kako bi ideju razvili u testnu formu. Obično to uključuje programera koji je ideju kodirao na vlastiti jezik koji posjeduje trgovačka platforma. Programer može ugraditi korisnički definirane ulazne varijable koje omogućavaju trgovcu da "prilagodi" sustav.
Primjer za to bi bio u jednostavnom crossover sustavu prosjeka koji je gore spomenut: Trgovac će moći unijeti (ili promijeniti) duljine dvaju pomičnih prosjeka koji se koriste u sustavu. Trgovac je mogao unazad potvrditi koja bi duljina pokretnih prosjeka imala najbolje rezultate na povijesnim podacima.
Studije optimizacije
Mnoge trgovačke platforme također omogućavaju optimizacijske studije. To podrazumijeva unos raspona za zadani ulaz i dopuštanje računalu da "uradi matematiku" da shvati koji bi ulaz bio najbolji. Optimizacija s više varijabli može učiniti matematiku za dvije ili više varijabli da bi se utvrdilo koje bi kombinacije postigle najbolji rezultat.
Na primjer, trgovci mogu reći programu koji unosi žele dodati u svoju strategiju; ovi podaci bi se tada optimizirali do njihovih idealnih težina s obzirom na provjerene povijesne podatke.
Ponovno testiranje može biti uzbudljivo jer se neprofitabilni sustav često može magično pretvoriti u stroj za zarađivanje novca s nekoliko optimizacija. Nažalost, prilagođavanje sustava radi postizanja najveće razine dosadašnje profitabilnosti često dovodi do sustava koji će u stvarnom trgovanju biti lošiji. Ova prevelika optimizacija stvara sustave koji izgledaju dobro samo na papiru.
Prilagođavanje krivulje je uporaba analitičke optimizacije za stvaranje najvećeg broja dobitnih obrta s najvećom dobiti na povijesnim podacima koji su korišteni u razdoblju testiranja. Iako izgleda impresivno u rezultatima backtestinga, uklapanje krivulja vodi u nepouzdane sustave, jer su rezultati u osnovi dizajnirani po mjeri za određeni podatak i vremensko razdoblje.
Ponovno testiranje i optimizacija pružaju mnogo koristi trgovcu, ali to je samo dio postupka prilikom procjene potencijalnog trgovinskog sustava. Sljedeći je trgovački korak primjena sustava na povijesne podatke koji nisu korišteni u početnoj fazi testiranja.
Podaci u uzorku prema podacima izvan uzorka
Prilikom ispitivanja ideje o povijesnim podacima, korisno je rezervirati vremensko razdoblje povijesnih podataka u svrhu testiranja. Početni povijesni podaci na kojima se ideja testira i optimiziraju nazivaju se uzorkom podataka. Skup podataka koji je rezerviran poznat je kao van-uzorak podataka. Ovo je postavljanje važan dio procesa evaluacije jer pruža način testiranja ideje na podacima koji nisu bili sastavni dio modela optimizacije.
Kao rezultat, na ovu ideju ni na koji način neće utjecati vanbračni podaci, a trgovci će moći utvrditi koliko dobro sustav može raditi na novim podacima, tj. U trgovanju u stvarnom životu.
Prije pokretanja bilo kakvog ponovnog testiranja ili optimizacije trgovci mogu izdvojiti postotak povijesnih podataka rezerviranih za testiranje izvan uzorka. Jedna metoda je podijeliti povijesne podatke na trećine i izdvojiti jednu trećinu za korištenje u ispitivanju izvan uzorka. Za početno testiranje i optimizaciju trebaju se koristiti samo uzorci podataka.
Donja slika prikazuje vremensku liniju u kojoj je jedna trećina povijesnih podataka rezervirana za ispitivanje izvan uzorka, a dvije trećine koristi se za ispitivanje u uzorku. Iako donja slika prikazuje podatke izvan uzorka na početku ispitivanja, tipični postupci bi trebali imati dio izvan uzorka neposredno prije izvedbe prema naprijed.
Vremenska crta koja predstavlja relativnu duljinu podataka u uzorku i izvan uzorka korištenih u postupku za testiranje. Slika Julie Bang © Investopedia 2020
Korelacija se odnosi na sličnosti između performansi i cjelokupnih trendova dvaju skupa podataka. Korelacijski mjerni podaci mogu se upotrijebiti za vrednovanje izvještaja o izvedbi strategije stvorenih tijekom razdoblja testiranja (značajka koju pruža većina trgovačkih platformi). Što je jača povezanost između njih, veća je vjerojatnost da će sustav biti uspješan u naprednom testiranju performansi i trgovanju uživo.
Donja slika ilustrira dva različita sustava koji su testirani i optimizirani na uzorku podataka, a zatim primijenjeni na podatke izvan uzorka. Grafikon na lijevoj strani prikazuje sustav koji je očito bio krivuljast da dobro funkcionira na uzorcima i potpuno nije uspio na podacima izvan uzorka. Grafikon na desnoj strani prikazuje sustav koji je dobro radio i na podacima iz uzorka i izvan njih.
Dvije krivulje kapitala. Podaci trgovine prije svake žute strelice predstavljaju ispitivanje u uzorku. Trgovine generirane između žute i crvene strelice ukazuju na testiranje izvan uzorka. Trgovanja nakon crvenih strelica su iz faza unaprijed testiranja uspješnosti.
Nakon što je razvijen trgovački sustav koji koristi podatke uzoraka, spreman je za primjenu na van-uzorak podataka. Trgovci mogu procijeniti i usporediti rezultate izvedbe između podataka u uzorku i izvan uzorka.
Ako postoji mala povezanost između testiranja u uzorku i izvan uzorka, poput lijevog grafikona na gornjoj slici, vjerovatno je da je sustav pretjerano optimiziran i neće imati dobre rezultate u trgovanju uživo. Ako postoji jaka povezanost u učinku, kao što se vidi na desnom grafikonu, sljedeća faza evaluacije uključuje dodatnu vrstu testiranja izvan uzorka poznatog kao ispitivanje uspješnosti unaprijed.
Osnove ispitivanja uspješnosti unaprijed
Napredno testiranje performansi, poznato i kao trgovanje papirom, pruža trgovcima još jedan skup neuobičajenih podataka na osnovu kojih će ocijeniti sustav. Napredno testiranje performansi simulacija je stvarnog trgovanja i uključuje praćenje logike sustava na živom tržištu. Naziva se i trgovanjem papirima jer se svi poslovi izvršavaju samo na papiru; to jest, trgovinski unosi i izlasci dokumentiraju se zajedno s bilo kojom dobiti ili gubitkom za sustav, ali ne izvršava se stvarno trgovanje.
Važan aspekt naprednog testiranja performansi je točno slijediti logiku sustava; u suprotnom, postaje teško, ako ne i nemoguće, precizno procijeniti ovaj korak postupka. Trgovci bi trebali biti iskreni u pogledu bilo kakvih ulazaka i izlazaka iz trgovine i izbjegavati ponašanje poput branja trešanja ili ne uključivanja trgovine na papiru racionalizirajući da „nikad ne bih preuzeo tu trgovinu“. Ako bi se trgovina dogodila po logici sustava, to bi se trebalo dokumentirati i procijeniti.
Mnogi brokeri nude simulirani račun za trgovanje na koji se može staviti trgovina i izračunati odgovarajući dobitak i gubitak. Korištenje simuliranog trgovačkog računa može stvoriti polurealnu atmosferu na kojoj se može tretirati trgovanje i daljnja procjena sustava.
Na gornjoj slici prikazani su i rezultati ispitivanja za uspješnost rada na dva sustava. Ponovno, sustav predstavljen na lijevom grafikonu ne uspijeva biti daleko izvan početnog testiranja na uzorku podataka. Sustav prikazan na desnoj tabeli, međutim, i dalje uspješno radi kroz sve faze, uključujući testiranje prema naprijed. Sustav koji pokazuje pozitivne rezultate s dobrom korelacijom između uzorkovanja, izvan uzorka i testiranja uspješnosti unaprijed spreman je za implementaciju na tržištu uživo.
Donja linija
Backtesting je vrijedan alat dostupan na većini trgovačkih platformi. Podjela povijesnih podataka u više skupova radi testiranja u uzorku i izvan uzorka može ponuditi trgovcima praktična i učinkovita sredstva za ocjenu ideje i sustava trgovanja. Budući da većina trgovaca koristi metode optimizacije u backtestingu, važno je procijeniti sustav na čistim podacima kako bi se utvrdila njegova održivost.
Nastavak testiranja izvan uzorka s testiranjem performansi unaprijed pruža još jedan sloj sigurnosti prije stavljanja sustava na tržište riskirajući stvarni novac. Pozitivni rezultati i dobra povezanost između backtestinga u uzorku i izvan uzorka i testiranja performansi unaprijed povećavaju vjerojatnost da će sustav biti uspješan u stvarnom trgovanju.