Backtesting stock trading strategy


Backtesting: Interpreting The Past Backtesting jest kluczowym elementem skutecznego rozwoju systemu handlu. Dokonuje się tego poprzez rekonstrukcję, z danymi historycznymi, transakcji, które miałyby miejsce w przeszłości przy użyciu reguł zdefiniowanych przez daną strategię. Wynik zawiera statystyki, które można wykorzystać do oceny skuteczności strategii. Korzystając z tych danych, handlowcy mogą optymalizować i ulepszać swoje strategie, znajdować wszelkie techniczne lub teoretyczne wady i zdobywać zaufanie do swojej strategii przed zastosowaniem jej na prawdziwych rynkach. Podstawowa teoria mówi, że każda strategia, która dobrze działała w przeszłości, prawdopodobnie będzie dobrze działać w przyszłości, i odwrotnie, jakakolwiek strategia, która źle działała w przeszłości, może w przyszłości źle funkcjonować. W tym artykule przyjrzymy się, jakie aplikacje są używane do weryfikacji historycznej, jakie dane są pozyskiwane i jak je wykorzystać. Analiza danych i narzędzi może dostarczyć wiele cennych informacji statystycznych na temat danego systemu. Niektóre uniwersalne statystyki analizy historycznej obejmują: Zysk lub stratę netto - Procentowy zysk netto. Ramy czasowe - daty, w których miało miejsce badanie. Wszechświat - akcje, które zostały uwzględnione w teście historycznej. Miary zmienności - Maksymalny procent do góry i do dołu. Średnie - Procentowy średni przyrost i średnia strata, średnie pręty w posiadaniu. Narażenie - Procent zainwestowanego kapitału (lub ekspozycji na rynek). Współczynniki - współczynnik wygranych do strat. Zweryfikowany zwrot - procentowy zwrot w ciągu roku. Skorygowany o ryzyko powrót - Odsetek zwrotu jako funkcja ryzyka. Zazwyczaj oprogramowanie testowania wstecznego będzie miało dwa ekrany, które są ważne. Pierwszy umożliwia traderowi dostosowanie ustawień do weryfikacji historycznej. Te dostosowania obejmują wszystko, od czasu do kosztów prowizji. Oto przykład takiego ekranu w programie AmiBroker: Drugi ekran to rzeczywisty raport z analizy historycznej. Tutaj znajdziesz wszystkie statystyki wymienione powyżej. Ponownie, oto przykład tego ekranu w AmiBroker: Ogólnie rzecz biorąc, większość oprogramowania do handlu zawiera podobne elementy. Niektóre zaawansowane oprogramowanie zawierają również dodatkowe funkcje do automatycznego określania pozycji, optymalizacji i innych bardziej zaawansowanych funkcji. 10 przykazań Istnieje wiele czynników, na które zwracają uwagę handlowcy, gdy przeprowadzają backtesting strategii handlowych. Oto lista 10 najważniejszych rzeczy do zapamiętania podczas backtestingu: Weź pod uwagę szerokie trendy rynkowe w czasie, w którym dana strategia została przetestowana. Na przykład, jeśli strategia została poddana próbie wstecznej z lat 1999-2000, może nie być dobra na bessie. Często dobrym pomysłem jest przeprowadzenie analizy historycznej w długim okresie obejmującym kilka różnych rodzajów warunków rynkowych. Weź pod uwagę wszechświat, w którym nastąpiła analiza historyczna. Na przykład, jeśli testowany jest szeroki system rynkowy z wszechświatem składającym się z zapasów technologicznych, może nie działać dobrze w różnych sektorach. Zasadniczo, jeśli strategia jest ukierunkowana na konkretny rodzaj zasobów, ograniczaj wszechświat do tego gatunku, ale we wszystkich innych przypadkach zachowaj duży wszechświat do celów testowych. Środki w zakresie zmienności są niezwykle ważne, aby wziąć je pod uwagę przy opracowywaniu systemu transakcyjnego. Dotyczy to zwłaszcza rachunków lewarowanych, które są poddawane wezwaniom do uzupełnienia depozytu zabezpieczającego, jeżeli ich kapitały spadną poniżej pewnego punktu. Handlowcy powinni dążyć do utrzymania niskiej zmienności, aby zmniejszyć ryzyko i umożliwić łatwiejsze wejście i wyjście z danego kapitału. Również średnia liczba przechowywanych barów jest bardzo ważna podczas opracowywania systemu transakcyjnego. Chociaż większość oprogramowania testowego uwzględnia koszty prowizyjne w ostatecznych obliczeniach, nie oznacza to, że powinieneś zignorować tę statystykę. Jeśli to możliwe, podniesienie średniej liczby trzymanych pasków może obniżyć koszty prowizji i poprawić ogólny zwrot. Ekspozycja jest mieczem obosiecznym. Zwiększona ekspozycja może prowadzić do wyższych zysków lub wyższych strat, a mniejsza ekspozycja oznacza niższe zyski lub niższe straty. Ogólnie rzecz biorąc, dobrym pomysłem jest utrzymanie ekspozycji poniżej 70 w celu zmniejszenia ryzyka i umożliwienia łatwiejszego przejścia do iz danego zasobu. Statystyki dotyczące średnich zysków i strat, w połączeniu ze współczynnikiem wygranych do strat, mogą być przydatne do określenia optymalnego doboru pozycji i zarządzania pieniędzmi za pomocą technik takich jak kryteria Kelly'ego. (Patrz zarządzanie pieniędzmi za pomocą kryterium Kelly'ego.) Handlowcy mogą zajmować większe pozycje i obniżać koszty prowizji, zwiększając ich średnie zyski i zwiększając współczynnik wygranych do strat. Zweryfikowany zwrot jest ważny, ponieważ jest używany jako narzędzie do porównywania zwrotów systemów z innymi lokacjami inwestycyjnymi. Ważne jest nie tylko spojrzenie na ogólny annualizowany zwrot, ale także uwzględnienie zwiększonego lub zmniejszonego ryzyka. Można tego dokonać, patrząc na skorygowaną o ryzyko stopę zwrotu, która uwzględnia różne czynniki ryzyka. Zanim zostanie przyjęty system transakcyjny, musi on osiągnąć lepsze wyniki niż wszystkie inne systemy inwestycyjne przy równym lub mniejszym ryzyku. Weryfikacja typu backtesting jest niezwykle ważna. Wiele aplikacji analizy historycznej ma dane wejściowe dla kwot prowizji, okrągłych (lub ułamkowych) wielkości partii, wielkości znaczników, wymagań dotyczących depozytu zabezpieczającego, stóp procentowych, założeń dotyczących poślizgów, reguł dotyczących zmiany pozycji, reguł wyjścia z tego samego paska, (końcowych) ustawień zatrzymania i wielu innych. Aby uzyskać najdokładniejsze wyniki analizy historycznej, ważne jest dostrojenie tych ustawień w celu naśladowania brokera, który będzie używany, gdy system zostanie uruchomiony. Analiza historyczna może czasami prowadzić do czegoś znanego jako nadmierna optymalizacja. Jest to warunek, w którym wyniki osiągów są tak bardzo dopasowane do przeszłości, że nie są już tak dokładne w przyszłości. Ogólnie dobrym pomysłem jest wdrożenie zasad, które mają zastosowanie do wszystkich zasobów lub wybranych zestawów docelowych akcji, i nie są zoptymalizowane w stopniu, w jakim reguły nie są już zrozumiałe dla twórcy. Backtesting nie zawsze jest najdokładniejszym sposobem oceny skuteczności danego systemu transakcyjnego. Czasami strategie, które osiągały dobre wyniki w przeszłości, nie radzą sobie dobrze w teraźniejszości. Wyniki historyczne nie wskazują na przyszłe wyniki. Upewnij się, że papier papierowy to system, który został z powodzeniem przetestowany przed uruchomieniem, aby mieć pewność, że strategia nadal będzie stosowana w praktyce. Wnioski Analiza historyczna jest jednym z najważniejszych aspektów rozwoju systemu transakcyjnego. Jeśli zostanie prawidłowo stworzony i zinterpretowany, może pomóc handlowcom w optymalizacji i ulepszeniu ich strategii, znaleźć wszelkie techniczne lub teoretyczne wady, a także zyskać zaufanie do ich strategii przed zastosowaniem jej na rynkach rzeczywistych. Zasoby Tradecision (tradecision) - High-end Trading System Development AmiBroker (amibroker) - Rozwój systemu handlu budżetowego. Ekonomiczna teoria łącznych wydatków w gospodarce i jej wpływ na produkcję i inflację. Rozwinęła się ekonomia keynesowska. Posiadanie aktywów w portfelu. Inwestycja portfelowa jest dokonywana z oczekiwaniem uzyskania zysku z tego tytułu. To. Współczynnik opracowany przez Jacka Treynora, który mierzy zyski przekraczające te, które można było zarobić bez ryzyka. Wykup pozostałej akcji (odkupu) przez spółkę w celu zmniejszenia liczby akcji na rynku. Firmy. Zwrot podatku to zwrot podatku od osób fizycznych lub gospodarstw domowych, gdy faktyczne zobowiązanie podatkowe jest niższe niż kwota. Wartość pieniężna wszystkich gotowych towarów i usług wyprodukowanych w granicach danego kraju jest określona w danym okresie. Testowanie strategii Potrzebujesz więcej informacji Strategie transakcyjne testowania wstecznego za pomocą Wealth-Lab Pro. Strategia handlowania i testowanie strategii oraz sygnały handlowe generowane przez strategie są dostarczane do celów edukacyjnych i tylko jako przykłady, i nie powinny być używane lub polegać na podejmowaniu decyzji dotyczących twojej indywidualnej sytuacji. Możesz modyfikować parametry testowania strategii według własnego uznania. Fidelity nie przyjmuje, zalecając lub promując jakąkolwiek strategię handlową lub inwestycyjną lub określone zabezpieczenie. Funkcja testowania strategii dostarcza hipotetycznego obliczenia, w jaki sposób zabezpieczenie lub portfel papierów wartościowych, zgodnie z przykładową strategią transakcyjną, wykonałby w historycznym okresie czasu. Tylko papiery wartościowe, które istniały w historycznym okresie czasu i które mają historyczne dane cenowe, są dostępne do użycia w funkcji testowania strategii. Ta funkcja ma tylko ograniczoną zdolność do obliczania hipotetycznych prowizji od transakcji i nie uwzględnia żadnych innych opłat ani konsekwencji podatkowych, które mogą wynikać ze strategii handlowej. Nie powinieneś zakładać, że Strategia Testowania strategii handlowej dostarczy Ci informacji o tym, jak twój portfel papierów wartościowych lub nowy portfel papierów wartościowych może z czasem funkcjonować. Powinieneś wybrać własne strategie inwestycyjne w oparciu o twoje konkretne cele i tolerancje ryzyka. Pamiętaj, aby okresowo sprawdzać swoje decyzje, aby upewnić się, że są one zgodne z Twoimi celami. Dotychczasowe wyniki nie gwarantują przyszłych wyników. kopia 1998 ndash 2017 FMR LLC. Wszelkie prawa zastrzeżone. Strategia historycznych testów strategicznych Backtracking jest niezbędnym narzędziem do sprawdzenia, czy twoja strategia działa, czy nie. Oprogramowanie do testowania historycznego symuluje twoją strategię na podstawie danych historycznych i dostarcza raport z analizy historycznej, który umożliwia przeprowadzenie właściwej analizy systemu transakcyjnego. Wersja 64-bitowa umożliwia załadowanie tak dużej ilości danych, jaka jest potrzebna, nawet w przypadku najdokładniejszych testów historycznych. Aby uzyskać informacje techniczne na temat tej funkcji, spójrz na odpowiednią stronę Wiki. Dokładność jest kluczem MultiCharts to rozwiązanie stworzone specjalnie w celu opracowania strategii i weryfikacji historycznej. Naszą filozofią jest, że weryfikacja historyczna strategii powinna być tak realistyczna, jak pozwala na to nowoczesna technologia. Technologia Multicharts 64-bit umożliwia przetwarzanie ogromnej ilości danych Tick-by-Tick w celu dokładnego testowania wstecznego. Realistyczna weryfikacja historyczna Nawet jeśli nie można uzyskać przybliżenia do 100, zrobiliśmy wszystko, aby dokładnie odtworzyć wcześniejsze warunki rynkowe i realizację zamówień w celu objęcia strategią. Typowe mechanizmy analizy historycznej mają wiele założeń i skrótów, co skutkuje nierealistycznymi testami i niewiarygodnymi wynikami. MultiCharts to platforma transakcyjna na poziomie instytucjonalnym, która minimalizuje założenia i uwzględnia wiele czynników. Zaawansowana technologia backtestingu strategii często wymaga dużej ilości danych i oprogramowania, które jest w stanie go przetworzyć. Wielowątkowość jest używana podczas przetwarzania strategii optymalizacji w MultiCharts. Rozprzestrzenia wiele zadań na różne rdzenie, dzięki czemu kończą się znacznie szybciej. 64-bitowa wersja MultiCharts pozwala ładować nawet lata i lata danych kleszczowych dla szczegółowych ruchów cen. Łatwe do odczytania Możesz zmienić sposób wyświetlania sygnałów na wykresie za pomocą zaledwie kilku kliknięć. Zlecenia wyjścia mogą być połączone widoczną linią do wszystkich powiązanych zleceń wejścia, linia będzie zielona, ​​jeśli transakcja będzie zyskowna, czerwona, jeśli nie. Jeśli nie polubisz tych kolorów lub innych aspektów wizualnych, możesz je łatwo zmienić. Wybierz walutę dla weryfikacji historycznej Waluta bazowa umożliwia obliczanie zysków i strat podczas strategii weryfikacji historycznej za pomocą określonej waluty dla par walutowych lub symboli spoza USA. Jeśli wykonujesz analizę historyczną strategii na symbolu opartym na innej walucie niż konto brokera, możesz zastosować przeliczanie walut. Aby wyniki były jak najbliżej perfekcji, używamy rzeczywistych kursów walut dla każdego dnia. Wszystkie przeliczenia walut odbywają się za kulisami, aby twój handel był tak prosty jak to tylko możliwe. Używamy naszych serwerów do żądania danych w tle i wykonywania niezbędnych obliczeń. Wszystkie istotne czynniki zawarte w naszym oprogramowaniu do analizy historycznej uwzględniają następujące istotne czynniki: płynność, zmiany cen kleszczowych, ceny ofertowe - różnice w cenach handlowych, prowizje, poślizg, kapitał początkowy, oprocentowanie i wielkość transakcji. Biorąc pod uwagę płynność Gdy silnik MultiCharts wykonuje backtesty strategii, uznaje, że nie wszystkie zlecenia z limitem zostaną wypełnione z powodu braku płynności. Z tego powodu masz wybór, aby wypełniać zamówienia, gdy cel ceny zostanie trafiony lub gdy zostanie przekroczony o określoną liczbę punktów (pipsów). Więcej informacji znajduje się na naszej stronie Wiki. Ceny ofert, ofert i handlu Analiza historyczna bierze pod uwagę, że rzeczywiste zakupy odbywają się po cenach ofertowych, rzeczywistej sprzedaży po cenach ofertowych. To sprawia, że ​​nasza symulacja backtestingu jest tak realistyczna, jak to tylko możliwe. Pretensjonalna strategia weryfikacji historycznej może dać użytkownikowi bardziej realistyczną emulację. Aby zarchiwizować strategie wysokiej częstotliwości, takie jak arbitraż statystyczny, użytkownik może potrzebować uwzględnić historyczne dane o pasach obok historycznych danych handlowych. Symulowanie przy pomocy tick-by-tick Bar Magnifier jest niezbędne do zwiększenia precyzji podczas testowania wstecznego. MultiCharts może budować większe pręty z mniejszych elementów sekundowych i minutowych słupków z kleszczy, godzinnych i dziennych słupków z minut. Możesz odtwarzać dokładne ruchy cen w obrębie każdego paska, korzystając z Lupa Bar. Na przykład program Bar Magnifier może niewidocznie ładować minuty, które składają się na godzinę, a strategia zostanie przetestowana z analizą minutową. Dowiedz się więcej szczegółów technicznych tutaj. Strategie dla natychmiastowej praktyki MultiCharts backtesting engine nawet emuluje rynek, stop, limit, stop limit i jedno-anuluje-inne (OCO) zamówienia. Cele zysku, stop-loss i trailing stops są również standardowymi funkcjami backtestingu. Co więcej, MultiCharts zawiera ponad 80 strategii EasyLanguage, dzięki czemu możesz ćwiczyć weryfikację historyczną. Backtesting Co to jest Backtesting Backtesting to proces testowania strategii handlowej na odpowiednich danych historycznych, aby zapewnić jej opłacalność, zanim inwestor zaryzykuje kapitał. Przedsiębiorca może symulować obrót strategią przez odpowiedni okres czasu i analizować wyniki pod względem poziomu rentowności i ryzyka. USUWAJ W DÓŁ Analiza historyczna Jeśli wyniki spełniają niezbędne kryteria, które są akceptowalne przez przedsiębiorcę, strategia może zostać wdrożona z pewnym stopniem pewności, że przyniesie zyski. Jeśli wyniki są mniej korzystne, strategia może być modyfikowana, dostosowywana i optymalizowana, aby osiągnąć pożądane wyniki, lub może zostać całkowicie złomowana. Znaczna część wolumenu obrotu na dzisiejszym rynku finansowym jest wykonywana przez podmioty gospodarcze, które korzystają z pewnego rodzaju automatyzacji komputerowej. Jest to szczególnie ważne w przypadku strategii transakcyjnych opartych na analizie technicznej. Analiza historyczna jest integralną częścią opracowywania zautomatyzowanego systemu transakcyjnego. Sensowne testowanie wsteczne Po przeprowadzeniu poprawnej analizy historycznej może być nieocenionym narzędziem do podejmowania decyzji, czy wykorzystać strategię handlową. Okres próbny, w którym wykonywana jest analiza historyczna, ma kluczowe znaczenie. Czas trwania okresu próbnego powinien być wystarczająco długi, aby uwzględnić okresy zmiennych warunków rynkowych, w tym tendencje wzrostowe, spadkowe i obrót z limitem. Przeprowadzenie testu tylko na jednym typie warunków rynkowych może przynieść wyjątkowe wyniki, które mogą nie działać dobrze w innych warunkach rynkowych, co może prowadzić do fałszywych wniosków. Ważna jest również wielkość próby w liczbie transakcji w wynikach testu. Jeśli przykładowa liczba transakcji jest zbyt mała, test może nie być statystycznie istotny. Próbka o zbyt dużej ilości transakcji w zbyt długim okresie może przynieść zoptymalizowane wyniki, w których przytłaczająca liczba zwycięskich transakcji łączy się w specyficznej sytuacji rynkowej lub tendencji korzystnej dla strategii. Może to również spowodować, że przedsiębiorca wyciągnie mylące wnioski. Utrzymanie tego w ujęciu realnym Test historyczny powinien odzwierciedlać rzeczywistość w najlepszym możliwym stopniu. Koszty transakcji, które w innym przypadku mogą zostać uznane za nieistotne przez inwestorów podczas indywidualnej analizy, mogą mieć znaczący wpływ, gdy łączny koszt jest obliczany w całym okresie analizy historycznej. Koszty te obejmują prowizje, spready i poślizg, a także mogą decydować o różnicy między tym, czy strategia handlowa jest opłacalna, czy nie. Większość pakietów oprogramowania do testowania wstecznego zawiera metody rozliczania tych kosztów. Być może najważniejszą miarą związaną z weryfikacją historyczną jest poziom solidności strategii. Osiąga się to przez porównanie wyników zoptymalizowanego testu wstecznego w określonym okresie próbnym (określanym jako próbka) z wynikami testu historycznego z tą samą strategią i ustawieniami w innym okresie próbkowania (określanym jako out-out). próbki). Jeśli wyniki są podobnie dochodowe, strategia może zostać uznana za ważną i solidną i jest gotowa do wdrożenia na rynkach w czasie rzeczywistym. Jeśli strategia nie powiedzie się w przypadku porównań poza próbą, strategia wymaga dalszego rozwoju lub powinna zostać całkowicie porzucona.

Comments