Friday 10 November 2017

Matlab trading system development


Zautomatyzowane tworzenie systemu transakcyjnego z MATLAB Stuart Kozola, MathWorks Chcesz nauczyć się tworzyć zautomatyzowany system transakcyjny, który może obsługiwać wiele kont transakcyjnych, wiele klas aktywów i handlować w wielu systemach handlu jednocześnie W tym webinarium przedstawimy przykładowy przepływ pracy do badania, wdrażanie, testowanie i wdrażanie zautomatyzowanej strategii handlowej zapewniającej maksymalną elastyczność tego, z kim i z kim handlujesz. Dowiesz się, w jaki sposób produkty MATLAB mogą być używane do gromadzenia danych, analizy danych i wizualizacji, opracowywania modeli i kalibracji, testowania wstecznego, testowania do przodu, integracji z istniejącymi systemami i ostatecznie wdrożenia do handlu w czasie rzeczywistym. Patrzymy na każdą z części tego procesu i widzimy, jak MATLAB zapewnia pojedynczą platformę, która pozwala na wydajne rozwiązanie wszystkich części tego problemu. Konkretne tematy obejmują: Opcje gromadzenia danych, w tym codzienne dane historyczne, śróddzienne i w czasie rzeczywistym Budowanie modeli i prototypowanie w programie MATLAB Analiza historyczna i kalibracja modelu Testowanie w przód i walidacja modeli Interakcja z istniejącymi bibliotekami i oprogramowaniem do wykonywania transakcji Wdrażanie ostatecznej aplikacji w wielu środowiskach, w tym w JAVA i narzędziach Excel do handlu z wysoką częstotliwością, w tym przetwarzania równoległego, procesorów graficznych i generowania kodu C z produktu MATLAB Product Focus Wybierz swój kraj Rozwój systemu handlowego za pomocą MATLAB Stuart Kozola, MathWorks Chcesz nauczyć się tworzyć zautomatyzowany system transakcyjny, który może obsługiwać wiele kont transakcyjnych, wiele klas aktywów i handlować w wielu systemach handlu jednocześnie W tym webinarium przedstawimy przykładowy obieg pracy do badania, implementacji, testowania i wdrażania automatycznej strategii handlowej zapewniającej maksymalną elastyczność co i kto handlujesz z. Dowiesz się, w jaki sposób produkty MATLAB mogą być używane do gromadzenia danych, analizy danych i wizualizacji, opracowywania modeli i kalibracji, testowania wstecznego, testowania do przodu, integracji z istniejącymi systemami i ostatecznie wdrożenia do handlu w czasie rzeczywistym. Patrzymy na każdą z części tego procesu i widzimy, jak MATLAB zapewnia pojedynczą platformę, która pozwala na wydajne rozwiązanie wszystkich części tego problemu. Konkretne tematy obejmują: Opcje gromadzenia danych, w tym codzienne dane historyczne, śróddzienne i w czasie rzeczywistym Budowanie modeli i prototypowanie w programie MATLAB Analiza historyczna i kalibracja modelu Testowanie w przód i walidacja modeli Interakcja z istniejącymi bibliotekami i oprogramowaniem do wykonywania transakcji Wdrażanie ostatecznej aplikacji w wielu środowiskach, w tym JAVA i narzędziach Excel do handlu z wysoką częstotliwością, w tym przetwarzaniem równoległym, procesorami graficznymi i generowaniem kodu C z produktu MATLAB Product Focus Wybierz swój kraj Postepowanie na międzynarodowej konferencji poświęconej metodom obliczeniowym w nauce i technice 2004 Udoskonalenie handlu technicznego systemy za pomocą nowej algorytmy genetycznej opartej na MATLAB Stephanos Papadamou a ,. George Stephanides b. Departament Ekonomii, University of Thessaly, Argonauton and Filelinon, Volos, Grecja b Wydział Informatyki Stosowanej, Uniwersytet Macedonii Gospodarczych i Społecznych Nauk, Egnatias 156, Thessaloniki 54006, Grecja Otrzymano 18 maja 2006. Zaakceptowano 15 grudnia 2006. Dostępny online 24 Styczeń 2007. Ostatnie badania na rynkach finansowych sugerują, że analiza techniczna może być bardzo przydatnym narzędziem w przewidywaniu tego trendu. Systemy transakcyjne są szeroko stosowane do oceny rynku, jednak optymalizacja parametrów tych systemów nie cieszyła się dużym zainteresowaniem. W tym artykule, aby zbadać potencjalną siłę handlu cyfrowego, przedstawiamy nowe narzędzie MATLAB oparte na algorytmach genetycznych, które specjalizuje się w optymalizacji parametrów reguł technicznych. Wykorzystuje moc algorytmów genetycznych do generowania szybkich i wydajnych rozwiązań w warunkach rzeczywistych. Nasze narzędzie zostało szeroko przetestowane na danych historycznych funduszu UBS inwestującego na wschodzących rynkach akcji poprzez nasz specyficzny system techniczny. Wyniki pokazują, że nasz proponowany GATradeTool przewyższa powszechnie stosowane, nieadaptacyjne narzędzia programowe pod względem stabilności zwrotu i oszczędności czasu w całym okresie próbkowania. Dostarczyliśmy jednak dowodów na możliwy wpływ wielkości populacji na jakość rozwiązań. Prognozy rynków finansowych Algorytmy genetyczne Inwestycje Zasady techniczne 1 Wstęp Dzisiejsi handlowcy i analitycy inwestycyjni potrzebują szybkich i skutecznych narzędzi na bezlitosnym rynku finansowym. Bitwy w handlu są obecnie prowadzone głównie z prędkością komputera. Rozwój nowej technologii oprogramowania i pojawienie się nowych środowisk oprogramowania (np. MATLAB) stanowią podstawę do rozwiązywania trudnych problemów finansowych w czasie rzeczywistym. Rozbudowana funkcjonalność matematyczna i finansowa firmy MATLAB zapewnia, że ​​jest ona zarówno interpretowanym, jak i skompilowanym językiem programowania i niezależnością od platformy, dzięki czemu doskonale nadaje się do tworzenia aplikacji finansowych. Dowody dotyczące zysków osiągniętych dzięki przepisom technicznym, w tym strategiom pędu (np. 14 15. 16. 16. 25 i 20), średniej ruchomej i innym systemom handlu 6. 2. 9 i 24 mogą potwierdzać znaczenie analizy technicznej. Jednak większość z tych badań zignorowała kwestię optymalizacji parametrów, pozostawiając je otwartymi na krytykę snoopingu danych i możliwość błędu stronniczości 7. 17 i 8. Tradycyjnie badacze stosowali ad hoc specyfikację reguł handlowych. Używają domyślnej popularnej konfiguracji lub losowo wypróbowują kilka różnych parametrów i wybierają najlepsze z kryteriami opartymi głównie na zwrocie. Papadamou i Stephanides 23. wdrożyli nowy zestaw narzędzi bazujący na MATLAB do wspomaganego komputerowo handlu technicznego, który zawiera procedurę rozwiązywania problemów z optymalizacją parametrów. Jednak słabym punktem ich procedury optymalizacji jest czas: funkcja celu (np. Zysk) nie jest prostą kwadratową funkcją błędu, ale skomplikowaną (każda iteracja optymalizacji przechodzi przez dane, generuje sygnały transakcyjne, oblicza zyski itp.). Gdy zbiory danych są duże i chcesz często ponownie optymalizować system i potrzebujesz rozwiązania tak szybko, jak to możliwe, a wypróbowanie wszystkich możliwych rozwiązań, aby uzyskać najlepsze, byłoby bardzo żmudnym zadaniem. Algorytmy genetyczne (GA) są lepiej dostosowane, ponieważ przeprowadzają losowe wyszukiwania w uporządkowany sposób i bardzo szybko zbiegają się na populacjach rozwiązań zbliżonych do optymalnych. GA da ci zestaw (populację) dobrych rozwiązań. Analitycy są zainteresowani otrzymaniem kilku dobrych rozwiązań tak szybko, jak to możliwe, a nie najlepszym na świecie rozwiązaniem. Najlepsze na świecie rozwiązanie istnieje, ale jest mało prawdopodobne, aby nadal było najlepsze. Celem tego badania jest pokazanie, w jaki sposób można zastosować algorytmy genetyczne, klasę algorytmów w obliczeniach ewolucyjnych, w celu poprawy wydajności i wydajności skomputeryzowanych systemów transakcyjnych. Celem nie jest przedstawienie teoretycznego lub empirycznego uzasadnienia analizy technicznej. Pokazujemy nasze podejście w konkretnym zadaniu prognostycznym opartym na wschodzących rynkach akcji. Artykuł jest zorganizowany w następujący sposób. Wcześniejsze prace przedstawiono w Rozdziale 2. Zestaw danych i naszą metodologię opisano w Rozdziale 3. Wyniki empiryczne omówiono w Rozdziale 4. Wnioski są zgodne z punktem 5. 2 Poprzednia praca W dziedzinie informatyki i inżynierii jest spory grono GA, ale niewiele zrobiono w odniesieniu do obszarów związanych z biznesem. W ostatnim czasie wzrosło zainteresowanie wykorzystaniem AH w ekonomii finansowej, ale jak dotąd niewiele było badań dotyczących automatycznego handlu. Według naszej wiedzy pierwszy opublikowany artykuł łączący algorytmy genetyczne z inwestycjami pochodzi z Bauera i Liepins 4. Bauer 5 w swojej książce Algorytmy genetyczne i strategie inwestycyjne oferuje praktyczne wskazówki dotyczące tego, w jaki sposób GA można wykorzystać do opracowania atrakcyjnych strategii handlowych opartych na podstawowych informacjach. Techniki te można łatwo rozszerzyć o inne rodzaje informacji, takie jak dane techniczne i makroekonomiczne, a także ceny z przeszłości. Według Allena i Karjalainena 1. algorytm genetyczny jest odpowiednią metodą do odkrycia zasad handlu technicznego. Fernndez-Rodrguez i in. 11 poprzez przyjęcie algorytmów optymalizacji algorytmów w prostej regule handlowej dostarcza dowodów na skuteczne wykorzystanie GA z Giełdy Papierów Wartościowych w Madrycie. Inne interesujące badania to te Mahfouda i Mani 18, które przedstawiły nowy system oparty na algorytmie genetycznym i zastosowały go do zadania przewidywania przyszłych wyników poszczególnych stad przez Neely et al. 21 i przez Oussaidene i in. 22, który zastosował programowanie genetyczne do prognozowania wymiany walut i odnotował pewien sukces. Jedną z komplikacji w optymalizacji GA jest to, że użytkownik musi zdefiniować zestaw parametrów, takich jak współczynnik podziału, wielkość populacji i współczynnik mutacji. Według De Jong 10, który badał algorytmy genetyczne w optymalizacji funkcji, dobre wyniki GA wymagają dużego prawdopodobieństwa przejścia (odwrotnie proporcjonalne do wielkości populacji) i umiarkowanej wielkości populacji. Goldberg 12 i Markellos 19 sugerują, że zestaw parametrów, który działa dobrze w wielu problemach, to parametr crossover 0,6, rozmiar populacji 30 i parametr mutacji 0,0333. Bauer 4 przeprowadził serię symulacji dotyczących problemów z optymalizacją finansową i potwierdził słuszność sugestii Goldbergów. W niniejszym badaniu przeprowadzimy ograniczone badanie symulacyjne, testując różne konfiguracje parametrów dla wybranego systemu transakcyjnego. Przekażemy również dowody na GA, które zaproponowaliśmy, porównując nasze narzędzie z innymi narzędziami programowymi. 3 Metodologia Nasza metodologia prowadzona jest w kilku etapach. Po pierwsze, musimy wdrożyć nasz system transakcyjny w oparciu o analizę techniczną. Opracowując system transakcyjny, należy określić, kiedy i kiedy należy wyjść z rynku. Jeśli przedsiębiorca jest na rynku, zmienna binarna jest równa jednej, w przeciwnym razie wynosi zero. Jako handlowcy pozycji opieramy większość naszych decyzji dotyczących wejścia i wyjścia na dzienne wykresy, budując trend następujący wskaźnik (Dimbeta). Wskaźnik ten oblicza odchylenie cen bieżących od średniej ruchomej długości. Wskaźniki stosowane w naszym systemie transakcyjnym mogą być sformalizowane jak poniżej: gdzie jest cena zamknięcia funduszu w czasie i funkcja MovAv oblicza prostą średnią ruchomą zmiennej Close z długością czasu. Nasz system transakcyjny składa się z dwóch wskaźników: wskaźnika Dimbeta i średniej ruchomej Dimbeta z następującego równania: Jeżeli przekartrujemy to, wprowadzamy go na rynek (tj. Kupimy sygnał). Jeśli poprzecznie w dół, zamknij długą pozycję na rynku (tj. Sygnał sprzedaży). Po drugie, musimy zoptymalizować naszą strategię handlową. Powszechnie wiadomo, że maksymalizacja funkcji celu, takich jak zysk lub bogactwo, może zoptymalizować systemy transakcyjne. Najbardziej naturalną funkcją celu dla przedsiębiorcy niewrażliwego na ryzyko jest zysk. W naszym narzędziu programowym rozważamy mnożnikowe zyski. Mnożnikowe zyski są odpowiednie, gdy ustalony udział nagromadzonego bogactwa jest inwestowany w każdy długi handel. W naszym oprogramowaniu niedozwolona jest żadna krótka sprzedaż, a współczynnik dźwigni jest ustalony na stałe, bogactwo w czasie jest wyrażane przez następującą formułę: gdzie jest realizowany zwrot za okres kończący się w czasie, są kosztami transakcji i jest binarną zmienną obojętną wskazuje pozycję długą lub nie (tj. 1 lub 0). Dochód daje się odejmując od ostatecznego bogactwa początkowe bogactwo,. Optymalizacja systemu obejmuje wykonywanie wielu testów przy zmianie jednego lub większej liczby parametrów (,) w ramach reguł handlu. Liczba testów może szybko wzrosnąć (Metastock ma maksymalnie 32 000 testów). W FinTradeTool 23. nie ma jednak limitu czasu przetwarzania w zależności od używanego systemu komputerowego. W niniejszym artykule badamy możliwość rozwiązania problemu optymalizacji za pomocą algorytmów genetycznych. Algorytmy genetyczne (GA) opracowane przez Holland 13 stanowią klasę technik wyszukiwania, adaptacji i optymalizacji opartych na zasadach naturalnej ewolucji. Algorytmy genetyczne dobrze nadają się do problemów związanych z optymalizacją, ponieważ wiadomo, że wykazują solidność i mogą oferować znaczące korzyści w zakresie metodologii rozwiązania i wydajności optymalizacji. GA różnią się od innych procedur optymalizacji i wyszukiwania w pewien sposób. Najpierw działają z kodowaniem zestawu parametrów, a nie z samych parametrów. Dlatego GA mogą z łatwością obsługiwać zmienne binarne. Po drugie, GA wyszukuje z populacji punktów, a nie pojedynczego punktu. Dlatego GA mogą zapewnić zestaw optymalnych globalnie rozwiązań. Wreszcie, GA używają jedynie informacji o funkcji celu, a nie pochodnych lub innej wiedzy pomocniczej. Zatem GA mogą radzić sobie z nieciągłymi i nierozróżnialnymi funkcjami, które faktycznie istnieją w praktycznym problemie optymalizacji. 4 Proponowany GATradeTool w GATradeTool. algorytm genetyczny działa na populacji zakodowanych kandydatów na rozwiązania (,). Każda zmienna decyzyjna w zestawie parametrów jest zakodowana jako ciąg binarny i wszystkie są połączone w celu utworzenia chromosomu. Reprezentacja chromosomu jest dwuelementowym wektorem zawierającym parametry w kodowanym genetycznym kodowaniu. Dokładność reprezentacji binarnej wynosi osiem bitów na parametr (tj. 1 0 0 1 0 1 1 1 1 0 0 1 0 1 1 1). Rozpoczyna się losowo skonstruowaną populacją początkowych przypuszczeń. Te kandydaci do rozwiązania są oceniani pod kątem funkcji celu (równanie (4)). W celu uzyskania optymalności, każdy chromosom wymienia informacje za pomocą operatorów (tj. Arytmetycznego crossovera 1) zapożyczonych z genetyki naturalnej w celu wytworzenia lepszego rozwiązania. Funkcja celu (Eq. (4)) służy do pomiaru tego, jak poszczególne osoby wykonały zadanie w domenie problemu. W naszym przypadku najbardziej dopasowane osoby będą miały najwyższą wartość liczbową skojarzonej funkcji celu. Funkcja fitness przekształca wartości funkcji surowego celu w nieujemne wartości wartości dla każdej osoby. Narzędzie obsługuje metodę kompensacji i skalowania Goldberga 12 oraz algorytm liniowego rankingu Baker 3. Nasza technika selekcji wykorzystuje mechanizm koła ruletki do probabilistycznego wybierania osób na podstawie ich wyników. Rzeczywisty przedział Sum jest określany jako suma wartości sprawności rzędu dla wszystkich osób w bieżącej populacji. Osoby są następnie mapowane jeden do jednego w ciągłych odstępach w zakresie 0, Suma. Wielkość każdego pojedynczego przedziału odpowiada wartości fitness powiązanej osoby. Aby wybrać osobę, generowana jest liczba losowa w przedziale 0, Suma i osoba, której segment obejmuje losową liczbę. Proces ten powtarza się, aż wybrana zostanie wybrana liczba osób 26. Kandydaci ci mogli wziąć udział w arytmetycznym skrzyżowaniu, procedurze rekombinacji obiecujących kandydatów w celu stworzenia następnego pokolenia. Kroki te powtarzano do momentu spełnienia dobrze zdefiniowanego kryterium. Ponieważ GA jest metodą wyszukiwania stochastycznego, trudno jest formalnie określić kryteria konwergencji. Ponieważ kondycja populacji może pozostać statyczna przez wiele pokoleń, zanim znajdzie się lepsza osoba, zastosowanie konwencjonalnych kryteriów zakańczania staje się problematyczne. W rezultacie zaproponowaliśmy osiągnięcie określonej liczby iteracji jako kryterium zakończenia. Nasz algorytm genetyczny można przedstawić w następującej formie: 5 Wyniki empiryczne W tej części stosujemy naszą metodologię w funduszu inwestycyjnym UBS inwestującym na wschodzących rynkach akcji. 2 Analizowane dane składają się z 2800 obserwacji dziennych cen zamknięcia tego funduszu za okres 159825604. Okres optymalizacji jest zdefiniowany w przedziale od 1598 do 25603. Zoptymalizowany system został oceniony w dłuższym okresie 2560325604. Problem optymalizacji ustala się w celu określenia optymalne długości wskaźnika Dimbeta i jego średnia ruchoma dla prostego modelu Dimbeta, który maksymalizuje zyski. Po pierwsze, zostanie zbadany wpływ różnych konfiguracji parametrów GA. Dokładniej, jesteśmy zainteresowani zmierzeniem wpływu wielkości populacji i parametru crossover w wykonaniu procedury optymalizacji opartej na algorytmie genetycznym. Na podstawie zaleceń Goldbergs 12 i Bauers 4, wielkość populacji powinna wynosić 30, a współczynnik crossover powinien wynosić 0,6 (wartości domyślne). Liczba iteracji została ustawiona na 300 dla wszystkich symulacji. Po drugie, porównaliśmy rozwiązania problemu optymalizacji prowadzone przez różne narzędzia programowe w celu zmierzenia ważności proponowanego GATradeTool. Tabela 1 zawiera wyniki optymalizacji GA dla różnych rozmiarów populacji. Pierwszy wiersz tabeli pokazuje najlepsze parametry wskaźnika Dimbeta i ruchomą średnią Dimbeta. Aby zmierzyć wpływ wielkości populacji w najlepszym rozwiązaniu, badamy szereg różnych statystyk. Rozwiązanie z maksymalnym i minimalnym zwrotem, średnim zwrotem, odchyleniem standardowym tych rozwiązań, czasem potrzebnym do zbieżności algorytmu i wskaźnikiem wydajności obliczonym przez podzielenie maksymalnego rozwiązania zwrotu przez odchylenie standardowe rozwiązań. Tabela 1. Efekt wielkości populacji Patrząc w tabeli 1 można powiedzieć, że tak długo, jak zwiększa się wielkość populacji, najlepsze i średnie rozwiązania są wyższe. Jednak po wielkości populacji 30 wydajność spadła. W celu uwzględnienia kosztów obliczeniowych związanych ze wzrostem liczebności populacji, obliczamy czas potrzebny na rozwiązanie problemu. Niski rozmiar populacji prowadzi do niskiej wydajności i niskiego czasu realizacji. Według wskaźnika efektywności najlepszym rozwiązaniem jest wielkość populacji 20. W celu ustalenia podstawowej wydajności algorytmu wykonano 30 prób GA, z inną losową wyjściową populacją dla każdej próby. Ryc. 1a. pokazuje, jak poprawiła się wydajność w czasie, kreśląc średnią maksymalną sprawność jako procent optymalnej wartości w stosunku do liczby generacji. Najpierw uchwyciliśmy maksymalną wartość fitness dla każdego z 30 prób, które wykonuje się dla każdego pokolenia i każdej próby. Następnie uśredniliśmy maksymalne wartości sprawności i podzieliliśmy tę liczbę przez optymalną wartość fitness, która została uzyskana przez wyszukiwanie enumeratywne (narzędzie FinTrade, 23), co dało nam średnią maksymalną sprawność jako procent optymalnej wartości na jedno pokolenie. Ryc. 1a. Podstawowe ustawienia parametrów: procent optymalny. Jak można zobaczyć na ryc. 1a. średnia maksymalna sprawność pierwszej generacji wynosi około 74 optymalnej wartości. Jednak do pięćdziesiątego pokolenia algorytm zwykle znalazł przynajmniej jedno rozwiązanie, które mieściło się w granicach 90 optymalnej wartości. Po pięćdziesiątej generacji rozwiązanie mogło osiągnąć 98 optymalnej wartości. Przy pomiarach wydajności z naszych ustawień podstawowych jako punktu odniesienia, zbadaliśmy możliwe wariacje w podstawowej procedurze. Przeanalizowaliśmy wpływ zmian w wielkości populacji i stopie crossover. Dla każdego innego ustawienia parametru przeprowadziliśmy 30 prób algorytmu, a następnie porównaliśmy wykresy średniej maksymalnej sprawności z wartościami uzyskanymi dla ustawienia podstawowego. Najpierw spróbowaliśmy współczynników crossoverów 0,4 i 0,8. Wyniki przedstawiono na Fig. 1b i Fig. 1c. które są podobne do rys. 1a. W rezultacie parametry crossover nie wpływają na optymalne rozwiązanie w stopniu krytycznym. Jednak wyniki różnią się, gdy zmieniamy rozmiar populacji. Zgodnie z fig. 1d i fig. 1e. przy niewielkiej populacji mieliśmy gorsze wyniki niż w przypadku dużej populacji. Kiedy wybraliśmy 80 jako wielkość populacji, osiągnęliśmy wysokie zyski we wczesnych generacjach. Ryc. 1b. Crossover 0,40: procent optymalnego. Ryc. 1c. Crossover 0,80: procent optymalnego. Ryc. 1d. Ludność 80: procent optymalnej. Ryc. 1e. Ludność 20: procent optymalnej. Patrząc na tabelę 2 można porównać wyniki optymalizacji naszego systemu transakcyjnego za pomocą trzech różnych narzędzi programowych. Pierwszy wiersz daje wynik dla GATradeTool przeciwko Metastock i FinTradeTool 23. Nasze proponowane narzędzie programistyczne (GATradeToo l) może bardzo szybko rozwiązać problem optymalizacji bez żadnych konkretnych ograniczeń dotyczących liczby wszystkich testów. Maksymalna liczba testów, które można wykonać w oprogramowaniu Metastock, wynosi 32 000. FinTradeTool potrzebuje dużo więcej czasu, aby znaleźć optymalne rozwiązanie. Rozwiązanie dostarczone przez GATradeTool. jest zbliżone do optymalnego rozwiązania FinTradeTool. Tabela 2. Porównanie trzech różnych narzędzi programowych Zoptymalizowane parametry (Dimbeta, MovAv (DimBeta)) Systemy transakcyjne o optymalnych parametrach, które zostały znalezione w okresie 159825603 przetestowano w okresie testowym 2560325604. Wydajność naszego systemu transakcyjnego została zwiększona we wszystkich narzędziach oprogramowania. Koszt czasu należy jednak traktować bardzo poważnie (kolumna 4). Ryc. 2 przedstawia ewolucję maksymalnego, minimalnego i średniego zwrotu z 300 pokoleń dla systemu handlu Dimbeta (wielkość populacji 80, stopa skrzyżowania 0,6). Można zaobserwować, że maksymalny zwrot ma pozytywny trend. Wydaje się być względnie stabilny po 150 pokoleniach i porusza się w zakresie od 1,2 do 1 (tj. Powrót 120170). Dla minimalnej sprawności wydaje się, że nie istnieje żaden wzór. Dla średniego zwrotu ludności wyraźne tendencje wzrostowe można znaleźć w pierwszych 180 pokoleniach, co wskazuje, że ogólna sprawność populacji poprawia się z czasem. W odniesieniu do lotności roztworów, standardowe odchylenie roztworów po wzroście w pierwszych generacjach stabilizuje się w zakresie od 0,3 do 0,6, zapewniając dowody stabilnego i wydajnego zestawu roztworów. Ryc. 2. Ewolucja kilku statystyk ponad 300 pokoleń. Ryc. 3 przedstawia trójwymiarowy wykres optymalnych rozwiązań podanych przez GATradeTool. W osiach i mamy parametry, dla wskaźnika dimbeta i jego średniej ruchomej. Oś 2 pokazuje powrót systemu handlu Dimbeta dla wybranych optymalnych parametrów. Jak można łatwo zrozumieć, nasze narzędzie zapewnia obszar optymalnych rozwiązań w przeciwieństwie do FinTradeTool, który zapewnia tylko najlepsze rozwiązanie. Ryc. 3. Wykres 3-D optymalnego obszaru. 6 Wnioski Podczas gdy analiza techniczna jest szeroko stosowana jako podejście inwestycyjne wśród praktyków lub pracowników akademickich, rzadko koncentruje się na kwestii optymalizacji parametrów. Nie jest naszym zadaniem obrona tu analizy technicznej, chociaż nasze wyniki pokazują, że istnieje pewna przewidywalność w funduszu inwestycyjnym UBS inwestującym na wschodzących rynkach akcji w oparciu o same dane historyczne. Naszym głównym celem w tym artykule jest pokazanie, że nowa technologia MATLAB może być wykorzystana w celu wdrożenia algorytmu genetycznego, który może poprawić optymalizację systemów handlu technicznego. Nasze wyniki eksperymentalne pokazują, że GATradeTool może poprawić handel cyfrowy, oferując szybko zestaw optymalnych rozwiązań. Odnosząc się do wpływu różnych konfiguracji parametrów GA, stwierdziliśmy, że wzrost wielkości populacji może poprawić wydajność systemu. Parametr szybkości podziału nie ma wpływu na jakość rozwiązania. Porównując rozwiązania problemu optymalizacji przeprowadzonego przez różne narzędzia programowe, stwierdziliśmy, że GATradeTool może działać lepiej, zapewniając bardzo szybki zestaw optymalnych rozwiązań, które zapewniają spójność w całym okresie oceny. Wreszcie interesujące byłoby dalsze badania, aby przetestować serię różnych systemów, aby zobaczyć korelację między algorytmem genetycznym a wydajnością systemu. W czasie częstych zmian na rynkach finansowych naukowcy i handlowcy mogą łatwo przetestować swoje specyficzne systemy w GATradeTool, zmieniając tylko funkcję, która wytwarza sygnały transakcyjne. Podziękowania Niniejsza praca badawcza była częścią badań podoktorskich dr S. Papadamou, które zostały sfinansowane przez grecką państwową stypendystów IKY. Piśmiennictwo 1 F. Allen. R. Karjalainen Wykorzystanie algorytmów genetycznych do wyszukiwania reguł handlu technicznego Journal of Financial Economic. Volume 51. 1999. str. 245271 2 H. L. Allen. M. P. Taylor Wykorzystanie analizy technicznej na rynku walutowym Journal of International Money and Finance. Tom 11. 1992. s. 303314 3 J. E. Baker, Adaptacyjne metody selekcji dla algorytmów genetycznych, w: Proceedings of the first International Conference on Genetic Algorithms, 1985, s. 101111 4 R. J. Bauer. G. E. Liepins Algorytmy genetyczne i skomputeryzowane strategie transakcyjne Expert Systems in Finance. D. E. OLYWAJ. P. R. Watkins. 1992. Elsevier Science Publishers, Amsterdam, Holandia 5 R. J. Bauer Jr. Genetyczne algorytmy i strategie inwestycyjne 1994. John Wiley, Sons, Inc, New York 6 W. Brock. J. Lakonishok. B. LeBaron Proste zasady handlu technicznego i stochastyczne właściwości papierów wartościowych wraca Journal of Finance. Tom 47. 1992. str. 17311764 7 S. Brown. W. Goetzmann. R. Ibbotson. S. Ross Biografia uprzedzeń w badaniach wydajności Przegląd badań finansowych. Tom 5. 1992. s. 553580 8 S. Brown. W. Goetzmann. S. Ross Survival Journal of Finance. Tom 50. 1995. s. 853873 9 Y. W. Cheung. C. Y.P. Wong Realizacja zasad handlu na czterech azjatyckich kursach walutowych Multinational Finance Journal. Tom 1. 1997. s. 122 10 K. De Jong, Analiza zachowania klasy genetycznych systemów adaptacyjnych, Ph. D. Diss. University of Michigan, Microfilms University No. 76-9381, 1975 11 F. Fernndez-Rodrguez, C. Gonzlez-Martel, S. Sosvilla-Rivero, Optymalizacja reguł technicznych za pomocą algorytmów genetycznych: dane z rynku akcji w Madrycie, dokumenty robocze 2001 -14, FEDEA, 2001. ftp: ftp. fedea. espubPapers2001dt2001-14.pdf 12 DE Goldberg Genetyczne algorytmy w poszukiwaniu, optymalizacji i uczeniu maszynowym 1989. Addison-Wesley 13 J. H. Holandia Adaptacja w systemie naturalnym i sztucznym 1975. University of Michigan Press 14 N. Jegadeesh. S. Titman Powraca do kupowania zwycięzców i sprzedających przegranych: implikacje dla wydajności giełdowej Journal of Finance. Tom 48. Wydanie 1. 1993. s. 6591 15 P. J. Kaufman Nowe systemy handlu towarami i metody 1987. John Wiley amp Sons 16 B. N. Lehmann Fad, martyngał i efektywność rynku Quarterly Journal of Economics. Tom 105. 1990. s. 128 17 A. W. Lo. A. C. MacKinlay Kiedy są przekupne zyski z powodu nadmiernej reakcji na giełdę Przegląd badań finansowych. Tom 3. 1990. s. 175206 18 S. Mahfoud. G. Mani Prognozy finansowe z wykorzystaniem algorytmów genetycznych Journal of Applied Artificial Intelligence. Tom 10. Numer 6. 1996. s. 543565 19 R. N. Systemy obliczeniowe Backtesting Markellos Journal of Computational Intelligence in Finance. Volume 5 Issue 6. 1997. s. 510 20 L. Menkhoff. M. Schlumberger Trwała rentowność analizy technicznej na rynkach walutowych Przegląd kwartalny BNL. Tom 193. 1995. s. 189216 21 C. Neely, P. Weller, R. Ditmar, Czy opłaca się analiza techniczna na rynku walutowym Podejście do programowania genetycznego, w: C. Dunis, B. Rustem, (Wyd.), Proceedings, Forecasting Financial Markets: Zaliczki na kursy walut, stopy procentowe i zarządzanie aktywami, Londyn, 1997 22 M. Oussaidene. B. Chopard. O. Pictet. M. Tomassini Praktyczne aspekty i doświadczenia Równoległe programowanie genetyczne i jego zastosowanie do modelu handlowego Induction Journal of Parallel Computing. Tom 23. Numer 8. 1997. s. 11831198 23 S. Papadamou. G. Stephanides Nowy zestaw narzędzi matlab do wspomaganego komputerowo dynamicznego handlu technicznego Financial Engineering News. Numer 31. 2003 24 S. Papadamou. S. Tsopoglou Badanie opłacalności systemów analizy technicznej na rynkach walutowych Managerial Finance. Tom 27. Issue 8. 2001. s. 6378 25 F. M. Werner. D. Bondt. R. Thaler Dalsze dowody na nadmierną reakcję inwestora i sezonowość rynku akcji Journal of Finance. Volume 42. Issue 3. 1987. s. 557581 26 D. Whitley, Algorytm Genitora i presja selekcyjna: dlaczego rankingowe testy prokreacyjne są najlepsze, w: Proceedings of Third International Conference on Genetic Algorithms, 1989, pp. 116121 Arytmetyczne przekierowanie jednopunktowe, polega na losowym przecięciu dwóch ciągów w tej samej losowo ustalonej pozycji sznurka, a następnie zamianie części ogonowych. Crossover rozszerza poszukiwanie nowych rozwiązań w dalekosiężnych kierunkach. Strukturę tego funduszu i jego główną pozycję na 2562004 przedstawiono na poniższym rysunku. Copyright 2007 Elsevier Ltd. Wszelkie prawa zastrzeżone.

No comments:

Post a Comment