Thursday 16 November 2017

Amibroker trading system example


Jak zoptymalizować system transakcyjny UWAGA: To dość zaawansowany temat. Przeczytaj najpierw samouczki AFL. Idea optymalizacji jest prosta. Najpierw musisz mieć system transakcyjny, może to być na przykład zwykły, ruchomy crossover. W prawie każdym systemie istnieją pewne parametry (jako okres uśredniania), które decydują o tym, jak dany system zachowuje się (tj. Czy jest dobrze dostosowany do długoterminowego lub krótkoterminowego, jak reaguje na wysoce lotne zapasy itp.). Optymalizacja to proces znajdowania optymalnych wartości tych parametrów (dających najwyższy zysk z systemu) dla danego symbolu (lub portfolio symboli). AmiBroker jest jednym z niewielu programów, które pozwalają zoptymalizować system na wielu symbolach jednocześnie. Aby zoptymalizować system, musisz zdefiniować od jednego do dziesięciu parametrów, które mają zostać zoptymalizowane. Ty decydujesz, jaka jest minimalna i maksymalna dozwolona wartość parametru oraz w jakich przyrostach ta wartość powinna zostać zaktualizowana. Następnie AmiBroker wykonuje wiele testów wstecz, wykorzystując WSZYSTKIE możliwe kombinacje wartości parametrów. Po zakończeniu tego procesu program AmiBroker wyświetli listę wyników posortowaną według zysku netto. Jesteś w stanie zobaczyć wartości parametrów optymalizacji, które dają najlepszy wynik. Zapisywanie wzoru AFL Optymalizacja w backsecie jest obsługiwana za pomocą nowej funkcji o nazwie optimize. Składnia tej funkcji jest następująca: zmienna optymalizuj zmienną (quot. Opis, domyślna, minimalna maks. Krokowa) - jest normalną zmienną AFL, której przypisana jest wartość zwrócona przez funkcję optymalizacji. Przy normalnych testach historycznych, skanowaniu, eksploracji i trybach comentary funkcja optymalizacji zwraca wartość domyślną, więc powyższe wywołanie funkcji jest równoważne: zmienna domyślna W trybie optymalizacji funkcja optymalizacji zwraca kolejne wartości od minimalnej do maksymalnej (włącznie) z krokowym krokiem. quot Opisquot jest łańcuchem, który służy do identyfikacji zmiennej optymalizacji i jest wyświetlany jako nazwa kolumny na liście wyników optymalizacji. wartość domyślna to wartość domyślna, która optymalizuje zwrot funkcji w trybie eksploracji, wskaźnik, komentarz, skanowanie i normalny tryb testu wstecznego min jest minimalną wartością optymalizowanej zmiennej max jest maksymalną wartością zoptymalizowanego kroku zmiennej to interwał stosowany do zwiększenia wartość od minimum do maksimum AmiBroker obsługuje do 64 wywołań optymalizacji funkcji (a więc do 64 zmiennych optymalizacyjnych), należy pamiętać, że jeśli używasz wyczerpującej optymalizacji, to naprawdę dobrym pomysłem jest ograniczenie liczby zmiennych optymalizacyjnych do zaledwie kilku. Każde wywołanie optymalizacji pętli optymalizacji procesu generowania (maks. Min.) I wielokrotne wywoływanie optymalizacji zwiększa liczbę wymaganych cykli. Na przykład optymalizacja dwóch parametrów przy użyciu 10 kroków wymaga 1010 100 pętli optymalizacji. Funkcja optymalizacji połączeń tylko JEDNO na każdą zmienną na początku formuły, ponieważ każde połączenie generuje nowe pętle optymalizacji Optymalizacja wielu symboli jest w pełni obsługiwana przez AmiBroker Maksymalna przestrzeń wyszukiwania to 2 64 (10 19 10 000 000 000 000 000 000) kombinacji 1. Pojedyncza optymalizacja zmiennych: sigavg Optymalizacja (Średnia sygnału 9. 2. 20. 1) Kup krzyż (MACD (12. 26), sygnał (12. 26. sigavg)) Sprzedaj krzyż (sygnał (12. 26. sigavg), MACD (12. 26)) 2. Optymalizacja dwóch zmiennych (odpowiednia dla wykresów 3D) na Optymalizowanie (na 2. 2. 50. 1) Optymalizacja poziomu (poziom 2. 2. 150. 4) Kupuj krzyż (CCI (per), - Level) Sprzedaj Cross (poziom, CCI (per)) 3. Wielokrotna (3) optymalizacja zmiennych: mfast Optymalizuj (MACD Szybki 12. 12. 16. 1) mslow Optymalizuj (MACD zwolniony 26. 17. 30. 1) sigavg Optymalizuj (sygnał średnio 9. 2. 20. 1) Kupuj Cross (MACD (mfast, mslow) Signal (mfast, mslow, sigavg)) Sprzedaj Cross (Signal (mfast, mslow, sigavg), MACD (mfast, mslow)) Po wejściu f ormula po prostu kliknij przycisk Optymalizuj w oknie quotAutomatic Analysisquot. AmiBroker rozpocznie testowanie wszystkich możliwych kombinacji zmiennych optymalizacyjnych i zgłosi wyniki na liście. Po przeprowadzeniu optymalizacji lista wyników jest prezentowana według zysku netto. Ponieważ możesz posortować wyniki według dowolnej kolumny na liście wyników, łatwo jest uzyskać optymalne wartości parametrów dla najniższej wyprzedaży, najniższej liczby transakcji, największego współczynnika zysku, najniższej ekspozycji rynkowej i najwyższej rocznej stopy zwrotu skorygowanej o ryzyko. Ostatnie kolumny listy wyników przedstawiają wartości zmiennych optymalizacyjnych dla danego testu. Kiedy zdecydujesz, która kombinacja parametrów pasuje do twoich potrzeb, wszystko, co musisz zrobić, to zastąpić wartości domyślne optymalizacją wywołań funkcji z optymalnymi wartościami. Na obecnym etapie musisz wpisać je ręcznie w oknie edycji formuły (drugi parametr optymalizacji wywołania funkcji). Wyświetlanie animowanych wykresów 3D animacji Aby wyświetlić wykres optymalizacji 3D, należy najpierw przeprowadzić optymalizację dwóch zmiennych. Dwie zmienne optymalizacje wymagają formuły, która ma 2 wywołania funkcji Optimize (). Przykładowa optymalizacja dwóch zmiennych wygląda następująco: per Optimize (per 2. 2. 5. 50. 1) Level Optimize (poziom 2. 2. 150. 4) Kup Cross (CCI (per), - Level) Sell Cross (Poziom, CCI (per)) Po wprowadzeniu formuły należy kliknąć przycisk quotOptimizequot. Po zakończeniu optymalizacji kliknij strzałkę w dół na przycisku Optymalizuj i wybierz opcję Wyświetl wykres optymalizacji 3D. W ciągu kilku sekund kolorowy trójwymiarowy wykres powierzchni pojawi się w oknie przeglądarki 3D. Przykładowy wykres 3D wygenerowany za pomocą powyższej formuły pokazano poniżej. Domyślnie wykresy 3D pokazują wartości zysku netto względem zmiennych optymalizacyjnych. Można jednak wykreślić wykres powierzchniowy 3D dla dowolnej kolumny w tabeli wyników optymalizacji. Wystarczy kliknąć nagłówek kolumny, aby go posortować (pojawi się niebieska strzałka wskazująca, że ​​wyniki optymalizacji są sortowane według wybranej kolumny), a następnie ponownie wybrać opcję Wyświetl wykres optymalizacji 3D. Wizualizując, jak parametry systemów wpływają na wydajność handlu, można łatwiej zdecydować, które wartości parametrów wytwarzają quotfragilequot i które generują wysoką wydajność systemu. Solidne ustawienia to regiony na wykresie 3D, które wykazują stopniowe, a nie gwałtowne zmiany na wykresie powierzchni. Wykresy optymalizacji 3D są doskonałym narzędziem do zapobiegania dopasowywaniu krzywych. Dopasowanie do krzywej (lub nadmierna optymalizacja) występuje, gdy system jest bardziej złożony, niż powinien, i cała ta złożoność była skoncentrowana na warunkach rynkowych, które mogą się już nigdy nie powtórzyć. Radykalne zmiany (lub skoki) na wykresach optymalizacji 3D pokazują wyraźnie obszary nadmiernej optymalizacji. Powinieneś wybrać region parametrów, który tworzy szerokie i szerokie plateau na wykresie 3D dla twojego prawdziwego handlu. Zestawy parametrów generujące wzrost zysków nie będą działać w sposób wiarygodny w prawdziwym obrocie. Przeglądarka trójwymiarowej mapy AmiBrokers Przeglądarka trójwymiarowa oferuje całkowite możliwości oglądania z pełną rotacją wykresu i animacją. Teraz możesz zobaczyć wyniki swojego systemu z każdej możliwej perspektywy. Możesz kontrolować pozycję i inne parametry wykresu za pomocą myszy, paska narzędzi i skrótów klawiaturowych, niezależnie od tego, co jest dla Ciebie łatwiejsze. Poniżej znajdziesz listę. - Obrót - przytrzymaj lewy przycisk myszy i poruszaj się w kierunkach XY - aby powiększyć, pomniejszyć - przytrzymaj PRAWY przycisk myszy i poruszaj się w kierunkach XY - aby przesunąć (tłumaczyć) - przytrzymaj LEWY przycisk myszy i klawisz CTRL i poruszaj się w kierunkach XY - w celu animacji - przytrzymaj LEWY przycisk myszy, przeciągnij szybko i zwolnij przycisk podczas przeciągania SPACJA - animacja (automatyczne obracanie) LEWA KLUCZA STRZAŁKI - obróć vert. lewa STRZAŁKA W PRAWO - obracaj w pionie. prawe KLAWIATURA W GÓRĘ - obracaj w poziomie. UP DOWN ARROW KEY - obracaj w poziomie. w dół KLAWIATURA NUM (PLUS) - W pobliżu (powiększanie) KLAWIATURA NUM - (MINUS) - daleko (pomniejszanie) KLAWIATURA NUM 4 - przesuń w lewo KLAWIATURA NUM 6 - przesuń w prawo KLAWIATURA NUM 8 - przesuń w górę KLAWIATURA NUM 2 - przesuń w dół PAGE UP - poziom wody w górę PAGE DOWN - obniżenie poziomu wody Inteligentna (nie wyczerpująca) optymalizacja AmiBroker oferuje obecnie inteligentną (nie wyczerpującą) optymalizację, a także regularne, wyczerpujące wyszukiwanie. Niewyczerpujące wyszukiwanie jest przydatne, gdy liczba wszystkich kombinacji parametrów danego systemu transakcyjnego jest po prostu zbyt duża, aby była możliwa do wykonania w przypadku wyczerpujących poszukiwań. Wyczerpujące wyszukiwanie jest całkowicie w porządku, o ile uzasadnione jest jego użycie. Powiedzmy, że masz 2 parametry, każdy od 1 do 100 (krok 1). To jest 10000 kombinacji - doskonale nadaje się do wyczerpujących poszukiwań. Teraz z trzema parametrami masz 1 milion kombinacji - nadal jest OK dla wyczerpujących poszukiwań (ale może być długotrwały). Dzięki 4 parametrom masz 100 milionów kombinacji i 5 parametrów (1..100) masz 10 miliardów kombinacji. W takim przypadku sprawdzanie ich wszystkich byłoby zbyt czasochłonne i jest to obszar, w którym niewyczerpujące metody inteligentnego wyszukiwania mogą rozwiązać problem, który nie może zostać rozwiązany w rozsądnym czasie przy użyciu wyczerpujących poszukiwań. Oto absolutnie instrukcja SIMPLEST, jak korzystać z nowego niewyczerpującego optymalizatora (w tym przypadku CMA-ES). 1. Otwórz formułę w Edytorze formuł 2. Dodaj tę pojedynczą linię u góry swojej formuły: OptimizerSetEngine (quotcmaequot) możesz również użyć quotspsoquot lub quottribquot tutaj 3. (Opcjonalnie) Wybierz cel optymalizacji w Automatycznej analizie, Ustawieniach, quotWalk - Forwardquot tab, pole cel optymalizacji. Jeśli pominiesz ten krok, zoptymalizujesz dla CARMDD (złożona roczna stopa zwrotu podzielona przez maksymalną wartość wypłaty). Teraz, jeśli uruchomisz optymalizację przy użyciu tej formuły, użyje ona nowego ewolucyjnego (niewyczerpującego) optymalizatora CMA-ES. Jak to działa Optymalizacja to proces znajdowania minimum (lub maksimum) danej funkcji. Każdy system transakcyjny może być traktowany jako funkcja pewnej liczby argumentów. Dane wejściowe są parametrami i danymi ofertowymi. wynik to twój cel optymalizacji (powiedzmy CARMDD). I szukasz maksimum danej funkcji. Niektóre z inteligentnych algorytmów optymalizacyjnych opierają się na naturze (zachowanie zwierząt) - algorytmie PSO lub procesie biologicznym - algorytmy genetyczne, a niektóre oparte są na pojęciach matematycznych opracowanych przez ludzi - CMA-ES. Algorytmy te są wykorzystywane w wielu różnych obszarach, w tym w finansach. Wpisz quotPSFO financequot lub quotCMS-ES financequot w Google, a znajdziesz wiele informacji. Niewyczerpujące (lub quotsmartquot) metody znajdą optimum globalne lub lokalne. Celem jest oczywiście znalezienie globalnego, ale jeśli istnieje jeden ostry szczyt z kombinacji parametrów zilionów, nie wyczerpujące metody mogą nie znaleźć tego pojedynczego szczytu, ale biorąc go z perspektywy handlowców, znalezienie pojedynczego ostrego szczytu jest bezużyteczne dla handlującego, ponieważ ten wynik byłby niestabilny (zbyt delikatny) i niemożliwy do powielenia w rzeczywistym obrocie. W procesie optymalizacji szukamy raczej regionów płaskowyżu o stabilnych parametrach i jest to obszar, w którym inteligentne metody świecą. W odniesieniu do algorytmu stosowanego do wyszukiwania niewyczerpującego wygląda on następująco: a) optymalizator generuje pewną (zazwyczaj losową) początkową populację zestawów parametrów, b) test wsteczny jest wykonywany przez AmiBroker dla każdego zestawu parametrów z populacji c) wyniki backtests są oceniana zgodnie z logiką algorytmu, a nowa populacja jest generowana w oparciu o ewolucję wyników, d) jeśli zostanie znaleziony nowy najlepszy - zapisz go i przejdź do etapu b) aż do spełnienia kryteriów stopu Przykładowe kryteria stopu mogą obejmować: a) osiągnięcie określonego maksymalne iteracje b) zatrzymaj się, jeśli zakres najlepszych obiektywnych wartości ostatnich X generacji wynosi zero c) zatrzymaj się, jeśli dodanie 0,1 standardowego wektora odchylenia w jakimkolwiek kierunku głównej osi nie zmienia wartości obiektywnej wartości d) inne Aby użyć dowolnego inteligentnego (nie wyczerpujący) optymalizator w AmiBroker, musisz określić silnik optymalizujący, którego chcesz użyć w formule AFL za pomocą funkcji OptimizerSetEngine. Funkcja wybiera zewnętrzny silnik optymalizacji określony przez nazwę. AmiBroker jest obecnie dostarczany z 3 silnikami: Standard Particle Swarm Optimizer (quotspsoquot), Tribes (quottribquot) i CMA-ES (quotcmaequot) - nazwy w nawiasach używane są w wywołaniach OptimizerSetEngine. Oprócz wyboru silnika optymalizatora możesz chcieć ustawić niektóre jego wewnętrzne parametry. Aby to zrobić, użyj funkcji OptimizerSetOption. Funkcja OptimizerSetOption (quotnamequot, value) Funkcja ustawiała dodatkowe parametry dla zewnętrznego silnika optymalizacyjnego. Parametry zależą od silnika. Wszystkie trzy optymalizatory dostarczane z AmiBroker (SPSO, Trib, CMAE) obsługują dwa parametry: quotRunsquot (liczba przebiegów) i quotMaxEvalquot (maksymalne oceny (testy) na pojedynczy przebieg). Zachowanie każdego parametru zależy od silnika, więc te same wartości mogą i zwykle przynoszą różne wyniki przy użyciu różnych silników. Różnica między Runami i MaxEval jest następująca. Ocena (lub test) to pojedyncza analiza historyczna (lub ocena wartości funkcji celu). RUN to jeden pełny przebieg algorytmu (znalezienie optymalnej wartości) - zwykle obejmujący wiele testów (ocen). Każdy bieg po prostu URUCHOMI się cały proces optymalizacji od nowego początku (nowa początkowa losowa populacja). Dlatego każdy przebieg może prowadzić do znalezienia innej lokalnej maksima (jeśli nie znajdzie globalnego). Parametr Runs określa liczbę kolejnych przebiegów algorytmu. MaxEval to maksymalna liczba ocen (bactests) w dowolnym pojedynczym przebiegu. Jeśli problem jest stosunkowo prosty i 1000 testów wystarczy, aby znaleźć globalne maksimum, 5x1000 jest bardziej prawdopodobne, aby znaleźć globalne maksimum, ponieważ istnieje mniejsze prawdopodobieństwo utknięcia w lokalnym maksimum, ponieważ kolejne uruchomienia będą rozpoczynać się od różnej początkowej losowej populacji. Wybór wartości parametrów może być trudne. Zależy to od testowanego problemu, jego złożoności itp. Każda stochastyczna, niewyczerpująca metoda nie daje gwarancji znalezienia globalnej wartości maksymalnej, niezależnie od liczby testów, jeśli jest ona mniejsza niż wyczerpująca. Najłatwiejszą odpowiedzią jest. określić tak dużą liczbę testów, jaka jest dla ciebie uzasadniona pod względem czasu wymaganego do ukończenia. Inną prostą radą jest pomnożenie przez 10 liczby testów z dodaniem nowego wymiaru. To może prowadzić do przeszacowania liczby wymaganych badań, ale jest dość bezpieczne. Dostarczone silniki są zaprojektowane tak, aby były proste w użyciu, dlatego też użytych jest kilka użytecznych wartości domyślnych, dlatego optymalizacja może być zwykle uruchamiana bez określania czegokolwiek (akceptowanie wartości domyślnych). Ważne jest, aby zrozumieć, że wszystkie inteligentne metody optymalizacji działają najlepiej w ciągłych przestrzeniach parametrów i stosunkowo gładkich funkcjach celu. Jeśli przestrzeń parametru jest dyskretnym algorytmem ewolucyjnym, może mieć problem ze znalezieniem optymalnej wartości. Jest to szczególnie prawdziwe w przypadku parametrów binarnych (onoff) - nie są one dostosowane do żadnej metody wyszukiwania wykorzystującej gradient zmiany funkcji celu (jak czyni to większość inteligentnych metod). Jeśli twój system transakcyjny zawiera wiele parametrów binarnych, nie powinieneś używać inteligentnego optymalizatora bezpośrednio na nich. Zamiast tego spróbuj zoptymalizować tylko ciągłe parametry za pomocą inteligentnego optymalizatora i przełącz parametry binarne ręcznie lub za pomocą zewnętrznego skryptu. SPSO - Standard Particle Swarm Optimizer Standardowy Optimizer Partial Swarm opiera się na kodzie SPSO2007, który powinien dawać dobre wyniki, pod warunkiem, że dla określonego problemu zapewnione są poprawne parametry (to znaczy Runs, MaxEval). Zbieranie poprawnych opcji optymalizatora PSO może być trudne, dlatego wyniki mogą znacznie różnić się w poszczególnych przypadkach. SPSO. dll zawiera pełne kody źródłowe w podfolderze quotADKquot. Przykładowy kod dla Standard Particle Swarm Optimizer: (znalezienie optymalnej wartości w 1000 testów w przestrzeni wyszukiwania 10000 kombinacji) OptimizerSetEngine (quotspsoquot) OptimizerSetOption (quotRunsquot, 1) OptimizerSetOption (quotMaxEvalquot, 1000) sl Optimize (quotsquot, 26, 1, 100, 1 ) fa Optymalizuj (quotququot, 12, 1, 100, 1) Kupuj Cross (MACD (fa, sl), 0) Sprzedaj Cross (0, MACD (fa, sl)) TRIBES - Adaptacyjny bez parametrów , bez parametrowej wersji PSO (optymalizacja roju cząstek) niewyczerpujący optymalizator. Dla zaplecza naukowego patrz: particleswarm. infoTribes2006Cooren. pdf Teoretycznie powinno działać lepiej niż zwykłe PSO, ponieważ może automatycznie dostosować rozmiary roju i strategię algorytmu do rozwiązania problemu. Praktyka pokazuje, że jej działanie jest podobne do PSO. Wtyczka Tribes. DLL implementuje wariant "Tribes-Dquot" (tzn. Bezwymiarowy). Na podstawie clerc. maurice. free. frpsoTribesTRIBES-D. zip autorstwa Maurice Clerc. Oryginalne kody źródłowe używane za zgodą autora Tribes. DLL pochodzą z pełnego kodu źródłowego (wewnątrz folderu quotADKquot) Obsługiwane parametry: quotMaxEvalquot - maksymalna liczba ocen (backtests) na przebieg (domyślnie 1000). Powinieneś zwiększyć liczbę ocen wraz z rosnącą liczbą wymiarów (liczba parametrów optymalizacji). Wartość domyślna 1000 jest dobra dla 2 lub maksymalnie 3 wymiarów. quotRunsquot - liczba uruchomień (restartów). (domyślnie 5) Możesz zostawić liczbę uruchomień przy domyślnej wartości 5. Domyślnie liczba uruchomień (lub ponownych uruchomień) jest ustawiona na 5. Aby użyć optymalizatora Tribes, wystarczy dodać jeden wiersz do kodu: OptimizerSetOption (quotMaxEvalquot , 5000) 5000 ocen maks. CMA-ES - Adaptacja macierzy kowariancji Optymalizator strategii ewolucyjnej CMA-ES (Zaawansowana strategia adaptacji macierzy kowariancji) to zaawansowany, niewyczerpujący optymalizator. Jeśli chodzi o podstawy naukowe, patrz: bionik. tu-berlin. deusernikocmaesintro. html Według naukowych punktów odniesienia wyniki są lepsze od dziewięciu innych, najpopularniejszych strategii ewolucyjnych (takich jak PSO, ewolucja genetyczna i różnicowa). bionik. tu-berlin. deusernikocec2005.html Wtyczka CMAE. DLL zaimplementowała wariant wyszukiwania przydziału quotGlobalquot z kilkoma restartami ze zwiększającym się rozmiarem populacji CMAE. DLL pochodzi z pełnym kodem źródłowym (wewnątrz folderu quotADKquot) Domyślnie ustawiona jest liczba uruchomień (lub restartów) do 5. Zaleca się pozostawienie domyślnej liczby ponownych uruchomień. Możesz go zmienić za pomocą wywołania OptimizerSetOption (quotRunsquot, N), gdzie N powinno znajdować się w zakresie 1..10. Określanie więcej niż 10 uruchomień nie jest zalecane, chociaż możliwe. Zauważ, że każdy bieg używa DWUKROTNIE wielkości populacji z poprzedniego przebiegu, więc rośnie wykładniczo. Dlatego przy 10 biegach otrzymujesz 210 razy więcej (1024 razy) niż pierwszy bieg. Jest jeszcze jeden parametr quotMaxEvalquot. Wartością domyślną jest ZERO, co oznacza, że ​​wtyczka automatycznie obliczy wymagany MaxEval. Zaleca się NIE definiować MaxEval samodzielnie, ponieważ domyślnie działa dobrze. Algorytm jest wystarczająco inteligentny, aby zminimalizować liczbę wymaganych ewaluacji i bardzo szybko zbiega się do punktu rozwiązania, dlatego często znajduje rozwiązania szybciej niż inne strategie. To normalne, że wtyczka pominie niektóre kroki oceny, jeśli wykryje, że to rozwiązanie zostało znalezione, dlatego nie powinno być zaskoczeniem, że pasek postępu optymalizacji może poruszać się bardzo szybko w niektórych punktach. Wtyczka ma również możliwość zwiększenia liczby kroków w stosunku do początkowo oszacowanej wartości, jeśli jest potrzebna do znalezienia rozwiązania. Ze względu na swój charakter adaptacyjny, wartość czasu wyrażona w cudzysłowie i liczba kroków, które są wyświetlane w oknie dialogowym postępu, jest tylko przy zgadywaniu według czasu i może się różnić podczas kursu optymalizacji. Aby korzystać z optymalizatora CMA-ES, wystarczy dodać jeden wiersz do kodu: To uruchomi optymalizację z domyślnymi ustawieniami, które są odpowiednie dla większości przypadków. Należy zauważyć, podobnie jak w przypadku wielu algorytmów wyszukiwania przestrzeni kosmicznej, że zmniejszenie parametru quotepepot w wywołaniach funkcji Optimize () nie ma znaczącego wpływu na czasy optymalizacji. Liczy się jedynie problem dziesięciokrotnie, tj. Liczba różnych parametrów (liczba optymalizacji wywołań funkcji). Liczbę kilkukrotnych wartości dla każdego parametru można ustawić bez wpływu na czas optymalizacji, dlatego należy wybrać najlepszą rozdzielczość. Teoretycznie algorytm powinien być w stanie znaleźć rozwiązanie w co najwyżej 900 (N3) (N3) testach historycznych, gdzie quotWartość jest wymiarem. W praktyce jest to szybsze połączenie LOTU. Na przykład rozwiązanie w 3 (N3) przestrzeni parametrów wymiarowych (powiedzmy 100100100 1 milion wyczerpujących kroków) można znaleźć w zaledwie 500-900 kroków CMA-ES. Wielowątkowa optymalizacja indywidualna Począwszy od AmiBroker 5.70 oprócz wielowątkowości wielowątkowej. możesz przeprowadzić wielowątkową optymalizację pojedynczego symbolu. Aby uzyskać dostęp do tej funkcji, kliknij strzałkę rozwijania obok przycisku quotOptymizequot w oknie Nowa analiza i wybierz opcję Indywidualnie optymalizuj quot. quotIndywidualny Optimizequot użyje wszystkich dostępnych rdzeni procesorów do przeprowadzenia optymalizacji pojedynczego symbolu, co znacznie przyspieszy normalną optymalizację. W trybie symbolicznym QuotCurrent wykona optymalizację na jednym symbolu. W trybach quotallquot i quotilquotquot przetwarza kolejno wszystkie symbole, tj. Pierwsza pełna optymalizacja pierwszego symbolu, następnie optymalizacja drugiego symbolu itd. Ograniczenia: 1. Niestandardowy backtester NIE jest obsługiwany (jeszcze) 2. Inteligentne silniki optymalizacji NIE są obsługiwane - działa tylko optymalizacja EXHAUSTIVE. Ostatecznie możemy pozbyć się ograniczeń (1) - kiedy AmiBroker zostanie zmieniony, niestandardowy backtester nie będzie już używać OLE. Ale (2) jest tu prawdopodobnie na długo. O firmie AmiBroker dla AmiBroker jest pakiet oprogramowania innej firmy, który zapewnia pełną programowalność dla AmiBroker. NET for AmiBroker obejmuje wszystkie programowalne funkcje AmiBroker: interfejsy plug-in, wbudowane funkcje AFL, obiekty backtestera, interfejs OLE, IBController. Dostęp do wszystkich programowalnych funkcji AmiBroker można uzyskać z kodu przy użyciu dowolnego języka. Wskaźniki, filtry, skanery, eksploracje, niestandardowe moduły typu backtester, systemy handlu automatycznego i czasu rzeczywistego, wtyczki optymalizatora i źródła danych, programy automatyzacji OLE lub ładowanie danych itp. Mogą być opracowane w C, VB, VC, F lub dowolnym język. dla AmiBroker dla programistów systemów transakcyjnych Rozbuduj lub zamień swoje AFL na rozwój kodu AFL, który kiedyś był wyzwaniem, nawet doświadczonym programistom CC można teraz wykonać w dowolnym języku bardzo łatwo i szybko. Wtyczki NET mogą rozszerzyć lub całkowicie zastąpić skrypty AFL. Pliki AFL mogą być łatwo konwertowane na wtyczkę AFL. Wskaźniki AFL, skanery, eksploracje, moduły backtestera, moduły handlu w czasie rzeczywistym itp. Można tworzyć w czystej postaci lub w mieszance AFL i. Kod NET może po prostu uzyskać dostęp do wszystkich wbudowanych metod AFL i obiektów interfejsu backtestera. Wtyczki źródła danych mogą być również rozwijane w dowolnym języku. Korzystanie z interfejsu danych jest znacznie prostsze niż oryginalny interfejs CC. Nadal zapewniają pełną funkcjonalność oryginalnego interfejsu i upraszczają integrację źródeł danych off-line i strumieniowych. Handel w czasie rzeczywistym z wykorzystaniem interfejsu transakcyjnego IBController NET dla AmiBroker zapewnia łatwą integrację wskaźników AFL, logiki transakcyjnej w kodzie obiektowym i interfejsu Auto-Trading AmiBroker dla Interactive Brokers. Zarządzany interfejs IBController i wtyczki zapewniają nowe, łatwiejsze, bardziej niezawodne i łatwe w zarządzaniu sposoby tworzenia systemów handlu w czasie rzeczywistym. Zintegruj AmiBroker ze swoim niestandardowym procesem handlowym NET dla AmiBroker'a również ułatwia integrację wszystkich rodzajów aplikacji w AmiBroker. Korzystanie sprawia, że ​​integracja aplikacji z interfejsami COM (takimi jak Excel, Access, Word, R, SciLab, MatLab itp.) Jest prostym zadaniem. Istnieją również nieograniczone możliwości integracji przy użyciu biblioteki klas. Na przykład. Wtyczki NET mogą wysyłać niestandardowe wiadomości e-mail, wysyłać wiadomości SMS, wywoływać usługi sieciowe, uzyskiwać dostęp do plików, komunikować się z zewnętrznym systemem zarządzania transakcjami przez sieć, a nawet otrzymywać zdarzenie z zewnętrznego systemu. Przyspieszenie rozwoju przy użyciu klas i krok po kroku debugowania NET dla AmiBroker znacznie skraca czas programowania i oszczędza mnóstwo czasu. Debugowanie krok po kroku pomaga w debugowaniu i naprawianiu błędów. Celem projektu było sprawienie, aby AmiBroker był łatwy w użyciu i nadal wydajny. Wtyczki NET nie wymagają kodu instalacyjnego, takiego jak wtyczki CC. Programiści mogą pisać kod tak szybko, jak pisząc kod AFL lub konwertując swój kod AFL niemal liniowo po linii C. Twórcy skryptów VB i VB mogą pisać wtyczki po prostu w VB. Biblioteka ParallelAB pomaga efektywnie korzystać z całego sprzętu w celu przeprowadzenia szerokiej optymalizacji, poszukiwania i skanowania. Pozwala łatwo tworzyć kod automatyzacji, który może sterować wieloma procesami AmiBroker w celu wykonywania różnych zadań przy użyciu różnych baz danych nawet na rozproszonym sprzęcie. dla AmiBroker dla licencjodawców systemu transakcyjnego NET for AmiBroker jest prostym rozwiązaniem dla programistów systemu handlu czarnymi skrzynkami do ochrony, licencjonowania i sprzedawania swoich systemów. Skrypty AFL można łatwo i szybko konwertować do wtyczek, nie pozostawiając logiki giełdowej w plikach AFL. Wtyczki NET mogą być chronione i licencjonowane za pomocą komercyjnych narzędzi ochrony, takich jak IntelliLock. Licencjonowanie CliSecure. Licencjonowanie Pro. itp. Chronione wtyczki mogą być upubliczniane. Tylko klienci, którym udzielono licencji na swoje maszyny, mogą korzystać z chronionych wtyczek. dla AmiBroker dla dostawców usług danych NET for AmiBroker jest prostym rozwiązaniem dla deweloperów systemów handlu czarnymi skrzynkami do ochrony, licencjonowania i sprzedawania swoich systemów. Skrypty AFL można łatwo i szybko konwertować do wtyczek, nie pozostawiając logiki giełdowej w plikach AFL. Wtyczki NET mogą być chronione i licencjonowane za pomocą komercyjnych narzędzi ochrony, takich jak IntelliLock. Licencjonowanie CliSecure. Licencjonowanie Pro. itp. Chronione wtyczki mogą być upubliczniane. Tylko klienci, którzy otrzymali licencję na swoje maszyny, mogą korzystać z chronionych wtyczek. StockManiacs. w E-mail: helpdeskstockmaniacs, Office: 91-33-65482883, 91-33-30754827, Mobile: 91-9674321856 StockManiacs Trading System for Amibroker - Idealny dla początkujących System StockManiacs Trading For Amibroker to system handlu wskaźnikami, który wykorzystuje precyzyjny algorytm handlu, aby zapewnić precyzyjne punkty wejścia i wyjścia. Został zaprojektowany dla Amibroker, wiodącej, szeroko dostępnej platformy do tworzenia wykresów. Za pomocą tego systemu można handlować wszystkimi głównymi akcjami, indeksami i towarami. Jest to jeden z najlepszych systemów transakcyjnych typu kupuj, jeden z najlepszych systemów transakcyjnych Nifty i jeden z najlepszych systemów obrotu towarami na rynku Amibroker. Jak to działa System transakcyjny składa się z czterech linii wyzwalających transakcję, ze strzałką informującą, kiedy kupić i kiedy sprzedać. Prostota sama w sobie - zielony kup i czerwony sprzedaj. Trzy filtry trendów potwierdzają siłę trendu i utrzymują inwestorów na linii bocznej na wzburzonym rynku bocznym. W ciągu ostatnich 3 lat okazało się, że jest bardzo dokładny, zwłaszcza w połączeniu z najlepszymi ramami czasowymi, indeksami, zasobami i porami dnia. Chociaż jest to dokładne dla prawie każdej z tych trzech zmiennych, dla optymalnej efektywności najlepiej jest ściśle przestrzegać instrukcji. Nie każdy handel jest zwycięzcą, ale historycznie straty były znacznie mniejsze niż zyski. Zawiera StockManiacs Trading System i StockManiacs Trading System Lite. Wersja Lite działa nawet z Amibroker 5.00. Przykład wykresu - Przyzwoita przyszłość W poniższej tabeli zobaczysz, że te 3 transakcje na Nifty future stanowią łączny zysk powyżej 175 punktów. Nie każda transakcja jest taka, każda transakcja jest unikalna w handlu systemowym. Sprawdź obraz poniżej (kliknij obraz, aby powiększyć widok). The StockManiacs Trading System Advantage: Semi mechaniczny system, bez zgadywania. Działa na wszystkich niższych i wyższych ramach czasowych - nadaje się do codziennych transakcji, a także do obrotu wahadłowego. Zawiera StockManiacs Trading System i StockManiacs Trading System Lite. Wersja Lite działa nawet z Amibroker 5.00. PEŁNY KOMENTARZ NA EKRANIE. Tendencje dotyczące trendów lub bocznego rynku na ekranie. VV IMP: WPROWADZENIE SYGNAŁÓW REZERWACJI ZYSKÓW. Zamknij pozycje na koniec dnia dla handlowców na dzień. Poprawiona obsługa i odporność, automatyczne poziomy SR. Ludzki sygnał głosowy, nowy dodatek. Wyznaczanie pasm, poziomów crossover i fibonacci opcjonalnie w parametrach. Działa we wszystkich ramach czasowych, więc nadaje się do handlu śróddziennego, obrotu pozycyjnego oraz inwestycji. Filtry trendów są oparte na podejściu wielostronnym, dbają o trend w wyższych ramach czasowych. Filtry trendów będą próbowały ratować handlowców na whipsawach na bocznych rynkach. Ważniejsze jest wiedzieć, kiedy nie handlujemy, niż kiedy handlować - to korzystanie z Trend Filters. Filtry trendów teraz System handlu StockManiacs dla Amibroker jest dostarczany z naszymi zastrzeżonymi filtrami trendów z łatwością oceniania sygnałów silnych i słabych. Sprawdź obraz poniżej (kliknij obraz, aby powiększyć widok). Cennik: System transakcyjny - 2 dni Licencja próbna: Rs. 500 (US 10) DARMOWY system transakcyjny - 3 miesiące Licencja: Rs. 4 200 (US 80) System handlu - 6 miesięcy Licencja: Rs. 6,300 (US 120) System transakcyjny - 1 rok Licencja: Rs. 10 500 (US 200) System transakcyjny - Licencja na życie: Rs. 15,750 (US 300) Kupowanie systemu StockManiacs dla Amibroker zadzwoń do nas teraz. Cechy: Dostawa: Do pobrania. Nie jest to system handlu oparty na otwartym kodzie źródłowym, a jedna licencja jest przypisana do jednego komputera PC, więc proszę nie prosić o kod źródłowy lub dostęp do wielu komputerów. Płatne dane na żywo: bieżące dane NSE dotyczące śróddziennej aktywności w Amibroker przy współpracy z GlobalDataFeeds lub RTDProvider. Aktualizacje: Bezpłatne aktualizacje systemów transakcyjnych do serwisu. Instalacja: Pierwsza pomoc przy instalacji za pomocą zdalnego narzędzia Desktop ShowMyPc lub Team Viewer lub Ammy Admin. kompletne przewodniki i filmy. Pełna obsługa poczty e-mail do momentu wykupienia subskrypcji. Przyszłe instalacje lub ponowna instalacja lub pomoc zdalna będą płatne na zasadzie pro rata i wszelkich dalszych zaawansowanych szkoleń w Rs. 1000 na godzinę. Pobierz wersję próbną Jak złożyć wniosek o próbę StockManiacs Trading System Dla Amibroker dostępna jest 2-dniowa bezpłatna wersja próbna. Pamiętaj, że ten system transakcyjny działa tylko wtedy, gdy masz zainstalowany Amibroker w twoim systemie. Więc jeśli nie masz Amibrokera ani danych na żywo, pobierz najpierw Amibroker i Yahoo Data Feeder, aby zobaczyć wersję próbną na SP CNX Nifty spot. Pamiętaj, że test Amibroker 5.40 wygaśnie po 30 dniach, a zobaczysz pełną funkcjonalność Systemu Handlowego StockManiacs w Amibroker 5.40. Wersja StockManiacs Trading System Lite będzie działać z nigdy nie kończącą się wersją testową Amibroker 5.00. Wybierz więc odpowiednio wersję Amibrokera. Zapoznaj się z pomocą Yahoo Data Feeder, aby połączyć dane z programem Amibroker. Następnie pobierz Podręcznik instalacji i użytkowania programu TradingManiacs, przeczytaj odpowiednie instrukcje dotyczące instalacji i użytkowania oraz Prześlij nam swoją nazwę rejestracji. Identyfikator sprzętowy i nazwa systemu transakcyjnego (np. System handlowy StockManiacs), aby pomóc programistom maniakom w aktywacji procesu. Osoby starające się o próbę powinny dokładnie opisać swoją obecną konfigurację, np. Czy potrzebują Amibrokera i wersji próbnej danych, czy tylko potrzebują wersji próbnej systemów transakcyjnych (dla obecnych właścicieli Amibrokera). Osoby ubiegające się o wizę muszą również podać swoje pełne imię i nazwisko oraz dane kontaktowe do poczty z numerami telefonów komórkowych. Żądanie próby bez wymaganych szczegółów zostanie zignorowane. Jak zapłacić przelew elektroniczny na rachunek bankowy (VV Imp: wpłaty gotówkowe zostaną zignorowane): Nazwa konta: STOCKMANIACS RESEARCH amp SYSTEMS PVT LTD Bank: ICICI Oddział banku: Oddział w Kalyani Bieżący numer Ac: 042105003099 Kod IFSC - ICIC0000421 Kod SWIFT: icicinbbcts Kod oddziału: 0421 Kod MICR: 700229036. Płatność online za pośrednictwem kart kredytowych NRI lub cudzoziemców, aby płacić kartami kredytowymi, otworzyć konto w systemie Paypal i potwierdzić swoją kartę kredytową. Użyj opcji Wyślij płatność i wyślij odpowiednią kwotę w dolarach do naszego adresu mailowego stockmaniacsymail.

No comments:

Post a Comment