Търговците, които са нетърпеливи да изпробват идеята за търговия на жив пазар, често правят грешката да разчитат изцяло на резултати от бектестиране, за да определят дали системата ще бъде печеливша. Докато бектестирането може да предостави на търговците ценна информация, тя често е подвеждаща и това е само една част от процеса на оценка.
Изпробване извън извадката и тестване на напредъка на ефективността осигуряват допълнително потвърждение относно ефективността на системата и могат да покажат истинските цветове на системата, преди реалните пари да са на линия. Добрата връзка между резултатите от изпитването, извадката от извадката и резултатите от тестовете за напредък е жизненоважна за определянето на жизнеспособността на търговската система.
Основи за бектестиране
Backtesting се отнася до прилагане на система за търговия към исторически данни, за да се провери как би се справила системата през определения период от време. Много от днешните платформи за търговия поддържат backtesting. Търговците могат да тестват идеи с няколко натискания на клавиши и да получат представа за ефективността на дадена идея, без да рискуват средства в търговска сметка. Повторното тестване може да оцени прости идеи, като например как би се получил движещ се среден кросоувър върху исторически данни или по-сложни системи с разнообразни входове и задействания.
Докато една идея може да бъде количествено определена, тя може да бъде подкрепена отново. Някои търговци и инвеститори могат да потърсят експертния опит на квалифициран програмист, за да развият идеята в тестова форма. Обикновено това включва програмист, кодиращ идеята на собствения език, хостван от платформата за търговия. Програмистът може да включва входни променливи, дефинирани от потребителя, които позволяват на търговеца да "ощипва" системата.
Пример за това е в простата подвижна средна система за кросоувър, отбелязана по-горе: Търговецът ще бъде в състояние да въведе (или промени) дължините на двата подвижни средни, използвани в системата. Търговецът може да направи бектест, за да определи кои дължини на подвижните средни стойности биха се представили най-добре в историческите данни.
Оптимизационни изследвания
Много търговски платформи също позволяват проучвания за оптимизация. Това води до въвеждане на диапазон за посочения вход и оставяне на компютъра да „направи математиката“, за да разбере какъв вход би изпълнил най-добре. Многопроменливата оптимизация може да направи математиката за две или повече променливи, за да определи кои комбинации биха постигнали най-добрия резултат.
Например, търговците могат да кажат на програмата кои данни искат да добавят в своята стратегия; след това те ще бъдат оптимизирани до техните идеални тегла, като се имат предвид тестваните исторически данни.
Обратното тестване може да бъде вълнуващо, тъй като една нерентабилна система често може да се трансформира магически в машина за печелене на пари с няколко оптимизации. За съжаление, настройването на система за постигане на най-високо ниво на минала рентабилност често води до система, която ще се представи лошо в реалната търговия. Тази свръх-оптимизация създава системи, които изглеждат добре само на хартия.
Подходяща крива е използването на оптимизационна аналитика за създаване на най-голям брой печеливши сделки с най-голяма печалба от историческите данни, използвани в периода на тестване. Въпреки че изглежда впечатляващо при резултатите от изпитване, приспособяването на кривата води до ненадеждни системи, тъй като резултатите по същество са проектирани по поръчка за конкретния период от време и данни.
Бектестирането и оптимизирането осигуряват много ползи за търговеца, но това е само част от процеса при оценка на потенциална система за търговия. Следващата стъпка на търговеца е да приложи системата към исторически данни, които не са били използвани в началната фаза на обратно тестване.
In-Sample Versus от извадкови данни
Когато тествате идея за исторически данни, е полезно да запазите времеви период от исторически данни за целите на тестване. Първоначалните исторически данни, върху които се тества и оптимизира идеята, се означават като извадкови данни. Наборът от данни, който е запазен, е известен като извадкови данни. Тази настройка е важна част от процеса на оценка, тъй като предоставя начин за тестване на идеята върху данни, които не са били компонент в оптимизационния модел.
В резултат на това идеята няма да бъде повлияна по никакъв начин от извадкови данни и търговците ще могат да определят колко добре може да се справи системата върху нови данни, т.е. при търговията в реалния живот.
Преди да инициират бектестиране или оптимизиране, търговците могат да заделят процент от историческите данни, които да бъдат запазени за тестване извън извадката. Един от методите е да се разделят историческите данни на трети и да се отдели една трета за използване в извадковото тестване. Само първоначалните данни трябва да се използват за първоначалното тестване и за всяка оптимизация.
Фигурата по-долу показва времева линия, в която една трета от историческите данни е запазена за извадково изпитване, а две трети се използват за изпитване в извадка. Въпреки че фигурата по-долу изобразява данните от извадката от извадката в началото на теста, типичните процедури биха имали частта извън извадката непосредствено пред предходната ефективност.
Времева линия, представляваща относителната дължина на извадкови и извадкови данни, използвани в процеса на обратно тестване. Изображение от Джули Банг © Инвестопедия 2020
Корелацията се отнася до приликите между резултатите и общите тенденции на двата набора от данни. Корелационните показатели могат да се използват при оценяване на отчетите за ефективността на стратегията, създадени през периода на тестване (функция, която предлага повечето платформи за търговия). Колкото по-силна е връзката между двете, толкова по-голяма е вероятността дадена система да се представи добре при напредни тестове за ефективност и търговия на живо.
Фигурата по-долу илюстрира две различни системи, които бяха тествани и оптимизирани върху извадкови данни и след това приложени към извадкови данни. Графиката вляво показва система, която очевидно беше подходяща за крива, за да работи добре върху вложените в извадката данни и напълно се провали върху данните извън извадката. Графиката вдясно показва система, която се представи добре както в, така и извън извадкови данни.
Две криви на собствения капитал Данните за търговията преди всяка жълта стрелка представляват тестови извадки. Търгуванията, генерирани между жълтата и червената стрелка, показват тестване извън извадката. Търговията след червените стрелки са от фазите за предварително тестване на ефективността.
След като бъде разработена система за търговия с помощта на извадкови данни, тя е готова да бъде приложена към извадкови данни. Търговците могат да оценят и сравнят резултатите от резултатите между данните в извадката и извадката от извадка.
Ако има малка корелация между изпитването в извадка и извън извадката, като лявата диаграма на фигурата по-горе, вероятно системата е била преоптимизирана и няма да се представи добре при търговията на живо. Ако има силна корелация в ефективността, както се вижда от правилната диаграма, следващата фаза на оценяване включва допълнителен тип изпробване извън извадката, известно като предварително тестване на ефективността.
Основи за тестване на напредъка
Предварително тестване на производителността, известно още като търговия с хартия, предоставя на търговците друг набор от извадкови данни, по които да оценят дадена система. Тестване на напредъка е симулация на реалната търговия и включва следване на логиката на системата на жив пазар. Нарича се още търговия с хартия, тъй като всички сделки се извършват само на хартия; т. е. търговските записвания и изходи се документират заедно с всяка печалба или загуба за системата, но не се извършват реални сделки.
Важен аспект на напредващото тестване на производителността е точно следване на логиката на системата; в противен случай става трудно, ако не и невъзможно, да се оцени точно тази стъпка от процеса. Търговците трябва да са честни по отношение на всякакви търговски влизания и излизания и да избягват поведение като избора на череши или да не включват търговия на хартия, обосновавайки, че „никога не бих предприел тази търговия“. Ако търговията би станала по логиката на системата, тя трябва да бъде документирана и оценена.
Много брокери предлагат симулирана търговска сметка, в която могат да се поставят сделки и да се изчислят съответните печалби и загуби. Използването на симулирана търговска сметка може да създаде полуреалистична атмосфера, върху която да се практикува търговия и допълнителна оценка на системата.
На фигурата по-горе са показани и резултатите за напредни тестове за ефективност на две системи. Отново, системата, представена в лявата диаграма, не успява да надхвърли първоначалното тестване на данни от извадката. Системата, показана на дясната диаграма, обаче, продължава да се представя добре през всички фази, включително тестване на напредъка на напред. Система, която показва положителни резултати с добра връзка между извадката, извадката от извадката и тестовете за предварително представяне, е готова за внедряване на жив пазар.
Долния ред
Backtesting е ценен инструмент, наличен в повечето търговски платформи. Разделянето на исторически данни на множество набори за осигуряване на извадково и извадково тестване може да предостави на търговците практични и ефективни средства за оценка на търговска идея и система. Тъй като повечето търговци използват техники за оптимизация при бектестиране, важно е след това да се оцени системата на чисти данни, за да се определи нейната жизнеспособност.
Продължаването на извадковото изпитване с напредване на тестовете за ефективност осигурява друг слой безопасност преди пускането на система на пазара, рискувайки реални пари. Положителните резултати и добрата връзка между извадката и извадката от извадковото тестване и тестването на напредъка на ефективността увеличават вероятността дадена система да се представи добре в реалната търговия.