Sunday, 5 November 2017

Tradestacja opcje testy zwrotne


Rozwiązanie wdrożeniowe strategii zarządzania instytucjami w skali instytucjonalnej: - dostępne są waluty, opcje, kontrakty terminowe, waluty, kosze i niestandardowe instrumenty syntetyczne - obsługiwane są wiele kanałów danych o małym opóźnieniu (szybkość przetwarzania w milionach wiadomości na sekundę na terabajtach danych) - C - QuantDEVELOPER - ramy i IDE dla rozwoju strategii handlowych, debugowania, testowania wstecznego i optymalizacji, dostępne jako wizualna wizualna kontrola wstępna i optymalizacja - realizacja wielu kont brokerów, przekazywanie sygnałów handlowych przekształcanych w polecenia FIX QuantFACTORY - Studio plug-in - QuantDATACENTER - pozwala zarządzać historycznym hurtownią danych i przechwytuje dane rynkowe w czasie rzeczywistym lub bardzo niskie opóźnienia z dostawców i wymiany - QuantENGINE - pozwala na wdrożenie i wykonanie wstępnie skompilowanych strategii - wieloaspektowe, wieloletnie dane o małym opóźnieniu , obsługiwało wiele brokerów Obsługiwane systemy zarządzania danymi instytucjonalnymi ent testowanie strategii wdrażania strategii: - OpenQuant - C i VisualBasic system zarządzania poziomem portfela i handlu, multi-asset, testowanie na poziomie dziennym, optymalizacja, WFA itd. Wiele obsługiwanych brokerów i kanałów danych - QuantTrader - środowisko handlu produkcją - QuantBase - scentralizowane zarządzanie danymi - QuantRouter - zarządzanie danymi i zarządzaniem danymi Zarządzanie danymi dotyczącymi zarządzania danymi z zakresu zarządzania instytucjami klasy podstawowej: - rozwiązanie wielozadaniowe, obsługiwane przez wiele kanałów danych, baza danych obsługuje dowolny typ RDBMS z interfejsem JDBC, np. Oracle, Microsoft SQL Server, Sybase, MySQL itp. - klienci mogą używać IDE do skryptu w strategii Java, Ruby lub Python lub mogą korzystać z własnej strategii IDE - obsługi wielu pośredników, sygnałów handlowych zamienionych na polecenia FIX Institutional - zarządzanie wieloma zasobami danych: rozwiązanie wielozadaniowe (forex, opcje, kontrakty terminowe, akcje, ETF, towary, instrumenty syntetyczne i niestandardowe rozliczenia pochodne itp.), wspieranie wielu kanałów danych - ramy dla rozwoju strategii handlowych, debugowanie, i optymalizacja - obsługa wielu agentów, sygnały handlowe przeliczone na zlecenia FIX (IB, JPMorgan, FXCM itd.) Dedykowana platforma oprogramowania zintegrowana z danymi Tradestations dla testów wstecznych i automatycznego handlu: - codzienne dane intraday (nasze zapasy na 43 lata, kontrakty na 61 lat) - praktyczna kontrola wyników w oparciu o ceny (analiza techniczna), wsparcie dla języka programowania EasyLanguage - wspieranie amerykańskich zasobów ETF , futures, indeksy amerykańskie, niemieckie indeksy, bezcenne dla klientów brokerów Tradestation - 249,95 miesięcznie dla osób niepracujących (tylko platforma oprogramowania Tradestation, bez pośrednictwa) - 299,95 miesięcznie dla profesjonalistów (tylko platforma oprogramowania Tradestation, bez pośrednictwa) Dedykowany platformy oprogramowania do testów wstecznych i automatycznego handlu: - wspieranie strategii dziennych, testowanie i optymalizacja poziomu portfela, tworzenie wykresów, wizualizacja, raportowanie niestandardowe, analiza wielowątkowa, wykresy 3D, analiza WFA itd. - najlepsze w przypadku testów bazujących na cenach (analiza techniczna) - bezpośredni link do eSignal, interaktywnych brokerów, IQFeed, myTrack, FastTrack, QP2, TC2000, wszelkie pasujące do DDE paski, MS, txtfiles i inne (Yahoo Finance. ) - jednorazowa opłata 279 w przypadku wydań standardowych lub 339 dla profesjonalnych wydań Dedykowana platforma oprogramowania do testów wstecznych i automatycznego handlu: - kontrola poziomu portfela i zarządzanie nimi, testowanie na wielu poziomach, optymalizacja, wizualizacja itd. - umożliwia integrację R, automatyczny handel w języku skryptowym Perla z wszystkimi funkcjami bazowymi napisanymi w języku C, przygotowanymi do współlokatora serwera - natywna obsługa FXCM i Interactive Brokers - bezpłatna obsługa FXCM, 100 na miesiąc dla platformy IB, kontakt z serwisem Salesseertrading dla innych opcji Dedykowana platforma oprogramowania backtesting i auto-trading: - wspieranie strategii dailyintraday, testowanie i optymalizacja poziomu portfela - najlepsze w przypadku testów bazujących na cenach (analiza techniczna), skrypty C - rozszerzenia oprogramowania obsługiwane przez obsługę danych, realizacja strategii itp. - 799 na licencję, 150 rocznie Opłata za zautomatyzowaną platformę oprogramowania do testów wstecznych, optymalizacji, przypisywania wyników i analizy: - Axioma lub trzecia część y analiza danych, modelowanie ryzyka, analiza cyklu rynkowego Dedykowana platforma oprogramowania do testów wstecznych i automatycznego handlu: - najlepsze w przypadku testów bazujących na cenach (analiza techniczna), wspieranie strategii codziennych, testowanie i optymalizacja poziomu portfela - edycja turtle - grafiki, raporty, testy EoD - edycja profesjonalna - plus edytor systemu, analiza kroków, strategie intraday, testy wielowątkowe itd. - Pro Plus Edition - plus wykresy powierzchni 3D, skrypty itp. - Builder Edition - IB API, debugger itp. - Turtle Edition 990 - Professional Edition 1,990 - Pro Plus Edition 2,990 - Builder Edition 3,990 Dedykowana platforma oprogramowania do testów wstecznych i automatycznego handlu: - wspomaganie strategii dziennych, testowanie i optymalizacja poziomu portfela, tworzenie wykresów, wizualizacja, raportowanie niestandardowe itp. - najlepsze w przypadku testów wstecznych sygnały oparte na cenach (analiza techniczna) - bezpośredni link do interaktywnych brokerów, MB Trading, TD Ameritrade, FXCM i innych - dane m plików tekstowych, eSignal, Google Finance, finansów Yahoo, IQFeed i innych - podstawowa funkcjonalność (funkcjonalność EoD) - bezpłatna - zaawansowane funkcje - dzierżawa licencji na okres 50 miesięcy lub 995 dni. Dedykowana platforma oprogramowania do testów wstecznych i automatycznego handlu: - najlepszy do testów wstecznych (analiza techniczna), wspieranie strategii dziennych, testowanie i optymalizacja poziomu portfela, wykresy, wizualizacja, raportowanie niestandardowe - obsługa C i Visual Basic - bezpośredni link do interaktywnych brokerów, IQFeed, txtfiles i innych (Yahoo Finance. ) - wieczysta licencja - 499 - dzierżawa 50 miesięcznie Dedykowana platforma oprogramowania do testów wstecznych i automatycznego handlu: - wspieranie strategii dziennych, testowania i optymalizacji poziomu portfela, wykresów, wizualizacji, raportowania niestandardowego - sygnałów technicznych i podstawowych, 245 dla wersji zaawansowanej (bezpłatni dostawcy danych) - 595 dla wersji Premium (obsługuje wielu dostawców danych i brokerów) Dedykowana platforma oprogramowania do testów wstecznych i automatycznych transakcji handlowych: - wspieranie strategii na bieżąco, testowanie poziomów portfela i optymalizacja - najlepsze w przypadku sprawdzania danych na podstawie cen analiza techniczna) - dane wejściowe na akcje, kontrakty terminowe i forex (dzienne amerykańskie zapasy z 1990 r., codzienne kontrakty terminowe 31 lat, z 1983 r.) - cena od 45 miesięcy do 295 miesięcy (ceny zależą od dostępności danych) do testów wstecznych i automatycznego handlu: - korzysta z języka MQL4, wykorzystywanego głównie do handlu na rynku forex - obsługuje wiele maklerów forex i kanałów danych - wsparcie zarządzanie wieloma kontami Dedykowana platforma oprogramowania do testów wstecznych i automatycznych transakcji handlowych: - wspieranie strategii dziennych, testów poziomu portfela i optymalizacji - najlepsze w przypadku testów bazujących na cenach (analiza techniczna), obsługa języka programowania EasyLanguage - obsługa wielu źródeł danych (Bloomberg, Thomson Reuters, CSI, CQG, eSignal itp.), Bezpośrednie wsparcie dla wielu brokerów (interaktywne brokerów itd.) - multichart 797 rocznie - wiek multicharts 1,497 - multichartery Pro 9,900 (dane Bloomberg Thomson Reuters itp.) strategiczne strategie zbierania zapasów: - amerykańskie indeksy ETF (codziennie) - podstawowe dane z roku 1999 - strategie longshort, sygnały napędzane ceną - projektant - 139 miesięcy - menedżer - 199 miesięcy - pełna funkcjonalność Analiza portfela przy użyciu danych rynkowych o wysokiej częstotliwości: - Ten produkt jest przeznaczony dla małych i średnich przedsiębiorstw handlowych. Wszystkie obliczenia są generowane z wykorzystaniem danych rynkowych o wysokiej częstotliwości, które przynoszą korzyści przedsiębiorcom handlowym o niskich i wysokich częstotliwościach. - kontrolę backdestu w ciągu dnia, zarządzanie ryzykiem portfelowym, prognozowanie i optymalizację za każdym razem w cenie, minuty, godziny, na koniec dnia. Wejścia modeli w pełni kontrolowane. - 8k rynkowe dane pochodzą od 2017 roku (indeksy ETF indeksowane na NASDAQ). Klienci mogą także przesyłać własne dane rynkowe (np. Chińskie zapasy). - 40 wskaźników portfela (VaR, ETL, alfa, beta, wskaźnik Sharpe'a, wskaźnik Omega itp.) - obsługuje optymalizacje portali R, Matlab, Java Python - 10 Narzędzia do analizy wyników internetowych: - ceny akcji w USA (dailyintraday), od 1998 roku, dane z QuantQuote - dane forex z FXCM - wspieranie Trader Interactive Brokers dla transakcji na żywo Narzędzie do analizy wyników internetowych: - kursy amerykańskie i ETF (dailyintraday), od 2002 roku - podstawowe dane z Morningstar (ponad 600 metrics) - wsparcie Interactive Brokers dla transakcji na żywo Narzędzia do tworzenia kopii zapasowych opartych na sieci WWW: - proste w użyciu, strategie alokacji aktywów, dane od 1992 r. - moment obrotowy i średnioroczne strategie dotyczące ETF - proste strategie zbierania zapasów Momentum i Simple Value Narzędzia analizy danych w sieci Web: - do 25 lat danych na 49 Kontrakty futures i SP500 - skrzynka narzędziowa w Pythonie i Matlab - Quantiacs obsługuje algorytmiczne konkursy handlowe z inwestycjami od 500 tys. Do 1 miliona Backtest Broker oferuje potężne, proste testy sieciowe, ftware: - testowanie w dwóch kliknięciach - przeglądanie biblioteki strategii lub budowanie i optymalizacja strategii - handel papierem, automatyka i e-maile w czasie rzeczywistym - 1 na backtest i mniej narzędzia do testów backtesting opartych na technologii WebCloud: - dane FX (ForexCurrency) dotyczące głównych parami, przechodząc do 2007 r. - paski SecondMinuteHourlyDaily - transakcja na żywo zgodna z dowolnym brokerem, który używa Metatrader 4 jako swojego backtestingowego narzędzia do testowania zasobów sieciowych w celu przetestowania strategii zbierania czynników kapitałowych i alokacji aktywów: - wiele czynników kapitału własnego o sprawdzonych alfach w porównaniu z benchmarkami rynku , wiele światów inwestycyjnych, filtry zarządzania ryzykiem - strategie alokacji aktywów, testy wsteczne, łączenie alokacji aktywów i pobieranie czynników w jednym portfelu - bezpłatne na świecie SP 100 - 50 miesięcy lub 480 lat - szersze amerykańskie uniwersytety inwestycyjne, zapasy UE w Zjednoczonym Królestwie, strategie alokacji aktywów : - ponad 10 000 zasobów Stanów Zjednoczonych, dane do 20 lat - podstawowe kryteria techniczne - wolna - ograniczona funkcjonalność (1 rok danych, bez zapisanych testów wstecznych itd.) - 50 miesięcznie - pełna funkcjonalność Środowisko oprogramowania dla komputerów i grafiki statystycznej, wiele quantów wolą używać go ze względu na wyjątkową otwartą architekturę i elastyczność: - efektywne zarządzanie i przechowywanie danych, graficzne ułatwia analizę danych, łatwo rozszerza się za pośrednictwem pakietów - zalecane rozszerzenia - quantstrat, Rmetrics, quantmod, quantlib, PerformanceAnalytics, TTR, portfolio, portfolioSim, backtest itp. MATLAB - język wysokiego poziomu i środowisko interaktywne dla komputerów i grafiki statystycznej: - równolegle i obliczanie danych zwrotnych i optymalizacja, rozbudowane możliwości integracji itp. - cena na żądanie tutaj BacktestingXL Pro to dodatkowy element do tworzenia i testowania strategii handlowych w programie Microsoft Excel 2017 i 2017: - użytkownicy mogą używać VBA do tworzenia strategii dla BacktestingXL Pro, wiedza VBA jest opcjonalna, użytkownicy mogą tworzyć reguły handlowe w arkuszu kalkulacyjnym za pomocą standardowych wstępnych kodów testowych - obsługuje piramidy, ograniczanie pozycji krótkich, obliczanie prowizji, śledzenie kapitału, kontrola poza kontrolą pieniędzy, dostosowywanie ceny buysell - wiele sprawozdań performansystycznych - 74.95 dla BacktestingXL Pro Wolny język programowania open source, otwarta architektura, elastyczna i łatwa w rozszerzeniu przez pakiety: - FactorWave jest prostym w obsłudze internetowym narzędziem do testów wstecznych przeznaczonych do inwestowania w czynniki: - umożliwia użytkownikowi wymieszanie wielu współczynników ETFoptionsfuturesequity z udowodnioną alfą na alfanumerycznych współczynnikach alfanumerycznych (alfanumerycznych) bezobsługowe - ETFStock Screener z 5 czynnikami - 149 opcji wolnych opcji screener, strategie kontraktów terminowych, strategie vix Narzędzia do sprawdzania danych internetowych: - prosty w obsłudze, dostęp do internetowego narzędzia do testów wstecznych w celu sprawdzenia względnej wytrzymałości i średniej ruchomej strategie dotyczące ETF - kilka rodzajów strategii bezpłatnej, pełnej funkcjonalności testów zwrotnych 34,99 miesięcznie bezpłatna b testowane testy wstępne do testowania strategii zbierania zapasów: - zapasy Stanów Zjednoczonych, dane z ValueLine z lat 1986-2017 - ceny i podstawowe dane, 1700 zapasów, test granulacji miesięcznej na forum, które czytałem, ktoś zaproponował strategię podobną do tej, którą zbadałem w przeszłość. Ich zasady były proste: sprzedaj 20pt Bull Put Spread w czwartek w godzinach otwarcia, kończąc się w przyszłym tygodniu Krótki strajk musi wynosić co najmniej 100 punktów od aktualnej ceny spotowej Sprzedać pionowo, kiedy osiągnie 0.05 Uwzględnij 50 swoich portfeli ten handel. Ta strategia jest oparta na przekonaniu, że SPX nie porusza się więcej niż 100 punktów w 8-dniowym oknie i że cotygodniowy obrót jest kosztowny. Patrząc na ostatnie 15 lat, uważam, że to prawda 99.31 czasu. Istnieje 26 przypadków z 3752 próbek, w których rynek zbliżył się do ponad 100 punktów. Kilka z nich dotyczyło kryzysu w 2008 r., 2001 r., Ale ostatni okres przypada na październik 2017 r. Na szczęście w tej strategii nie wystąpił on w czwartek, dzięki czemu uzyskał szczęście. Oto zasady dotyczące tej strategii: Wybieram 10:00 w czwartek, aby zawrzeć handel. Zwróć uwagę również na poślizg i prowizje. Przeanalizowałem tę strategię od stycznia 2008 r. Do grudnia 2017 r. Wyniki są obiecujące. Ogólnie rzecz biorąc, handel ten przebiega bardzo dobrze po 2017 r. Przed 2017 r. Jest stosunkowo płaski. W dużej mierze dlatego, że podczas wygaśnięć tygodniowych nie było wystarczająco dużo strajków w tych wygaśnięciach, aby znaleźć transakcje zgodne. Tyle czasu po prostu siedział z rynku i wymieniał miesięczne wygaśnięcia. W tym okresie nastąpiła awaria w 2008 r., Podczas gdy strategia miała duże wycofanie podczas tego wydarzenia, w dużym obrazie zrobił to całkiem dobrze. Trudno jednak wyciągnąć wnioski z tego, że w tym okresie zasiadało na rynku 75. Począwszy od 2017 r. Handel naprawdę podnosi parę. W tym punkcie rozpoczyna handel co tydzień. Jest to również w trakcie byka, więc handel jako wiatr z tyłu. Ale można zauważyć, że drawdowns (niższy wykres) są stosunkowo niewielkie. Ale dlaczego 100 punktów myślę, że został wybrany z tego powodu, że rynek prawie nigdy nie porusza się tak bardzo w tym okresie (99.31 pamiętam). Ale dzisiaj 100 punktów (5 rund) jest bardzo inna niż 100 punktów w 2009 r. (Ruch 8-13). Więc muszę również przyjrzeć się ruchom procentowym. Przetestowałem 4.5, 5, 6 i 7. 20pt Spread pionowy 4,5 z makra Marginesowego Portfela Spotowego wymaga 16 marży niż RegT i 1.6 marginesu na rachunku depozytów zabezpieczających. Lecz margines PM jest dużo płynniejszy od innych. W miarę spadku rynku, wymóg dotyczący marży jest zwiększony. Szczegóły marginesu PM są znacznie bardziej skomplikowane 8211, ale dla uproszczenia i ze względu na fakt, że nie mogę obliczyć marginesu PM, zakładam, że jest to stały procent marży RegT. Short Puts I8217m zamierza skupić się na krótkich strajkach, ponieważ krótkie połączenia są mniejsze proporcjonalnie do ogólnego zysku. Rozmowy są bardzo tanie w porównaniu do strajków, a Karen podobno sprzedaje połowę liczby rozmów na stacje. I8217m pewnie, że dodaje to do jej dolnej linii, ale dla uproszczenia pozostawię je na razie. Poniżej przedstawiono profil ryzyka dla skrótu SPX 1875 na początku kwietnia. Ten handel zyskuje na 600, jeśli SPX zamyka się powyżej 1875 w ciągu 52 dni. Ale patrzenie na PL w plasterkach cen można zobaczyć, jak szybko ten handel traci wartość, gdy rynek spada. Jeśli rynek spadnie -12, handel będzie pod wodą o 7,4 tys. Faktycznie, jest gorszy niż to, ponieważ nie uwzględnia żadnych zmian w vega ze względu na spadek. Przy marginesie PM wartość na spadku -12 musi być większa niż płynność netto konta8217s. Więc jeśli masz portfel 1M, możesz sprzedać 135 umów. Gdy jednak spadnie na rynek lub zwiększa się jego zmienność, Twoje obliczenia wzrosną o 12, a zostanie on umieszczony w stanie blisko. Zasady testowania I8217m nie będą próbować idealnie powtarzać transakcji Karen8217s, ponieważ nie jest to możliwe 8211, a zamiast tego koncentrują się na żywotności sprzedaży krótkich stoków. W szczególności: Sprzedaj Zużywa 50 marż Sprzedaj w sprzedaży 2SD Sprzedaje od 40-56 dni do wygaśnięcia Otwórz 1 handel na tydzień. Idealnie w dużym dniu. Każdy handel korzysta z 25 przydziałów handlowych (lub 12,5 marży) Tylko cztery otwarte transakcje w czasie Zamknij buduje się wcześnie, gdy osiągną 80 zysku Zwroty są złożone. O przybliżeniu marginesu PM jako 30 z Reg-T (2X, co znalazłem powyżej). W idealnej sytuacji transakcje powinny być zamknięte z zyskiem w ciągu około 4 tygodni. Krótkie wprowadzenie 8211 Brak poprawek Najpierw chcę zobaczyć, jak złe mogą być krótkie stany. Jeśli spałeś za kierownicę i nie zrobił nic, aby chronić Twoją pozycję, Twoje konto zostanie wyraźnie zlikwidowane i szybko. Zauważ, że jest to na 50 marginesie, ale widziałem nawet przy użyciu 25 marży przy ustalaniu transakcji, prawdopodobnie doprowadzi do marży połączenia. Short Puts 8211 Sprzedaż na 30 PITM 70 prawdopodobieństwo bycia OTM jest ważne dla strategii Karen8217s (lub 30 ITM). To ma sens. W tym momencie Gamma zaczyna przyspieszać. Ten test po prostu zamknie handel na pytanie, kiedy kiedykolwiek delta kreacji wynosiła ok. 0,30 (przybliżona do 30 ITM). To oczywiste, że ten sam dramatycznie pomaga chronić pozycję. Jest kilka dużych spadków (-30-50), ale ogólnie rzecz ujmując, strategia jest dość dochodowa ze względu na ten długi okres w latach 2017-2017. Short Puts 8211 Roll Odkłada się na 30 PITM Ale Karen nie po prostu zamyka swoje stany, zwija je w dół, czasami zwiększa te pozycje (jak rozumiem) i sprzedaje więcej połączeń, aby zaradzić stratom. Ten test pokazuje wyniki rzucania stoków i umieszczania kolejnego handlu w 2SD przy tym samym wygaśnięciu. Warto zauważyć, że to jest gorsze. Podobnie jak pobieranie groszy przed wałkiem parowym. Pierwszy wypadek w 2008 roku traci 75 z wartości konta. Następne krople są podobne w przybliżeniu do tych bez rolek. Wnioski Dane z 20082009 należy przyjmować przy użyciu ziarna soli, ponieważ nie było żadnych tygodniowych transakcji. Jeśli wypadek z 2008 r. Miał miejsce dzisiaj, myślę, że wyniki byłyby nieco lepsze ze względu na to, że można rozprzestrzeniać ryzyko zmienności na większą liczbę wygaśnięć. Byłem też zaskoczony tym, że toczenie było gorsze. To prawda, że ​​nie jest to strategia Karen8217s. Ona również sprzedaje połączenia, ale ja don8217t wiedzieć, jak te połączenia mogłyby uzupełnić te luki. Podobno Karen osiągnęła zysk w 2008 roku, ale nie jestem pewien, czy ujawniła, jak. I8217m nie pewien, że zastosowała się do tych samych zasad, czy nie. Prawdopodobnie podążała za tym trendem, a handel mniej - zachęca do zagłady. I prawdopodobnie w mniejszej skali. Ciąg dalszy nastąpi. Zwrócono mi uwagę, że faceci w firmie TastyTrade nie prowadzą swojej strategii SunnySide Up na zapasach o średniej wielkości mniejszej niż 2 mln. I don8217t przypomnieć to w filmie, ale najwyraźniej jest to powszechna wiedza dla tych, którzy idą po pokazie. Jest to poprawiona tabela przy uwzględnieniu objętości. Pierwszą rzeczą do zwrócenia jest fakt, że handel ISRG nie jest wliczony w cenę i konto wykazuje zysk. Jest nieco mniej transakcji, ale generalnie widzę 93 zwycięstwo (25 zwycięstw w 27 zawodach). Ta wielka strata to NFLX. Podczas gdy to zdenerwowało wydajność do tego momentu, odzyskanie było dość szybkie. Drugą rzeczą do zwrócenia jest to, że te wyniki są całkiem blisko tego, co TT prezentował w swoim segmencie wideo. Jeśli chodzi o granie, oto 3-letnia wydajność, przy której ustawiona wartość progowa wynosi 50, a objętość na poziomie 2M: ten ogromny spadek nie jest już NFLX (jego spadek tuż przed), ale GMCR. Zamiast 27 transakcji, było 73, a współczynnik wygranej 86, ale wyższy średni zwrot. I don8217t zazwyczaj śledzi TastyTrade. Nie dlatego, że nie są dobrą treścią, ale tylko ja don8217t ma czas. Ale kilka razy ta strategia SunnySide Up przeszła przez biurko. Początkowo oglądałem film opisujący handel. Byłem zainteresowany. Opisał handel zarobków, który miał dobre wyniki, ale w górę to nagie krótkie wezwanie. Papier był przedmiotem handlu i widział masywne porwania (GMCR). Myślałem, że jest to zbyt ryzykowne dla mnie. Potem przez kilka miesięcy mijało moje biuro, myślałem, że będę śledzić kilka papierowych transakcji i zobaczyłem dość dużą stratę (tym razem SPLK). Ale wyraźnie mój rozmiar próbki był niewielki i być może wybrałem je nieprawidłowo. Jedną rzeczą, która naprawdę mnie niepokoi, jest brak szczegółów. Dają parametry i niektóre statystyki, ale don8217t pokazują PL krzywych lub wypłat. Biorąc pod uwagę, że są nagie krótkie pozycje, uważam to za wątpliwe. Pozwól na to przetestować. Ten handel polega na kupnie spreadu abonenckich bankomatów ATM i sprzedaży nagiego połączenia, czyli 84 OTM, w przypadku najbliższego wygaśnięcia. Naga rozmowa musi przynieść wystarczający kredyt, aby zapłacić za rozprzestrzenianie się. Handel jest umieszczony tuż przed ogłoszeniem zarobków, a dzień następny kończy się handlem. Przykład z użyciem LULU w celu pokazania struktury. Jak opisują w filmie, zarobki można podzielić na jeden z trzech sposobów: w górę, w dół lub nigdzie. Ten handel pozwala na postawienie zakładu na dwa z nich, zrywając zmiażdżenie niestabilności, ale pozostawia cię silnie na trzeciej. Większość zarobków mówi się, że leży w obrębie oczekiwań producentów rynku. Nałożenie numeru 84 OTM umieszcza go na zewnątrz 1 SD o oczekiwanym ruchu. I don8217t szczególnie jak niezabezpieczone pozycje na zdarzeniach binarnych takich jak te, ale jest to miła instalacja. Tasty handel pokazuje następujące wyniki testowania 3-letnich transakcji. Wyglądają jak dobre wyniki, ale pamiętaj, że don8217t mówi o tych dwóch transakcjach utraty, ani nie złapałem, jak one przydzielają transakcji. Czy jest to jeden kontrakt na wymianę handlową lub maksymalnie X marży na wymianę handlową. Zakładam, że chcą ryzykować mniej więcej tę samą kwotę na handel. Ponieważ wspomniane są bardzo drogie zapasy, a marża na nich jest bardzo wysoka, I8217 przyjmują do początkowego marginesu maksimum 20 tys. Na handel. I8217 staraj się trzymać się tych samych parametrów co TT. Wspomnieli, że to działa tylko na drogich zapasach, ale nie zrobiłem nic złego, więc zacznę od minimalnego poziomu 100. Użyj delta do krótkiego wezwania jako pełnomocnika ITM. Nie doskonałe, ale im bliżej wygaśnięcia, im zbliżają się te liczby, zbiegają się. Jest to krzywa zysków i strat z ostatnich 3 lat kończących się 730 (w tej chwili mam dane do tej daty). To nie są wyniki uzyskane z wiśni. To tylko ostatnie 3 lata danych z ostatniego punktu danych, jaki mam. To dość wysokie spadki ze względu na zarobki ISRG8217. Podwoiłem wyniki testu TOS8217: na pewno TOS potwierdza moje wyniki. Ponadto, TOS pokazuje w tym dniu IV rangę około 85 dla ISRG. Myślę, że na wszystkich rachunkach, jest to handel, który dobrze mieści się w ich parametrach. Ale to zatarło 3 lata zysków z dnia na dzień. Jeśli zmienię podstawowy próg cenowy na 50, otrzymam następujące wyniki: dużo bardziej skalista jazda, ale co najmniej zyskiem. Z ciekawości, ja również przeglądnąłem ten handel w ciągu ostatnich 5 lat. Co ciekawe, te ustawienia handlowe były bardzo trudne do znalezienia przed 3 latami temu. Po krótkich rozmowach nie było wystarczająco dużo, by zobaczyć, co widzę. Wniosek Jestem swobodny przyznać, że jestem dość konserwatywny jeśli chodzi o handel. Lubię zdarzenia zarobkowe, ale ten handel sprawia, że ​​jestem nerwowy. Po pierwsze, zwrot nie jest taki wspaniały. Podoba mi się 2 powrót w nocy, ale trudno znaleźć. Po drugie, istnieje kilka bardzo dużych strat (ISRG, GOOG, GMCR, CMG, NFLX), które mogą przytłaczać wszelkie zyski, które możesz mieć. Gdy 3 lata zysków można unicestwić z 1 zły handel, dobrze, że to tylko 8272s handlu setup I don8217t naprawdę podoba. Oczywiście, że złe transakcje mogą się zdarzyć w innych konfiguracjach i mieć podobne konsekwencje, ale to jest na noc. Nie ma możliwości zarządzania tą transakcją w godzinach rynkowych. W tym tygodniu przyjrzymy się implikacjom, które implikowały zmienność na handlu surówki żelaza. Czy implikowana zmienność może być dobrym wskaźnikiem czasu i miejsca rozpoczęcia handlu Na początek warto spojrzeć na implikowaną zmienność opcji bankomatu dla RUT w pierwszych trzech miesiącach wygaśnięcia w ciągu ostatnich 9 lat: przedmowa jest zdecydowanie bardziej niestabilne, jak się spodziewamy, ale 2 i 3 miesiące wyglądają ściśle na siebie nawzajem. Widzimy, że minimum wynosi około 15, a maksimum jest w okolicy 70. Zwróć uwagę, że obliczam implikowaną zmienność łańcucha opcji jako średnią ważoną opcji ATM 8217s IVs. Te testy będą używać następujących progów IV: 0,10, 0,125, 0,15, 0,155, 0,20, 0,255, 0,25, 0,30, 0,40, 0,5, 0,6, 0,7 Zauważmy, że na wykresie wynika, że ​​nie powinniśmy spodziewać się transakcji z IV poniżej 0,10. Użycie tej wartości służy jako sprawdzenie poprawności wyników. IVs większy niż próg Pierwszy test wykorzystuje IV jako minimalny próg wejścia do obrotu. Dla przykładu transakcje o minimalnym IV 25 roku życia prawdopodobnie nie wejdą w handel, gdy ten artykuł zostanie napisany (IV ma około 16 lat). Górny rząd to klatki IV. Pierwszą rzeczą do odnotowania jest to, że zawody wymagające IV powyżej 30 są bardzo trudne do zdobycia. Transakcje trwające ponad 30 lat miały miejsce mniej niż 14 razy w ciągu ostatnich 10 lat. Dane pokazane powyżej dla tych transakcji wysokiego obrotu są interesujące, ale nie można ich liczyć ze względu na bardzo niską wielkość populacji. Warto jednak zauważyć, że transakcje o niskich obrotach delta mogą mieć przewagę nad wysokimi obrotami delta. Ogólnie chciałbym powiedzieć, że efekt marginalny przy użyciu IV jako jedynego kryterium wejścia do momentu, gdy IV zaczyna się na północ od 22.5. Pomiędzy IV a 22.5 i 30 ma znaczną wielkość próbki, a próg IV, zwłaszcza w niższych deltach, wydaje się korzystny dla handlu. Oczekiwane zwroty powyżej minimum IV Patrząc na wykres oczekiwanych zwrotów na podstawie minimalnego progu IV możemy zobaczyć kilka wzorców. Po pierwsze, w przypadku bardzo wysokich transakcji typu "IV" (które są bardzo rzadkie), transakcje Mniejsze miesiączki delta działają bardzo dobrze, podobnie jak wszystkie delty w trzecim miesiącu. Ale znowu opiera się to na bardzo małej wielkości próbki. Po drugie, wielu przedsiębiorców często zauważa, że ​​handel kondorów, gdy IV jest pod 8216X8217 nie są warte. Kiedy piszę to, VIX i RVX są w ekstremalnych niskach, a ten komentarz jest często dzielony sentyment. Ale według tych danych, to doesn8217t naprawdę wstać. Nisko IV handlu dobrze. Musimy jednak poczekać na kilka nowych testów, aby mieć pewność, że ich skutki wynikają z niskich transakcji na rynku Forex i nie są wspierane przez inne wysokiej klasy branże. IVs mniej niż próg Teraz spójrzmy na odwrotną sytuację Co zrobić, jeśli umieścimy górny próg w pozycji IV handlu. Poprawa współczynnika zysku przez maksymalne poziomy IV (IV w kolumnach) Teraz widzimy, że bardzo niskie transakcje w sektorze handlu nieruchomościami były trudniejsze do zdobycia poza miesiącem przednim. Ustawienie maksymalnego progu IV może niekorzystnie wpłynąć na wysokie transakcje z delty Front Month, ale w dużej mierze efekt jest marginalny. Miesiąca Miesiąca, niższe transakcje na rynku (tj. Poniżej 18 lat) wydają się lepsze niż linia bazowa, co świadczy o tym, że w środowiskach o małej lotności mogą występować duże transakcje w handlu elektronicznym. Większość transakcji w drugim miesiącu ma marginalny wpływ. Trzeci miesiąc wydaje się mieć nie-marginalną poprawę w handlu z IV mniej niż 20. IV Między progami Teraz możemy spojrzeć na połączenie dolnego i górnego progu i sprawdzić, czy pojawiły się jakieś wzorce. Poprawa współczynnika zysku pomiędzy zakresami Bounded IV Gdybyś miał robić zakupy tylko w określonym przedziale, niższe środowiska IV rzeczywiście przyniosłyby większe korzyści. Istnieją również dobre scenariusze w przedmiocie miesiąca z IV pomiędzy 25 a 50 rokiem. Jeśli chcesz handlować tylko w bardzo wysokich przedziałach IV, będziesz musiał długo czekać na zainicjowanie handlu, ale najlepiej jest też użyć transakcja Miesiąca Miesiąca. Z tego stołu widzimy największą poprawę: IV między 13 a 18: Dolny Delta w każdym miesiącu. IV pomiędzy 18 a 20 rokiem: bardzo niskie transakcje z poprzedniego miesiąca delta lub dolne transakcje delta w trzecim miesiącu. IV pomiędzy 20 a 30: nie ma wyraźnego zwycięzcy. Większość transakcji wygląda nieznacznie. IV pomiędzy 30 a 50: Niski Delta Przeddzień Miesiąca IV ponad 50: Trzeci miesiąc Trading So8230 możemy to wykorzystać w celu lepszego pozycjonowania. Oczekiwany powrót z ograniczonymi zakresami IV. Powyżej jest wykresem cieplnym oczekiwanych zwrotów wszystkich transakcji z ograniczonymi wahaniami implikowanymi. Te zawody z bardzo niską liczbą transakcji są okrągłe w kolorze czerwonym. Każda kolumna jest kolorowana według najlepszych i najgorszych wykonawców w tym zakresie IV. Zwróć uwagę na trend w ostatnich miesiącach: duże transakcje delta pogarszają się i gorsze, gdy zakres IV wzrasta, z wyjątkiem ekstremalnych poziomów. Dzisiaj, w tym piśmie, IVs RUT to 15,3, 16,6 i 17,9. Wszyscy wpadają prosto w drugą kolumnę. Według tych danych najkorzystniejsze może być wejście do handlu z Deltą w przedziałach od 15 do 22 lat, lub handel z dziesięcioma stoczniami z powrotem do poprzedniego miesiąca. Dla mnie ten rodzaj obalenia przekonania, że ​​nie ma dobrych zwrotów środowiska o małej lotności. W rzeczywistości zgodnie z tymi informacjami, miesiąc poprzedni zajmuje się zakresem delta 13-20, wykonując te w latach od 20 do 25 lat. Przeciwnie, co rozumiem wiele osób wierzy. ALE, wszystkie te transakcje są przeterminowane, a to zazwyczaj nie jest praktykowane8230 Wnioski Low IV środowiska może nie być tak źle, jak wiele zdaje się twierdzić. W rzeczywistości zakres Mid-IV historycznie wykazał się nieco gorszy. Ale w każdym przypadku IV może być bardzo przydatnym narzędziem do wyboru, który miesiąc i który trafi. Wierzcie lub nie, ten test trochę mnie zabrał. Myślałem, że będzie to trywialne wdrożenie, ale wciąż szukałem interesujących bryłek do zbadania (a także dużo refaktoryzacji do mojego kodu). Ale wysiłek jest tego warty i nie mogę poczekać, aby przetestować te pojęcia w szerszej bazie instrumentów. Pliki testowe: Opcje Backtesting algo Opcje Backtesting algo Potrzebuję rady. Potrzebuję platformy lub oprogramowania, w którym mogę przetestować moją strategię (naprawdę proste). Już wcześniej używałem wielu rodzajów oprogramowania do automatyzacji handlu. Jednak wszystkie z nich nie są przyjazne dla opcji. Mam na myśli to, że moja strategia wraca od lat, a transakcje kupowane w opcjach pieniądza w tym punkcie czasu. Więc potrzebuję wszystkich łańcuchów opcji w czasie. Jednak wszystkie testy wstecznego pakietu, których używam do tej pory, wymagają dodania wszystkich instrumentów do list instrumentów lub dodania wszystkich instrumentów, które chcę przetestować. Wyobraź sobie, że przez dziesięć wygaśnięć na 12 miesięcy przez 10 lat. Więc zastanawiałem się, czy jest jakiś dostawca usług lub oprogramowanie, które umożliwiłyby mi śledzenie skuteczności portfela opcji w trybie testów wstecznych. Znowu nic cool. nie wymaga obrotu w czasie rzeczywistym. To tylko upewnienie się, że to, czego chcę, działa. Real-time trading I can implement later with the TradeLink, or even raw InteractiveBrokers API, etc. Have you tried ThinkOrSwim (TOS ) I use TOS for all my options trading. They have an OnDemand feature, which is a replay of the market that you could use to backtest. Also, they have Thinkback feature, which is more of a static testing tool than the OnDemand tool. I think you might find what you are looking for on TOS. Successful Backtesting of Algorithmic Trading Strategies - Part I This article continues the series on quantitative trading, which started with the Beginners Guide and Strategy Identification. Both of these longer, more involved articles have been very popular so Ill continue in this vein and provide detail on the topic of strategy backtesting . Algorithmic backtesting requires knowledge of many areas, including psychology, mathematics, statistics, software development and marketexchange microstructure. I couldnt hope to cover all of those topics in one article, so Im going to split them into two or three smaller pieces. What will we discuss in this section Ill begin by defining backtesting and then I will describe the basics of how it is carried out. Then I will elucidate upon the biases we touched upon in the Beginners Guide to Quantitative Trading. Next I will present a comparison of the various available backtesting software options. In subsequent articles we will look at the details of strategy implementations that are often barely mentioned or ignored. We will also consider how to make the backtesting process more realistic by including the idiosyncrasies of a trading exchange . Then we will discuss transaction costs and how to correctly model them in a backtest setting. We will end with a discussion on the performance of our backtests and finally provide an example of a common quant strategy, known as a mean-reverting pairs trade . Lets begin by discussing what backtesting is and why we should carry it out in our algorithmic trading. What is Backtesting Algorithmic trading stands apart from other types of investment classes because we can more reliably provide expectations about future performance from past performance, as a consequence of abundant data availability. The process by which this is carried out is known as backtesting . In simple terms, backtesting is carried out by exposing your particular strategy algorithm to a stream of historical financial data, which leads to a set of trading signals . Each trade (which we will mean here to be a round-trip of two signals) will have an associated profit or loss. The accumulation of this profitloss over the duration of your strategy backtest will lead to the total profit and loss (also known as the PL or PnL). That is the essence of the idea, although of course the devil is always in the details What are key reasons for backtesting an algorithmic strategy Filtration - If you recall from the article on Strategy Identification. our goal at the initial research stage was to set up a strategy pipeline and then filter out any strategy that did not meet certain criteria. Backtesting provides us with another filtration mechanism, as we can eliminate strategies that do not meet our performance needs. Modelling - Backtesting allows us to (safely) test new models of certain market phenomena, such as transaction costs, order routing, latency, liquidity or other market microstructure issues. Optimisation - Although strategy optimisation is fraught with biases, backtesting allows us to increase the performance of a strategy by modifying the quantity or values of the parameters associated with that strategy and recalculating its performance. Verification - Our strategies are often sourced externally, via our strategy pipeline . Backtesting a strategy ensures that it has not been incorrectly implemented. Although we will rarely have access to the signals generated by external strategies, we will often have access to the performance metrics such as the Sharpe Ratio and Drawdown characteristics. Thus we can compare them with our own implementation. Backtesting provides a host of advantages for algorithmic trading. However, it is not always possible to straightforwardly backtest a strategy. In general, as the frequency of the strategy increases, it becomes harder to correctly model the microstructure effects of the market and exchanges. This leads to less reliable backtests and thus a trickier evaluation of a chosen strategy. This is a particular problem where the execution system is the key to the strategy performance, as with ultra-high frequency algorithms. Unfortunately, backtesting is fraught with biases of all types. We have touched upon some of these issues in previous articles, but we will now discuss them in depth. Biases Affecting Strategy Backtests There are many biases that can affect the performance of a backtested strategy. Unfortunately, these biases have a tendency to inflate the performance rather than detract from it. Thus you should always consider a backtest to be an idealised upper bound on the actual performance of the strategy. It is almost impossible to eliminate biases from algorithmic trading so it is our job to minimise them as best we can in order to make informed decisions about our algorithmic strategies. There are four major biases that I wish to discuss: Optimisation Bias . Look-Ahead Bias . Survivorship Bias and Psychological Tolerance Bias . Optimisation Bias This is probably the most insidious of all backtest biases. It involves adjusting or introducing additional trading parameters until the strategy performance on the backtest data set is very attractive. However, once live the performance of the strategy can be markedly different. Another name for this bias is curve fitting or data-snooping bias. Optimisation bias is hard to eliminate as algorithmic strategies often involve many parameters. Parameters in this instance might be the entryexit criteria, look-back periods, averaging periods (i. e the moving average smoothing parameter) or volatility measurement frequency. Optimisation bias can be minimised by keeping the number of parameters to a minimum and increasing the quantity of data points in the training set. In fact, one must also be careful of the latter as older training points can be subject to a prior regime (such as a regulatory environment) and thus may not be relevant to your current strategy. One method to help mitigate this bias is to perform a sensitivity analysis . This means varying the parameters incrementally and plotting a surface of performance. Sound, fundamental reasoning for parameter choices should, with all other factors considered, lead to a smoother parameter surface. If you have a very jumpy performance surface, it often means that a parameter is not reflecting a phenomena and is an artefact of the test data. There is a vast literature on multi-dimensional optimisation algorithms and it is a highly active area of research. I wont dwell on it here, but keep it in the back of your mind when you find a strategy with a fantastic backtest Look-Ahead Bias Look-ahead bias is introduced into a backtesting system when future data is accidentally included at a point in the simulation where that data would not have actually been available. If we are running the backtest chronologically and we reach time point N, then look-ahead bias occurs if data is included for any point Nk, where k0. Look-ahead bias errors can be incredibly subtle. Here are three examples of how look-ahead bias can be introduced: Technical Bugs - Arraysvectors in code often have iterators or index variables. Incorrect offsets of these indices can lead to a look-ahead bias by incorporating data at Nk for non-zero k. Parameter Calculation - Another common example of look-ahead bias occurs when calculating optimal strategy parameters, such as with linear regressions between two time series. If the whole data set (including future data) is used to calculate the regression coefficients, and thus retroactively applied to a trading strategy for optimisation purposes, then future data is being incorporated and a look-ahead bias exists. MaximaMinima - Certain trading strategies make use of extreme values in any time period, such as incorporating the high or low prices in OHLC data. However, since these maximalminimal values can only be calculated at the end of a time period, a look-ahead bias is introduced if these values are used - during - the current period. It is always necessary to lag highlow values by at least one period in any trading strategy making use of them. As with optimisation bias, one must be extremely careful to avoid its introduction. It is often the main reason why trading strategies underperform their backtests significantly in live trading. Survivorship Bias Survivorship bias is a particularly dangerous phenomenon and can lead to significantly inflated performance for certain strategy types. It occurs when strategies are tested on datasets that do not include the full universe of prior assets that may have been chosen at a particular point in time, but only consider those that have survived to the current time. As an example, consider testing a strategy on a random selection of equities before and after the 2001 market crash. Some technology stocks went bankrupt, while others managed to stay afloat and even prospered. If we had restricted this strategy only to stocks which made it through the market drawdown period, we would be introducing a survivorship bias because they have already demonstrated their success to us. In fact, this is just another specific case of look-ahead bias, as future information is being incorporated into past analysis. There are two main ways to mitigate survivorship bias in your strategy backtests: Survivorship Bias Free Datasets - In the case of equity data it is possible to purchase datasets that include delisted entities, although they are not cheap and only tend to be utilised by institutional firms. In particular, Yahoo Finance data is NOT survivorship bias free, and this is commonly used by many retail algo traders. One can also trade on asset classes that are not prone to survivorship bias, such as certain commodities (and their future derivatives). Use More Recent Data - In the case of equities, utilising a more recent data set mitigates the possibility that the stock selection chosen is weighted to survivors, simply as there is less likelihood of overall stock delisting in shorter time periods. One can also start building a personal survivorship-bias free dataset by collecting data from current point onward. After 3-4 years, you will have a solid survivorship-bias free set of equities data with which to backtest further strategies. We will now consider certain psychological phenomena that can influence your trading performance. Psychological Tolerance Bias This particular phenomena is not often discussed in the context of quantitative trading. However, it is discussed extensively in regard to more discretionary trading methods. It has various names, but Ive decided to call it psychological tolerance bias because it captures the essence of the problem. When creating backtests over a period of 5 years or more, it is easy to look at an upwardly trending equity curve, calculate the compounded annual return, Sharpe ratio and even drawdown characteristics and be satisfied with the results. As an example, the strategy might possess a maximum relative drawdown of 25 and a maximum drawdown duration of 4 months. This would not be atypical for a momentum strategy. It is straightforward to convince oneself that it is easy to tolerate such periods of losses because the overall picture is rosy. However, in practice, it is far harder If historical drawdowns of 25 or more occur in the backtests, then in all likelihood you will see periods of similar drawdown in live trading. These periods of drawdown are psychologically difficult to endure. I have observed first hand what an extended drawdown can be like, in an institutional setting, and it is not pleasant - even if the backtests suggest such periods will occur. The reason I have termed it a bias is that often a strategy which would otherwise be successful is stopped from trading during times of extended drawdown and thus will lead to significant underperformance compared to a backtest. Thus, even though the strategy is algorithmic in nature, psychological factors can still have a heavy influence on profitability. The takeaway is to ensure that if you see drawdowns of a certain percentage and duration in the backtests, then you should expect them to occur in live trading environments, and will need to persevere in order to reach profitability once more. Software Packages for Backtesting The software landscape for strategy backtesting is vast. Solutions range from fully-integrated institutional grade sophisticated software through to programming languages such as C, Python and R where nearly everything must be written from scratch (or suitable plugins obtained). As quant traders we are interested in the balance of being able to own our trading technology stack versus the speed and reliability of our development methodology. Here are the key considerations for software choice: Programming Skill - The choice of environment will in a large part come down to your ability to program software. I would argue that being in control of the total stack will have a greater effect on your long term PL than outsourcing as much as possible to vendor software. This is due to the downside risk of having external bugs or idiosyncrasies that you are unable to fix in vendor software, which would otherwise be easily remedied if you had more control over your tech stack. You also want an environment that strikes the right balance between productivity, library availability and speed of execution. I make my own personal recommendation below. Execution CapabilityBroker Interaction - Certain backtesting software, such as Tradestation, ties in directly with a brokerage. I am not a fan of this approach as reducing transaction costs are often a big component of getting a higher Sharpe ratio. If youre tied into a particular broker (and Tradestation forces you to do this), then you will have a harder time transitioning to new software (or a new broker) if the need arises. Interactive Brokers provide an API which is robust, albeit with a slightly obtuse interface. Customisation - An environment like MATLAB or Python gives you a great deal of flexibility when creating algo strategies as they provide fantastic libraries for nearly any mathematical operation imaginable, but also allow extensive customisation where necessary. Strategy Complexity - Certain software just isnt cut out for heavy number crunching or mathematical complexity. Excel is one such piece of software. While it is good for simpler strategies, it cannot really cope with numerous assets or more complicated algorithms, at speed. Bias Minimisation - Does a particular piece of software or data lend itself more to trading biases You need to make sure that if you want to create all the functionality yourself, that you dont introduce bugs which can lead to biases. Speed of Development - One shouldnt have to spend months and months implementing a backtest engine. Prototyping should only take a few weeks. Make sure that your software is not hindering your progress to any great extent, just to grab a few extra percentage points of execution speed. C is the elephant in the room here Speed of Execution - If your strategy is completely dependent upon execution timeliness (as in HFTUHFT) then a language such as C or C will be necessary. However, you will be verging on Linux kernel optimisation and FPGA usage for these domains, which is outside the scope of this article Cost - Many of the software environments that you can program algorithmic trading strategies with are completely free and open source. In fact, many hedge funds make use of open source software for their entire algo trading stacks. In addition, Excel and MATLAB are both relatively cheap and there are even free alternatives to each. Now that we have listed the criteria with which we need to choose our software infrastructure, I want to run through some of the more popular packages and how they compare: Note: I am only going to include software that is available to most retail practitioners and software developers, as this is the readership of the site. While other software is available such as the more institutional grade tools, I feel these are too expensive to be effectively used in a retail setting and I personally have no experience with them. Backtesting Software Comparison Description: High-level language designed for speed of development. Wide array of libraries for nearly any programmatic task imaginable. Gaining wider acceptance in hedge fund and investment bank community. Not quite as fast as CC for execution speed. Execution: Python plugins exist for larger brokers, such as Interactive Brokers. Hence backtest and execution system can all be part of the same tech stack. Customisation: Python has a very healthy development community and is a mature language. NumPySciPy provide fast scientific computing and statistical analysis tools relevant for quant trading. Strategy Complexity: Many plugins exist for the main algorithms, but not quite as big a quant community as exists for MATLAB. Bias Minimisation: Same bias minimisation problems exist as for any high level language. Need to be extremely careful about testing. Development Speed: Pythons main advantage is development speed, with robust in built in testing capabilities. Execution Speed: Not quite as fast as C, but scientific computing components are optimised and Python can talk to native C code with certain plugins. Cost: FreeOpen Source Description: Mature, high-level language designed for speed of execution. Wide array of quantitative finance and numerical libraries. Harder to debug and often takes longer to implement than Python or MATLAB. Extremely prevalent in both the buy - and sell-side. Execution: Most brokerage APIs are written in C and Java. Thus many plugins exist. Customisation: CC allows direct access to underlying memory, hence ultra-high frequency strategies can be implemented. Strategy Complexity: C STL provides wide array of optimised algorithms. Nearly any specialised mathematical algorithm possesses a free, open-source CC implementation on the web. Bias Minimisation: Look-ahead bias can be tricky to eliminate, but no harder than other high-level language. Good debugging tools, but one must be careful when dealing with underlying memory. Development Speed: C is quite verbose compared to Python or MATLAB for the same algorithmm. More lines-of-code (LOC) often leads to greater likelihood of bugs. Execution Speed: CC has extremely fast execution speed and can be well optimised for specific computational architectures. This is the main reason to utilise it. Cost: Various compilers: LinuxGCC is free, MS Visual Studio has differing licenses. Different strategies will require different software packages. HFT and UHFT strategies will be written in CC (these days they are often carried out on GPUs and FPGAs ), whereas low-frequency directional equity strategies are easy to implement in TradeStation, due to the all in one nature of the softwarebrokerage. My personal preference is for Python as it provides the right degree of customisation, speed of development, testing capability and execution speed for my needs and strategies. If I need anything faster, I can drop in to C directly from my Python programs. One method favoured by many quant traders is to prototype their strategies in Python and then convert the slower execution sections to C in an iterative manner. Eventually the entire algo is written in C and can be left alone to trade In the next few articles on backtesting we will take a look at some particular issues surrounding the implementation of an algorithmic trading backtesting system, as well as how to incorporate the effects of trading exchanges. We will discuss strategy performance measurement and finally conclude with an example strategy. Just Getting Started with Quantitative Trading

No comments:

Post a Comment