testowanie koncepcji transakcyjnych


Testowanie koncepcji transakcyjnych

___________________________________________________________________________

Co to jest system testujący?

System testujący związany jest z ulepszaniem i sprawdzaniem systemów transakcyjnych w celu ustalenia zysku na podstawie danych historycznych. System testujący pomaga w uzyskaniu odpowiedzi na pytanie, „Jeśli przeprowadzałbym transakcje na tym papierze wartościowym, stosując takie reguły transakcyjne, to jaki miałbym zysk lub stratę?”.

Programu MetaStock możesz użyć do:

Przed rozpoczęciem tworzenia własnych systemów transakcyjnych, jest bardzo ważne, abyś przeczytał podrozdział System Tutorial, który rozpoczyna się na poniższych stronach.

Z powodu naturalnej komplikacji przy projektowaniu i tworzeniu wskaźników, systemów transakcyjnych, eksploracji i porad eksperta, Equis nie udziela bezpłatnej pomocy w tych przypadkach. Jednakże, pomoc techniczna jest dostępna za niewielką opłatą. Dzwoń do Equis pod numer 801-265-9998 po szczegóły lub wypełnij formularz FORMULA HELP.DOC znajdujący się w folderze MetaStock. Plik ten można obejrzeć za pomocą Wordpad.

Reguły systemu transakcyjnego wykorzystują tę samą składnię co wskaźniki. Jeśli niezbyt dokładnie zapoznałeś się z językiem MetaStocka, patrz str. 257.

Gdy ulepszasz system transakcyjny pamiętaj proszę, że analiza techniczna jest narzędziem dynamicznym (może sztuką) i jako taka, nie jest mechanicznym systemem bez skazy. Nie pozwól sobie wpaść w pułapkę „przesterowania” twojego systemu do ściśle określonych danych liczbowych. Uwagi o ulepszaniu systemów, znajdziesz na str. 398.

Informacje o programie Equis Solution Provider oraz MetaStock Developer's Kit, znajdziesz pod adresem www.equis.com.

___________________________________________________________________________

Opis systemu testującego

Ten krótki opis przedstawia kilka określeń i pojęć, odnoszących się do systemów testujących. Przed tworzeniem swoich własnych wskaźników, jest bardzo ważne, byś przeczytał ten opis. Powinieneś także dokładnie zapoznać się z językiem MetaStocka (patrz str. 257) i wskaźnikami (patrz str. 325).

Szybkie uruchamianie (podstawy)

System testujący rozwija się za pomocą poniższych kroków podstawowych. Są one wyjaśnione szczegółowo w tym opisie (nie próbuj wykonać ich teraz).

Krok 1

Utwórz system transakcyjny za pomocą określonych reguł (warunków), które muszą określać otwarcie/zamknięcie długiej i krótkiej pozycji.

Krok 2

Zaznacz stop (nieobowiązująco) w obrębie systemu transakcyjnego, który będzie automatycznie zamykać pozycję na podstawie zysku/straty z pozycji.

Krok 3

Przetestuj system transakcyjny. Podczas testowania, system może zajmować długą/krótką pozycję lub być poza rynkiem. Gdy system jest poza rynkiem, chroni zdobyty zysk. Program MetaStock wykorzystuje reguły transakcyjne i zamyka pozycję stosownie do określonego przez ciebie zysku/straty z aktualnej pozycji. Gdy system otworzył pozycję, to znaczy, że jest to zgodne z regułami, które ustaliłeś.

Krok 4

Zapoznaj się z wynikami testu. Podczas testowania, program MetaStock przechowuje wszystkie informacje odnoszące się do zawartych transakcji. Możesz je wyświetlić i sprawdzić wszystkie transakcje generowane przez twój system.

Krok 5

Dokonaj optymalizacji twoich parametrów (opcjonalnie). Optymalizacja pomoże w dobraniu najlepszych parametrów twojego systemu transakcyjnego.

Możesz wyświetlić wartość swojego kapitału jako wskaźnik na wykresie. Możesz także wyświetlić strzałki kupna/sprzedaży na wykresie. Możesz również porównać odmienne systemy transakcyjne, by znaleźć ten, który jest najlepszy dla danego papieru wartościowego (patrz str. 374).

Wszystkie szczegóły dotyczące systemu transakcyjnego, testów i raportów można wydrukować lub zapisać na dyskietce.

Okienko dialogowe System Tester

  1. Przed zapoznaniem się z dalszą częścią rozdziału, otwórz wykres zawierający dane co najmniej 200 okresów czasowych dla papieru wartościowego, który chcesz przetestować. System testujący przeprowadza obliczenia na podstawie aktualnego wykresu papieru wartościowego.

  2. Wybierz System Tester z menu Tools lub kliknij na przycisku System Tester w pasku narzędzi. Systemy testujące, które ukażą się w twoim okienku dialogowym, mogą być inne niż pokazane poniżej.

0x08 graphic

0x08 graphic

Okienko dialogowe System Tester pozwala na tworzenie, testowanie, porównywanie, drukowanie i raportowanie systemów testujących.

Tworzenie nowego systemu testującego

  1. W wyświetlonym okienku dialogowym System Tester, kliknij przycisk New.

0x08 graphic

Okienko dialogowe System Editor posiada pola do wpisywania nazwy systemu, uwag i reguł. Otwarcie/zamknięcie długiej/krótkiej pozycji definiują cztery reguły.

  1. Wprowadź nazwę systemu, np. „My First System” (nie używaj cudzysłowu w tym i następnych przykładach).

  2. Kliknij przycisk Enter Long i wprowadź poniższą regułę transakcyjną dla otwarcia długiej pozycji.

cross(close,mov(close,25,simple))

0x08 graphic

Powyższą regułę, która jest najczęstszą regułą transakcyjną w programie MetaStock, można przeczytać jako „Otwórz długą pozycję, gdy cena zamknięcia przetnie od dołu 25-okresową prostą średnią ruchomą cen zamknięcia”. (Podobnie jak we wskaźnikach, możesz użyć skrótów, tj. zamiast „close” i „simple” można użyć „c” i „s”).

Reguły transakcyjne (patrz str. 361) są bardzo podobne do wskaźników (patrz str. 325).

  1. Wprowadź poniższe informacje dla trzech pozostałych reguł transakcyjnych. Pamiętaj o kliknięciu odpowiednich przycisków (tj. Close Long, Enter Short i Close Short) przed wprowadzeniem każdej z tych reguł.

Close Long: cross(mov(close,25,simple),close)

Enter Short: cross(mov(close,25,simple),close)

Close Short: cross(close,mov(close,25,simple))

  1. Gdy wprowadziłeś dokładnie cztery reguły transakcyjne, kliknij przycisk OK.

Jeśli w twoich regułach transakcyjnych będzie zła składnia, to wyświetli się komunikat wyjaśniający na czym polega błąd. Kliknij przycisk OK oznaczający, że zapoznałeś się z komunikatem. System Editor umieści kursor w miejscu, w którym występuje błąd. Powinieneś poprawić błąd i ponownie nacisnąć OK.

Testowanie systemu

Gdy ponownie ukaże się okienko dialogowe System Tester (oraz „My First System” będzie nadal podświetlony), kliknij przycisk Test aby rozpocząć testowanie.

Czas przeprowadzania testu zależy ilości załadowanych danych oraz wydajności komputera.

Wyświetlanie raportu

  1. Gdy wyświetli się wiadomość „System Test Completed”, kliknij przycisk Reports. Ukaże się okienko Summary Report.

0x08 graphic

Raport pokazuje sumaryczny wynik testu. Jeśli przeprowadziłeś optymalizację dotyczącą kilku testów, każdy z tych testów będzie wyszczególniony w tym raporcie.

  1. Kliknij przycisk Reports aby wyświetlić okienko dialogowe System Report.

0x08 graphic

W okienku dialogowym System Report są dostępne trzy raporty, umieszczone na stronach Results, Trades i Equity. Strona Results (patrz str. 384) pokazuje niepowodzenia w zwiększaniu zysku, straty i transakcje zawarte przez system jako całość. Strona Trades (patrz str. 390) pokazuje szczegóły każdej transakcji zawartej przez system. Strona Equity (patrz str. 392) pokazuje dzień po dniu rozliczenie z zawartych transakcji.

  1. Gdy skończyłeś przeglądanie raportów, zwróć uwagę na nowe okienko wewnętrzne otwarte na wykresie, w którym została wykreślona krzywa kapitału. Krzywa kapitału pokazuje zmianę twojego kapitału w czasie (patrz str. 400).

Strzałki, które są wykreślone na wykresie papieru wartościowego, pokazują kiedy została otwarta długa lub krótka pozycja. Strzałka skierowana do góry jest sygnałem zajęcia długiej pozycji; strzałka skierowana do dołu jest sygnałem zajęcia krótkiej pozycji; znak „exit” jest sygnałem zamknięcia pozycji; znak „stop” jest sygnałem zamknięcia pozycji wynikającym z ustalonego poziomu strat lub zysku.

Optymalizacja

Optymalizacja dotyczy zmieniania składników reguł transakcyjnych lub stopów w zmiennej „OPT” i następnie kolejnej wymianie tych wartości do testowania. Następnie MetaStock przeprowadza wiele testów, zmieniając zmienną OPT na wartości, które zostały wybrane.

My First System” w tym opisie testował sygnały kupna/sprzedaży generowane przez 25-okresową średnią ruchomą. Teraz możemy przystąpić do optymalizacji naszych reguł transakcyjnych, w celu określenia optymalnej liczby okresów czasowych używanych przez średnią ruchomą.

Wprowadzanie zmiennej w celu jej optymalizacji

  1. Podświetl „My First System” w okienku dialogowym System Tester i kliknij przycisk Edit. We wszystkich czterech regułach transakcyjnych, zamień „25” na „OPT1” (dla optymalizacji pierwszej zmiennej). Pokazane jest to dla reguły Enter Long na poniższej ilustracji.

0x08 graphic

  1. Kliknij przycisk Optimize. Ukaże się okienko dialogowe Optimization Variables.

0x08 graphic

  1. Kliknij przycisk Edit. Ukaże się okienko dialogowe Variable Properties.

Chcemy przetestować średnią ruchomą od 10-okresów do 50-okresów, zwiększając okresy co 5 (tj. 10, 15, 20, itd.).

  1. Wprowadź w polu Description słowa „Moving average periods” jako opis OPT1. W polu Minimum wpisz wartość 10, w polu Maximum wpisz wartość 50, w polu Step wpisz wartość 5 (tak jak to pokazano na poniższej ilustracji).

0x08 graphic

  1. Kliknij przycisk OK.

  2. Spójrz na wartość Total Tests w lewym dolnym rogu okienka dialogowego Optimization Variables. Wartość ta pokazuje całkowitą liczbę testów (w tym przypadku dziewięć), która będzie przeprowadzona. Zawsze sprawdź tę wartość, ponieważ bardzo łatwo można stworzyć system, który będzie generować tysiące testów.

0x08 graphic

  1. Kliknij przycisk Close.

  2. Kliknij przycisk OK w okienku dialogowym System Editor aby powrócić do okienka dialogowego System Tester.

Testowanie systemu poddanego optymalizacji

Mając nadal podświetlony „My First System”, kliknij przycisk Test. W czasie optymalizowania systemu, program MetaStock wyświetla informacje odpowiadające liczbie przeprowadzonych testów, liczba godzin, która upłynęła od zainicjowania testowania, spodziewany czas zakończenia testowania oraz największy zysk/strata.

0x08 graphic

Możesz wybrać przycisk Minimize aby zredukować okienko dialogowe System Test Optimization do jednej ikony. W tym wypadku, proces optymalizacji będzie odbywać się w tle, zwalniając komputer do innych prac.

Wyświetlanie raportów z optymalizacji

  1. Gdy ukaże się wiadomość „System Test Completed”, kliknij przycisk Reports. Ukaże się okienko Summary Report.

Raport zawiera zapisy z każdego testu, który był przeprowadzony. Ponieważ przeprowadziliśmy dziewięć testów (tj. system był testowany przez dziewięć średnich ruchomych o różnych okresach), w raporcie powinno być dziewięć testów.

Testy są rozmieszczone w kolejności otrzymanego zysku netto, począwszy od największego. Chcąc zmienić kolejność, użyj przycisku Sort.

  1. Przewiń raport, aż ukaże się kolumna OPT1.

0x08 graphic

Wartość pokazana w górnym rzędzie, w kolumnie OPT1, jest wartością optymalną średniej ruchomej dla aktualnie załadowanego papieru wartościowego. Na ilustracji powyżej, optymalną wartością dla średniej ruchomej jest liczba „10” (twoja liczba może być inna, ponieważ testujesz inny papier wartościowy).

  1. Kliknij przycisk Reports aby poznać więcej informacji o zaznaczonym teście.

Podsumowanie opisu

Zapoznałeś się z całym opisem systemu testującego. Próbując przedstawić ten opis, tak zwięźle jak to możliwe, nie wykorzystaliśmy wszystkich możliwości testowania systemów w programie MetaStock. Jednakże, powinieneś teraz być bardziej oswojony z procesem tworzenia systemu transakcyjnego. Dalsza część tego rozdziału dostarczy bardziej szczegółowych informacji o systemie testującym.

Jeśli będziesz testować kontrakty terminowe lub towary, na str. 404 znajdziesz specjalne instrukcje.

___________________________________________________________________________

Okienko dialogowe System Tester

Okienko dialogowe System Tester zawiera listę nazw wszystkich systemów testujących. Możesz utworzyć do 1000 systemów testujących. Zaznaczony system testujący można edytować, kopiować, kasować, drukować i testować. Można także zaznaczyć kilka systemów testujących dla porównania ich ze sobą (patrz str. 396). System testujący, który za nazwą posiada literę „R” zawiera raporty z ostatnich testów.

0x08 graphic
New

Wyświetla okienko dialogowe System Editor, gdzie można wpisać nazwę i reguły nowego systemu testującego. Więcej informacji o tworzeniu nowego systemu testującego, znajdziesz na str. 359.

Edit

Wyświetla okienko dialogowe System Editor, gdzie można edytować zaznaczony system testujący.

Copy

Kopiuje zaznaczony system testujący. Udostępnia także okienko dialogowe System Editor, gdzie możesz edytować skopiowany system testujący. Więcej informacji o kopiowaniu systemu testującego, znajdziesz na str. 368.

Delete

Kasuje zaznaczony system testujący(e). Możesz zaznaczyć kilka systemów testujących jednocześnie, podtrzymując klawisz CTRL i klikając myszą na kilku systemach testujących. Więcej informacji o kasowaniu systemu testującego, znajdziesz na str. 368.

Print

Drukuje zaznaczony system testujący(e). Więcej informacji o drukowaniu systemu testującego, znajdziesz na str. 368.

Organize

Wyświetla Formula Organizer Wizard, z którego możesz pobierać i wysyłać systemy eksploracyjne, systemy testujące, wskaźniki i porady eksperckie. Używane gdy kupujesz programy z Equis lub od innych osób. Więcej informacji o Formula Organizer Wizard, znajdziesz na str. 271.

Test

Inicjuje testowanie zaznaczonego systemu. Pamiętaj, że przycisk ten jest nieaktywny jeśli zaznaczyłeś kilka systemów testujących i nie zaznaczyłeś pola Compare. Przycisk ten jest także nieaktywny, gdy żaden wykres nie został otwarty. Więcej informacji o testowaniu, znajdziesz na str. 369.

Reports

Wyświetla okienko Summary Report lub (Compare Report gdy pole Compare zostało zaznaczone) dla zaznaczonego systemu testującego. Przycisk ten jest nieaktywny aż do momentu, gdy obok nazwy systemu pojawi się litera „R” (oznacza „raport dostępny”). Więcej informacji o raportach, znajdziesz na str. 380.

Options

Wyświetla okienko dialogowe System Testing Options, gdzie możesz ustawiać zmienne oraz raporty. Więcej informacji o dostępnych opcjach, znajdziesz na str. 371.

Compare

Po zaznaczeniu tego pola możesz porównać kilka systemów testujących. Więcej informacji o porównywaniu systemów testujących, znajdziesz na str. 396.

___________________________________________________________________________

Tworzenie systemu testującego

Każdy system testujący zawiera cztery reguły transakcyjne. Reguły testujące określają, kiedy powinna być otwarta/zamknięta długa/krótka pozycja. System testujący może także optymalizować zmienne i stop.

Chcąc utworzyć nowy system, kliknij przycisk New w okienku dialogowym System Tester. Program MetaStock może przechowywać do 1000 systemów testujących.

0x08 graphic

Po wybraniu New, wyświetli się okienko dialogowe System Editor.

Okienko dialogowe System Editor

Okienko dialogowe System Editor pozwala wpisać nazwę systemu, przechowywać adnotacje odnoszące się do systemu oraz definiować cztery reguły transakcyjne.

0x08 graphic

Reguły transakcyjne wykorzystują składnie formuł wyjaśnione w rozdziale „Język MetaStocka” (patrz str. 257). Składnia jest bardzo podobna do składni używanej do wprowadzania wzorów w arkuszach kalkulacyjnych. Każda reguła transakcyjna może zawierać do 1024 znaków. Jeśli niezbyt dokładnie zapoznałeś się z językiem MetaStocka, powinieneś zajrzeć na str. 257.

Pamiętaj, że system testujący może zajmować długą/krótką pozycję lub być poza rynkiem. Gdy jest poza rynkiem, w okienku dialogowym System Testing Options (patrz str. 371), łatwo można określić wypracowany zysk.

Za pomocą klawiszy Enter Long, Close Long, Enter Short, Close Short możesz dokonać wyboru reguły, którą chcesz wyświetlić i edytować.

0x08 graphic

Enter Long

Reguła ta określa, kiedy system powinien zająć długą pozycję. Długa pozycja może być otwarta tylko wtedy, gdy system zajmuje krótką pozycję lub jest poza rynkiem. Gdy system aktualnie zajmuje długą pozycję, reguła ta jest ignorowana.

Close Long

Reguła ta określa, kiedy system powinien zamknąć długą pozycję. Gdy system aktualnie zajmuje krótką pozycję lub jest poza rynkiem, reguła ta jest ignorowana.

Enter Short

Reguła ta określa, kiedy system powinien otworzyć krótką pozycję. Krótka pozycja może być otwarta tylko wtedy, gdy system zajmuje długą pozycję lub jest poza rynkiem. Gdy system aktualnie zajmuje krótką pozycję, reguła ta jest ignorowana.

Close Short

Reguła ta określa, kiedy system powinien zamknąć krótką pozycję. Gdy system aktualnie zajmuje długą pozycję lub jest poza rynkiem, reguła ta jest ignorowana.

Składnia reguły transakcyjnej

Reguły transakcyjne są wprowadzane za pomocą języka MetaStocka (patrz str. 257). Składnia ta jest bardzo podobna do składni używanej przy wprowadzaniu wzorów do arkuszy kalkulacyjnych. Każda reguła transakcyjna może zawierać do 1024 znaków.

Reguła transakcyjna zawsze zwraca sygnał „prawda” lub „fałsz”. Gdy reguła transakcyjna zwraca prawdę, zostanie zawarta odpowiednia transakcja (tj. zostanie otwarta/zamknięta długa/krótka pozycja). Gdy zwracany jest fałsz, nie jest zawierana żadna transakcja.

Poniższy przykład ilustruje regułę transakcyjną:

Enter Long: cross(CLOSE,mov(CLOSE,12,Simple))

Jeśli została ona wprowadzona jako reguła Enter Long, system powinien zająć długą pozycję, gdy cena zamknięcia znajdzie się powyżej 12-okresowej średniej ruchomej cen zamknięcia.

Podobnie, poniższa reguła transakcyjna powinna zostać uruchomiona, gdy MACD jest większy niż zero. (macd( ) w powyższej regule jest funkcją, patrz str. 289).

Enter Long: macd( )>0

Wszystkie wskaźniki, będące funkcją (np. macd( )) mogą być używane w regułach transakcyjnych. Konkretny wskaźnik może być oznaczony za pomocą wzoru fml( ) (patrz str. 282), tak jak pokazano poniżej:

Enter Short: fml(„My Formula”)>0

Możesz używać kilka funkcji w obrębie reguły transakcyjnej, używając operatorów AND oraz OR, tak jak pokazano poniżej:

Enter Long: macd( )>0 AND CLOSE>mov(CLOSE,12,S)

Powyższa reguła wymaga aby MACD był powyżej zera i cena zamknięcia była powyżej swojej 12-okresowej średniej ruchomej.

Poniższa reguła używa operatora OR do generowania transakcji, gdy MACD spada poniżej od zera lub gdy cena zamknięcia spada poniżej swojej średniej ruchomej.

Close Long: macd( )<0 OR CLOSE<mov(CLOSE,12,S)

W obrębie reguły transakcyjnej można użyć kilka AND lub OR. Najlepszym sposobem określania kolejności działań (tj. kolejności wykonywania operacji) w regule transakcyjnej zawierającej kilka operatorów AND oraz OR jest użycie nawiasów, tak jak pokazano w poniższej regule transakcyjnej:

Enter Long: (macd( )>0 AND C>100) OR H-L>5

Powyższa reguła transakcyjna będzie generować transakcję, gdy spełniony będzie jeden z poniższych warunków:

Gdy edytujesz regułę transakcyjną, możesz kliknąć przycisk Functions (patrz str. 332) (musi być edytowana reguła transakcyjna, a nie nazwa lub uwagi). Wyświetli się okienko dialogowe Paste Functions zawierające listę dostępnych funkcji. Podwójne kliknięcie na nazwie funkcji spowoduje wstawienie jej do reguły transakcyjnej, w miejscu aktualnej lokalizacji kursora.

Pole przeznaczone na wpisanie reguły transakcyjnej Enter Long, Close Long, Enter Short, Close Short, może być nie zapisane. Jednakże, puste pole reguły transakcyjnej nigdy nie będzie generować transakcji.

Reguły transakcyjne mają dostęp tylko do danych liczbowych cen papierów wartościowych (tj. maksimum, minimum, zamknięcie, itp.) oraz wskaźników będących funkcjami (patrz str. 274). Reguły transakcyjne nie mogą zawierać w sobie systemów transakcyjnych (np. liczba dni, które przeszły od momentu ostatniej transakcji). Jednakże, wprowadzenie kilku stopów (patrz str. 363), poprawi jego funkcjonalność.

Specjalna zmienna, zwana zmienną „P”, może być używana do oznaczania każdego zaznaczonego wykresu ceny lub wskaźnika. Więcej informacji o zmiennej „P”, znajdziesz na str. 268.

Zmienne mogą być używane w obrębie reguły transakcyjnej systemu testującego (patrz str. 265). Wzory wielowykresowe (tj. takie wzory, których rezultatem jest kilka wykresów) są dozwolone, ale tylko ostatni wykres będzie przyjęty przez system testujący.

Używanie funkcji Alert( )

Funkcja alert( ) jest używana w połączeniu z innymi funkcjami do wyrażenia sygnału prawda dla określonej liczby okresów czasowych. Sygnał jest generowany nawet wtedy, gdy generowana jest inna transakcja.

Poniższy przykład ilustruje metodę używania funkcji alert( ):

Enter Long: RSI(14)<30 AND alert(VOLUME>500,3)

Jeśli reguła ta została wprowadzona jako reguła Enter Long, system powinien otworzyć długą pozycję, gdy RSI było mniejsze niż 30 oraz wolumen był większy niż 500 za każdym razem, gdy od tego momentu minęły trzy okresy czasowe. Warunek „VOLUME>500 będzie wyrażał prawdę nawet wtedy, gdy wolumen spadł poniżej 500 w czasie następnych trzech okresów czasowych.

Jeśli usuniesz funkcję alert( ) z powyższego przykładu, obydwa warunki (tj. RSI(14)<30 i VOLUME>500) muszą być równocześnie spełnione, aby wygenerować sygnał Enter Long. Używając funkcji alert( ), warunek prawda generowany przez „VOLUME>500” jest generowany dopiero po upływie trzech okresów czasowych.

Wprowadzanie stopów

Dodatkowo, oprócz reguł transakcyjnych, każdy system transakcyjny może zawierać do pięciu „stopów”. Stopy są ustalane po kliknięciu przycisku Stops w okienku dialogowym System Editor. Stopy są używane do zamykania długiej i/lub krótkiej pozycji na podstawie straty/zysku z pozycji. Na przykład, stop Maximum Loss zamknie pozycję, jeśli strata z tej pozycji będzie większa niż wyznaczona wartość.

Gdy stop został uruchomiony, pozycja jest zamykana bez względu na aktualny stan reguł transakcyjnych. Cena przy której zamykana jest pozycja, jest aktualną ceną stop lub oznaczoną ceną wyjścia. Jeśli zaznaczysz pole „Exit at Stop Price” w okienku dialogowym Stops, pozycja jest zamykana dokładnie przy poziomie cen wyznaczonym przez stop, nawet jeśli była zaznaczona transakcja opóźniona. Opóźniona transakcja jest ignorowana jeśli jest zaznaczone pole Exit at Stop Price.

Jeśli cena spada poniżej poziomu stop w czasie długiej pozycji, program MetaStock zamyka pozycje przy cenie otwarcia następnego słupka. Jeśli nie jest dostępna cena otwarcia, używana jest cena maksimum następnego słupka. Podobnie, jeśli cena przekracza poziom stop podczas krótkiej pozycji, program MetaStock zamyka otwartą pozycję przy cenie otwarcia następnego słupka. Jeśli cena otwarcia nie jest dostępna, używana jest cena minimum następnego słupka.

Stopy automatycznie powodują pobieranie prowizji otwarcia i zamknięcia z twojego konta. Na przykład, stop Maximum Loss wie o wartości prowizji „wyjścia” i spróbuje zamknąć pozycję tak, aby maksymalna strata nie była powiększona o prowizję wyjścia.

Jeśli jednocześnie uruchomione są dwa stopy na tym samym słupku, to do zamknięcia pozycji zostanie wykorzystany ten stop, który przynosi mniej strat. Kolejność stopów jest następująca: Maximum Loss, Breakeven, Trailing, Profit Target i Inactivity.

Więcej informacji o optymalizacji stopów, znajdziesz na str. 376.

Breakeven

Ten stop zamyka otwartą pozycję, gdy twój kapitał od momentu otwarcia pozycji wzrośnie o wielkość wyznaczoną w polu Floor Level, a następnie spadnie poniżej wartości kapitału w chwili otwierania tej pozycji. Znak stopu umieszczany jest przy słupku z tego dnia, w którym nastąpiło zamknięcie pozycji.

0x08 graphic

Aby zabezpieczyć się przed uruchomieniem tego stopu, za każdym razem gdy pozycja została otwarta (ponieważ prowizja powoduje, że transakcja przy pierwszym otwarciu nigdy nie jest zyskowna), stop Breakeven staje się aktywny tylko po tym jak zysk z transakcji jest równy lub przekracza zaznaczoną wartość „floor level”. Wartość, którą wprowadzisz do pola Floor Level będzie oznaczać punkty, jeśli w opcji Method zaznaczyłeś Points lub procenty, gdy w opcji Method zaznaczyłeś Percent. Floor Level wykorzystuje cenę maksimum, gdy otwarta jest pozycja długa lub cenę minimum, gdy otwarta jest pozycja krótka.

Aby zadziałać, stop Breakeven korzysta z minimum dwóch słupków. Jeden słupek służy do określenia Floor Level, a inny słupek służy do określenia czy należy zamknąć pozycję.

Uwagi:

Jeśli Floor Level wynosi zero, to stop Breakeven staje się aktywny tylko wtedy, gdy cena papieru wartościowego zwiększy się o tyle, aż można zamknąć pozycję bez strat.

Inactivity

Ten stop zamyka pozycję, gdy cena papieru wartościowego nie zmienia się o wartość wyznaczoną w polu Minimum Change w obrębie zaznaczonego okresu czasowego w polu Periods. Wartość w polu Minimum Change oznacza wzrost, gdy otwarta jest długa pozycja lub spadek, gdy otwarta jest krótka pozycja.

0x08 graphic

Wprowadź minimalną zmianą w polu Minimum Change oraz liczbę okresów czasowych w polu Periods. Wartość, którą wprowadzisz do pola Minimum Change będzie oznaczać punkty, jeśli w opcji Method zaznaczyłeś Points lub procenty, gdy w opcji Method zaznaczyłeś Percent.

Przykład:

Jeśli wybrałeś 1% jako Minimum Change oraz 20 jako liczbę okresów czasowych Periods, to program MetaStock automatycznie zamknie pozycję długą lub krótką, gdy cena papieru wartościowego nie zwiększyła się (w przypadku długiej pozycji) lub nie zmniejszyła się (w przypadku krótkiej pozycji) co najmniej o 1% w ciągu 20 okresów czasowych.

Ten stop analizuje zmiany ceny, a nie zysk i dlatego ignoruje prowizję biura maklerskiego.

Maximum loss

Ten stop zamyka otwartą pozycję, gdy strata z aktualnej pozycji przekroczy wartość wyznaczoną w polu Maximum Loss, w porównaniu do ceny, przy której otworzyłeś tę pozycję.

0x08 graphic

Przykład:

Jeśli wartość w polu Maximum Loss wynosi 5%, to pozycja będzie zamknięta gdy strata przekroczy 5%, w porównaniu do ceny, przy której otwarta została ta pozycja (włączając w to prowizję).

Ostrzeżenie:

Jeśli w polu Maximum Loss wprowadzisz wartość, która jest mniejsza lub równa prowizji, każda pozycja będzie niezwłocznie zamykana po jej otwarciu, ponieważ transakcja będzie przynosić stratę w momencie otwarcia pozycji (z powodu prowizji).

Profit target

Ten stop zamyka pozycję, gdy z aktualnie otwartej pozycji zostanie osiągnięty zysk, wyznaczony w polu Profit Target, w porównaniu do ceny, przy której otwierałeś tę pozycję.

0x08 graphic

Przykład:

Jeśli w polu Profit Target zaznaczysz 10%, to otwarta pozycja będzie zamknięta, gdy twój zysk z aktualnie otwartej pozycji wzrośnie o 10% (po uwzględnieniu prowizji), w porównaniu do ceny, przy której otwierałeś tę pozycję.

Trailing

Ten stop zamyka otwartą pozycję, gdy wypracowany zysk z aktualnej pozycji, zmniejszy się o wartość zaznaczoną w polu Profit Risk.

0x08 graphic

Za każdym razem, gdy zysk z pozycji osiągnie nowe maksimum, stop Trailing odejmuje od tej wartości zysk z aktualnej pozycji i gdy różnica ta przekroczy wielkość wyznaczoną w polu Profit Risk, pozycja ta jest zamykana. Profit Risk można określać w punktach, zaznaczając pole Points lub w procentach, zaznaczając pole Percent.

Program MetaStock pozwala zaznaczyć liczbę okresów, w czasie których zmniejszenie osiągniętego zysku będzie ignorowane. Na przykład, jeśli wpiszesz w polu Periods liczbę „4”, to stop Trailing opóźni się o cztery okresy. To oznacza, że zyski lub straty z ostatnich czterech okresów będą ignorowane przy określaniu aktualnego poziomu stop. Stanowi to filtr dla wahań cen (w górę lub w dół), które wystąpiły w ciągu ostatnich czterech okresów. Stop ten został utworzony do śledzenia zysku, a nie do określania limitu strat. Stop Trailing tylko limituje wartość zysku, który może być utracony. Straty są limitowane przez stop Maximum Loss (patrz str. 365).

Od momentu, gdy stop Trailing określił poziom zysku, nie poziom ceny, nie ma żadnego znaczenia czy jest to krótka czy też długa pozycja.

Przykład:

W polu Profit Risk zaznaczone jest 5%, w polu Periods wpisane jest 0 i aktualna pozycja przyniosła zysk w wysokości 100$. Stop zostanie uruchomiony, gdy zmiana ceny papieru wartościowego spowoduje zmniejszenie zysku do 95$ (lub mniej).

___________________________________________________________________________

Kopiowanie i kasowanie systemów testujących

Zaznaczony system testujący (systemy testujące) w okienku dialogowym System Tester, możesz skopiować naciskając przycisk Copy. Jest to użyteczne, gdy chcesz zaprojektować nowy system testujący, który jest bardzo podobny do innego.

Na przykład, gdy System A jest bardzo podobny do nowego systemu, który chcesz utworzyć, lepiej użyć polecenia Copy w okienku dialogowym System Tester, do skopiowania tego systemu, niż go przepisywać. Następnie możesz wprowadzić w nim niewielkie modyfikacje, które uważasz za konieczne i nazwać go System B.

Zaznaczony system testujący (systemy testujące) w okienku dialogowym System Tester, możesz skasować naciskając przycisk Delete. Po naciśnięciu tego przycisku wyświetli się okienko dialogowe Delete System Test.

0x08 graphic

W okienku tym możesz wybrać kasowanie systemu testującego, zaznaczając pole Delete System Test lub wybrać kasowanie raportu z przeprowadzonego testu, zaznaczając pole Delete System Test Reports. Jeśli skasujesz system testujący, skasujesz również raporty dotyczące tego systemu.

___________________________________________________________________________

Drukowanie systemów testujących

Za pomocą okienka dialogowego Print możesz wydrukować nazwy i/lub wzory zaznaczonego systemu testującego. Dostęp do tego okienka dialogowego uzyskasz po naciśnięciu przycisku Print w okienku dialogowym System Tester.

0x08 graphic

Print What

W tym polu możesz wybrać Names and Formulas, gdy chcesz wydrukować nazwę i wzory zaznaczonego sytemu testującego lub Names Only, gdy chcesz wydrukować tylko nazwę tego systemu.

Copies

W tym polu dokonujesz wyboru liczby kopii do drukowania.

Print Range

Gdy chcesz wydrukować tylko zaznaczony system testujący, zaznacz Selection. Gdy chcesz wydrukować wszystkie systemy testujące, zaznacz All.

___________________________________________________________________________

Testowanie systemów transakcyjnych

Chcąc rozpocząć testowanie systemu transakcyjnego, zaznacz nazwę tego systemu w okienku dialogowym System Tester i kliknij przycisk Test.

0x08 graphic

Jeśli zaznaczyłeś pole Compare i porównujesz systemy testujące, patrz str. 374.

Czas wymagany do przeprowadzenia testu zależy od złożoności sytemu testującego i ilości załadowanych danych na wykresie. Oczywiście system testujący, który posiada zmienne optymalizacyjne wymaga więcej czasu, ponieważ wzrasta liczba testów. Hardware komputera (tj. procesor, twardy dysk, itp.) także ma duży wpływ na prędkość obliczeń.

Okienko dialogowe System Test Optimization

Jeśli system zawiera zmienne optymalizacyjne, ukaże się okienko wyświetlające postęp w procesu testowania.

0x08 graphic

Większość informacji w tym okienku nie wymaga objaśnień. Kilka pozycji wyjaśniono poniżej. Więcej informacji o optymalizacji systemu testującego, znajdziesz na str. 376.

Estimated Completion Time

Pokazuje, o której godzinie przewidywane jest zakończenie przeprowadzania testu, według czasu rzeczywistego.

Execution Priority

Opcje w tym polu pozwalają na kontrolę czasu pracy procesora, przeznaczonego na potrzeby obliczeń systemu testującego. Ustaw opcję w tym polu na „High”. Zmień to ustawienie na „Medium” lub „Low” jeśli program pracuje nierówno lub nie reaguje, gdy testowanie systemu odbywa się w tle (tj. po naciśnięciu przycisku Minimize).

Minimize

Użyj tego przycisku do schowania okienka System Test Optimization. System testujący pracuje wtedy w „tle”. Gdy schowasz to okienko, możesz korzystać z innych właściwości programu MetaStock. Możesz uruchomić system eksploracji, który może także pracować w tle.

Chcąc ponownie wyświetlić okienko dialogowe System Test Optimization, kliknij na ikonie System Tester.

Możesz przerwać proces testowania systemu, klikając przycisk Cancel. Wyświetli się okienko, w którym musisz potwierdzić swój zamiar. Po przerwaniu testowania, możesz przeglądnąć raport, wykonany do tego momentu.

Jak przejść do testowania systemu w tle

  1. Uruchom system testujący, posiadający zmienne optymalizacyjne.

  2. Po wyświetleniu okienka dialogowego System Test Optimization, wybierz jakąś opcję w okienku Execution Priority. Jeśli masz zamiar korzystać z innych właściwości programu MetaStock lub z innych programów, podczas gdy testowanie odbywa się tle, wybierz Medium lub Low.

  3. Kliknij przycisk Minimize.

System Testing Options

W okienku dialogowym System Testing Options możesz wybrać dodatkowe opcje do testowania oraz sporządzania raportu. Z tego okienka dialogowego możesz ustawiać takie opcje jak: prowizje, kapitał początkowy, wymagany depozyt, stopę procentową, itp. Możesz także wybrać opcje dotyczące strzałek kupna/sprzedaży i maksymalnej liczby raportów.

Strona Testing

0x08 graphic

Trade Price

W polach Entry Price i Exit Price dokonujesz wyboru rodzaju ceny wejścia lub wyjścia, która będzie używana do testowania systemu (tj. Open, High, Low lub Close). Najczęściej używaną ceną jest Open i Close. W polu Delay dokonuje się wyboru słupka, przy którym będzie zawarta transakcja od momentu wygenerowania sygnału przez system. Na przykład, jeśli zaznaczyłeś „1”, będzie to oznaczać, że transakcja zostanie zawarta przy następnym słupku od momentu wygenerowania sygnału przez system. Jeśli zaznaczyłeś „0”, to transakcja zostanie zawarta przy tym samym słupku, przy którym został wygenerowany sygnał. Tak więc, pole Delay oznacza liczbę okresów czasowych, w których program MetaStock powinien czekać, aż zostanie zawarta transakcja.

Najbardziej „realistyczne” jest wprowadzenie ceny wejścia Open i liczby „1” w polu Delay oraz ceny wyjścia Close i liczby „0” w polu Delay.

Commissions

Zaznacz rodzaj pobieranej prowizji, tj. Percent(%), gdy prowizja wyznaczana jest w procentach lub Points($), gdy prowizja pobierana jest w dolarach. Możesz dla każdej z tej opcji wybrać konkretną wartość prowizji pobieranej na otwarciu pozycji (pole Entry) oraz prowizji pobieranej na zamknięciu prowizji (pole Exit).

Prowizja procentowa bierze pod uwagę całkowitą wartość zaangażowanych środków w transakcji, które to środki niekoniecznie muszą być tą samą zaangażowaną wartością jeśli zawierasz transakcje wymagające depozytu (patrz str. 403).

Typowa prowizja przy zakupie akcji wynosi 2% na 10$ transakcji i 5% na 1$ transakcji.

Prowizja od towarów jest pobierana zazwyczaj tylko w czasie zamykania pozycji. Typowa prowizja wynosi 30$ za kontrakt.

Positions

Wybierz typ pozycji branej pod uwagę (tj. Longs, Shorts lub Both).

Points Only Test

Zaznacz to pole gdy zawierasz transakcje na futures lub na towarach i chcesz śledzić liczbę punktów zysku lub straty zamiast wartości w walucie. Więcej informacji o punktowym systemie testowania, znajdziesz na str. 404.

Initial Equity

Jest to początkowe saldo rachunku. Specjalne wskazówki dotyczące testowania futures oraz towarów, znajdziesz na str. 404.

Margin Requirement %

Jest to procent kapitału, który musisz złożyć jako depozyt.

Przykład:

Jeśli nie składasz depozytu, wprowadź 100; jeśli depozyt wynosi 50%, wprowadź 50. Więcej informacji o wymaganych depozytach, znajdziesz na str. 403.

Annual Interest Rate

Jest to roczna stopa procentowa, w oparciu o którą będzie kapitalizowany twój kapitał, gdy będziesz poza rynkiem. Odsetki są naliczane w momencie zajmowania długiej lub krótkiej pozycji (po okresie przebywania poza rynkiem). Więcej informacji o obliczaniu odsetek, znajdziesz na str. 403.

Strona Reporting

0x08 graphic

Up Arrow

W tym polu dokonujesz wyboru koloru strzałek, pokazujących kupno.

Down Arrow

W tym polu dokonujesz wyboru koloru strzałek, pokazujących sprzedaż.

Stop Sign

W tym polu dokonujesz wyboru koloru znaku oznaczającego stop lub wyjście (tj. symbolu umieszczanego na wykresie, gdzie warunek stop lub wyjścia jest uruchamiany przez system testujący).

Display Buy/Sell Arrows

Zaznaczając to pole spowodujesz, że strzałki kupna/sprzedaży będą automatycznie umieszczane na wykresie po przeprowadzeniu testu. Jeśli system posiada zmienne optymalizacyjne, zostaną narysowane strzałki odpowiadające systemowi przynoszącemu największe zyski. Podobnie, jeśli zostało przeprowadzone porównanie systemów, strzałki będą odnosić się do systemu bardziej zyskownego.

Label Arrows with Buy/Sell

Jeśli zaznaczysz to pole, to strzałki kupna/sprzedaży zostaną dodatkowo oznaczone słowami „Buy” i „Sell”. Znak stopu zostanie oznaczony dodatkowo słowem „Stop”.

Replace Existing Arrows

Jeśli zaznaczysz to pole, to istniejące strzałki kupna/sprzedaży będą automatycznie zastępowane na nowe, po zakończeniu testowania.

Plot Equity Line

Jeśli zaznaczysz to pole, to zakończeniu testowania systemu, automatycznie będzie rysowana krzywa kapitału. Krzywa kapitału zostanie narysowana dla najbardziej zyskownego systemu testującego (jeśli zawiera zmienne optymalizacyjne). Więcej informacji o krzywej kapitału, znajdziesz na str. 400.

Replace Existing Equity Lines

Jeśli zaznaczysz to pole, to istniejąca krzywa kapitału będzie automatycznie zastępowana na nową, za każdym razem, gdy zostanie zakończone testowanie systemu.

Notify When Test Complete

Zaznacz to pole, gdy chcesz aby ukazywało się okienko powiadamiające o zakończeniu przeprowadzania testu. Okienko zawiera przycisk Reports, po naciśnięciu którego możesz przejrzeć raport z przeprowadzonego testu.

Maximum Reports

Określa maksymalną ilość raportów, które powinny być gromadzone na dysku twardym podczas optymalizacji. Jeśli liczba testów jest większa niż wyznaczona maksymalna ilość raportów lub przekracza pojemność dysku, to będą gromadzone raporty tylko z najbardziej zyskownych transakcji.

___________________________________________________________________________

Porównywanie systemów

Opcja Compare oraz przycisk Compare w okienku dialogowym System Tester, używane jest do porównywania zaznaczonych systemów testujących.

0x08 graphic
Gdy zaznaczysz pole Compare, przycisk „Test” zmieni się na „Compare”. Informacje na temat okienka dialogowego Comparison Report, które generowane jest w wyniku przeprowadzenia porównania systemów transakcyjnych, znajdziesz na str. 396.

Okienko dialogowe System Test Comparison

Podobnie jak w okienku dialogowym ukazującym się w czasie przeprowadzania optymalizacji systemu testującego, okienko dialogowe System Test Comparison informuje o postępie wykonywanego porównania.

0x08 graphic

Większość informacji w tym okienku dialogowym nie wymaga objaśnień. Więcej informacji na temat pozycji w tym okienku dialogowym, znajdziesz na str. 370. Podobnie jak okienko dialogowe System Test Optymization, to okienko może być także schowane i wówczas system pracuje w tle.

Jak porównywać systemy

  1. W okienku dialogowym System Tester zaznacz dwa lub więcej systemy testujące.

  2. Zaznacz pole Compare.

  3. Kliknij przycisk Compare.

___________________________________________________________________________

Optymalizacja systemów testujących

Optymalizacja dotyczy przeprowadzania wielu testów systemu testującego zawierającego jeden lub więcej parametrów w obrębie reguł transakcyjnych lub stopów.

Opis systemu testującego (patrz str. 347) jest przykładem optymalizacji liczby okresów czasowych używanych do obliczania średniej ruchomej w prostym systemie transakcyjnym. W tym przykładzie, testowane są średnie ruchome od 10 do 50 okresów czasowych, przy postępie 5. Polecamy, abyś dokładnie zapoznał się z tym opisem, w celu lepszego zrozumienia zasad optymalizacji.

Każdy system transakcyjny może posiadać do 10 zmiennych optymalizacyjnych (oznaczonych jako OPT1 do OPT10). (Zmienne OPT nie obowiązują we wskaźnikach). Aby optymalizować system, musisz zastąpić stałe numeryczne w obrębie reguł transakcyjnych lub stopów na zmienne OPT.

Poniżej przedstawiono przykład używania zmiennej OPT w obrębie reguły transakcyjnej. W tej regule, opt1 zastępuje parametr okresu czasowego w funkcji średniej ruchomej.

C>Mov(C,opt1,E)

Zmienną OPT dla stopu umieszczamy bezpośrednio w sekcji Parameters okienka dialogowego Stops.

0x08 graphic

Następnie możesz ustalić parametry zmiennej optymalizacyjnej, korzystając z pól Minimum, Maximum oraz Step. Gdy testujesz system zawierający zmienne OPT, program MetaStock automatycznie przeprowadzi wiele testów, używając każdą z możliwych kombinacji zmiennych optymalizacyjnych.

Precyzowanie zmiennych optymalizacyjnych

Chcąc dokładnie określić parametry zmiennej optymalizacyjnej w regułach transakcyjnych lub stopach, kliknij przycisk Optimize w okienku dialogowym System Editor lub okienku dialogowym Stops.

0x08 graphic

New

Pozwala dodać nową zmienną OPT i edytować jej ustawienia.

Edit

Wyświetla okienko Variable Properties, w którym możesz edytować Minimum, Maximum i Step zaznaczonej zmiennej OPT.

Delete

Usuwa zaznaczoną zmienną OPT. Pamiętaj, że nie możesz skasować zmiennej OPT, która jest w użyciu.

Total Tests

Wyświetla całkowitą liczbę testów, które zostały przeprowadzone w wyniku optymalizacji systemu transakcyjnego.

Okienko dialogowe Variable Properties

Okienko dialogowe Variable Properties jest używane do wyboru parametrów zmiennej OPT.

0x08 graphic

Name

Pokazuje, która zmienna OPT jest edytowana.

Description

W tym polu wprowadzasz opcjonalnie opis tej zmiennej.

Minimum

Wpisz minimalną wartość zmiennej OPT.

Maximum

Wpisz maksymalną wartość zmiennej OPT.

Step

Wpisz wielkość, o którą będzie zwiększana zmienna OPT. Na przykład, jeśli w polu Minimum została wpisana liczba 10, w polu Maximum została wpisana liczba 50, a w polu Step została wpisana liczba 10, to zmienna OPT będzie zamieniana kolejno na wartości 10, 20, 30, 40 i 50.

Przykład optymalizacji

Poniższa reguła transakcyjna Enter Long kupuje gdy zamknięcie jest powyżej 10-okresowej średniej ruchomej:

Enter Long: CLOSE>mov(CLOSE,10,SIMPLE)

Jeśli nie znasz optymalnej liczby okresów czasowych tej średniej ruchomej, to w powyższej regule transakcyjnej zamień „10” na zmienną optymalizacyjną, tak jak przedstawiono to poniżej:

0x08 graphic
Enter Long: CLOSE>mov(CLOSE,OPT1,SIMPLE)

Ustaw parametry dla OPT1 (np. od 5 do 20 przy postępie 5) wybierając Optimize z okienka dialogowego System Editor. Gdy rozpoczniesz testowanie systemu, program MetaStock przeprowadzi wiele testów, za każdym razem zmieniając zmienną optymalizacyjną OPT1 na nową wartość (tak jak pokazano poniżej).

Enter Long: CLOSE>mov(CLOSE,5,SIMPLE){test #1}

Enter Long: CLOSE>mov(CLOSE,10,SIMPLE){test #2}

Enter Long: CLOSE>mov(CLOSE,15,SIMPLE){test #3}

Enter Long: CLOSE>mov(CLOSE,20,SIMPLE){test #4}

Po przeprowadzeniu testu, dostępne będą cztery raporty (jeden dla każdej zmiennej optymalizacyjnej).

Gdy używanych jest kilka zmiennych optymalizacyjnych, liczba testów może być zwielokrotniona i zależy od tego, ile testów przypada na jedną zmienną (ponieważ te liczby mnoży się przez siebie).

Poniższy przykład pokazuje użycie wielu zmiennych optymalizacyjnych:

Enter Long: rsi(14)>OPT1

Close Long: rsi(14)<OPT2

Enter Short: rsi(14)<OPT2

Close Short: rsi(14)>OPT1

OPT1: minimum=20, maximum=40, step=10 {3 testy}

OPT2: minimum=70, maximum=80, step=10 {2 testy}

W powyższym przykładzie, OPT1 posiada trzy możliwe wartości (tj. 20, 30 i 40) podczas gdy OPT2 posiada dwie możliwe wartości (tj. 70 i 80). Powoduje to, że liczba kombinacji wynosi sześć (trzy pomnożone przez dwa) i tyle testów będzie przeprowadzonych, tak jak pokazano poniżej:

Test #

OPT1

OPT2

1

20

70

2

30

70

3

40

70

4

20

80

5

30

80

6

40

80

Liczba testów może szybko zwiększyć się (do maksymalnej ilości 32000). Na przykład, rozważmy poniższy system, zasadzający się na przecięciu średnich ruchomych:

Enter Long: cross(C,mov(c,OPT2,E))

Close Long: cross(mov(C,OPT1,E),C)

Enter Short: cross(mov(C,OPT1,E),C)

Close Short: cross(C,mov(C,OPT2,E))

OPT1: minimum=1, maximum=100, step=1 {100 testów}

OPT2: minimum=1, maximum=100, step=1 {100 testów}

W powyższym przykładzie, OPT1 i OPT2 mają po 100 możliwych wartości. Ta kombinacja wymaga do przeprowadzenia 10.000 (100 pomnożone przez 100) testów. Nawet szybki komputer, ten relatywnie prosty system może testować godzinami.

Bardziej odpowiednią metodą optymalizacji tego systemu jest zmniejszenie przedziału i/lub zwiększenie postępu w celu zredukowania liczby testów.

Liczba wymaganych testów dla każdej zmiennej optymalizacyjnej, wyświetlana jest na dole okienka dialogowego Optimization Variables.

___________________________________________________________________________

Przeglądanie raportów

Gdy testujesz typowy system (informacje o porównywaniu raportów znajdziesz na str. 396), program MetaStock śledzi dziesiątki tysięcy szczegółów tego testu. Informacje te są przechowywane w seriach raportów. Każdy raport dostarcza dodatkowych informacji o przeprowadzonym teście.

Summary Report

Summary Report zawiera zwięzłe podsumowanie każdego przeprowadzonego testu. Jeśli reguła transakcyjna nie zawiera żadnej zmiennej optymalizacyjnej, zostanie wyświetlony tylko jeden test.

Summary Report zostanie wyświetlony po zaznaczeniu systemu testującego (który posiada literę „R” po prawej stronie swojej nazwy) w okienku dialogowym System Tester i wybraniu przycisku Reports.

Szerokość kolumny w okienku Summary Report można regulować, przeciągając myszą pionową kreskę znajdującą się pomiędzy nagłówkami kolumn, aż kolumna osiągnie żądaną szerokość.

0x08 graphic

Print

Przesyła zawartość Summary Report do drukarki. (Zawartość tego raportu zależy od tego, który system transakcyjny został zaznaczony). Informacje na temat drukowania raportów, znajdziesz na str. 397.

Sort

Pozwala na sortowanie Summary Report. Po wybraniu przycisku Sort, ukaże się okienko dialogowe Optimization Column Sort, w którym możesz wybrać sposób sortowania (patrz str. 382).

Reports

Wyświetla okienko dialogowe System Report, które pozwala na przeglądanie wyników testowania zaznaczonego systemu transakcyjnego, w sposób bardziej szczegółowy. Więcej informacji o okienku dialogowym System Report, znajdziesz na str. 383.

Opis nagłówków w okienku dialogowym Summary Report

Test Number

Numer testu. Każdy test jest numerowany w kolejności, w jakiej został przeprowadzony.

Status

Oznacza stan przeprowadzonego testu. Stan może być „OK”, „Invalid” lub „Terminated”.

Stan raportu będzie Invalid, gdy wystąpi błąd matematyczny, taki jak dzielenie przez zero. Rezultat testu będzie dostępny, ale wiarygodność takiego testu jest wątpliwa.

Stan raportu będzie Terminated, gdy reguła transakcyjna nie może być przeanalizowana. Może to wystąpić np. wtedy gdy reguła transakcyjna wymaga 200 okresów czasowych, a załadowany wykres posiada mniej niż 200 okresów czasowych. Jeśli stan raportu będzie Terminated, to wybierając przycisk Reports wyświetlisz opis problemu.

Net Profit

Przedstawia zysk netto lub stratę netto osiągniętą przez system. Obejmuje wartość ceny zamknięcia ostatniego słupka otwartej pozycji (jeśli taka jest) na końcu testu. Pod pojęciem otwarta pozycja, rozumie się ostatnią długą lub krótką pozycję, która została otwarta, ale nie została zamknięta przez regułę transakcyjną do zakończenia testu.

Percent Gain or Loss

Procentowy zysk netto lub strata netto (w porównaniu do początkowej wartości kapitału) osiągnięta przez system. Obejmuje wartość ceny zamknięcia ostatniego słupka otwartej pozycji (jeśli taka jest) na końcu testu. Wartość ta nie jest dostępna jeśli w okienku dialogowym System Testing Options, na stronie Testing, w opcji Equity, zaznaczysz pole Points Only Test.

Total Trades

Całkowita liczba transakcji wygenerowana przez system. Liczba ta przedstawia tylko zamknięte transakcje i nie obejmuje otwartej pozycji, która może istnieć na końcu testu. Jednakże możliwa jest wartość zero, jeśli na początku testu pozycja została otwarta i na zakończenie testu jest nadal otwarta.

Winning Trades

Liczba zamkniętych transakcji, których przyniosły zysk.

Losing Trades

Liczba zamkniętych transakcji, które przyniosły zysk.

Average Win/Average Loss

Stosunek średniego zysku do średniej straty. Średni zysk jest obliczany przez dodanie wszystkich zysków z transakcji przynoszących zysk i następnie podzielenie tej sumy przez liczbę transakcji przynoszących zysk. Średnia strata obliczana jest w ten sam sposób.

OPT

Kolumna ta pokazuje wartość zmiennej OPT, używanej w teście. Na końcu Summary Report może być wyszczególnionych do 10 kolumn, po jednej kolumnie dla każdej zmiennej OPT.

Sortowanie raportów w Summary Report

Możesz sortować zawartość Summary Report, wybierając Sort z okienka dialogowego Summary Report.

Pamiętaj, że możesz także sortować za pomocą kliknięcia na nagłówku kolumny w okienku dialogowym Summary Report. Klikając na nagłówku kolumny przełączasz sortowanie na zmianę, raz w porządku rosnącym, raz w porządku malejącym.

0x08 graphic

Sort by

Wybierz kolumnę do sortowania z listy w polu Sort by. Sortowanie kolumn Net Profit lub Percent or Loss pozwoli zobaczyć, który test przynosi więcej pieniędzy.

Ascending

Sortuje raporty od najmniejszej do największej wartości.

Descending

Sortuje raporty od największej do najmniejszej wartości.

System Report

System Report zawiera trzy strony ze szczegółowymi raportami o zaznaczonym teście. Dodatkowo jest strona, która wyświetla reguły systemu transakcyjnego, zmienne optymalizacyjne i opcje testowania.

Arrows

Ta opcja używana jest do wyświetlania i usuwania strzałek kupna/sprzedaży oraz znaków wyjścia i stopów na zaznaczonym wykresie. Przycisk jest nieaktywny, gdy nie ma żadnego wykresu na ekranie.

Plot Equity

Gdy naciśniesz przycisk Plot Equity, zostanie otwarte nowe okienko wewnętrzne w aktualnie otwartym wykresie (który może być inny niż testowany wykres) z krzywą reprezentującą dzienny bilans kapitału testowanego wykresu. Początek krzywej odpowiada wielkości kapitału określonego w okienku dialogowym System Testing Options, w opcji Equity, w polu Equity. Krzywa kapitału rośnie bądź maleje, w zależności od osiągniętego zysku lub straty z transakcji. Krzywa kapitału może być kopiowana lub przesuwana podobnie jak wskaźnik (patrz str. 186).

Więcej informacji o używaniu krzywej kapitału, znajdziesz na str. 400.

Print

Wyświetla okienko dialogowe Print, z którego możesz wydrukować raport. Więcej informacji o drukowaniu raportów, znajdziesz na str. 397.

Inspect

Przycisk Inspect dostępny jest na stronach Trades i Equity. Po jego naciśnięciu wyświetla się okienko Trade Detail Report zaznaczonego systemu testującego. Więcej informacji o okienku Trade Detail Report, znajdziesz na str. 393.

Chcąc skopiować stronę Results do schowka lub zapisać na dyskietce, kliknij prawym przyciskiem myszy na tym raporcie i wybierz Copy lub Save to File z okienka, które się ukaże.

0x08 graphic
Strona Results

Strona Results dostarcza szczegółowego podsumowania zaznaczonego testu.

0x08 graphic

Arrows

Ta opcja używana jest do wyświetlania i usuwania strzałek kupna/sprzedaży oraz znaków wyjścia i stopów na zaznaczonym wykresie. Przycisk jest nieaktywny, gdy nie ma żadnego wykresu na ekranie.

Plot Equity

Gdy naciśniesz przycisk Plot Equity, zostanie otwarte nowe okienko wewnętrzne w aktualnie otwartym wykresie (który może być inny niż testowany wykres) z krzywą reprezentującą dzienny bilans kapitału testowanego wykresu. Początek krzywej odpowiada wielkości kapitału określonego w okienku dialogowym System Testing Options, w opcji Equity, w polu Equity. Krzywa kapitału rośnie bądź maleje, w zależności od osiągniętego zysku lub straty z transakcji. Krzywa kapitału może być kopiowana lub przesuwana podobnie jak wskaźnik (patrz str. 186).

Więcej informacji o używaniu krzywej kapitału, znajdziesz na str. 400.

Poniżej wyjaśniono informacje przedstawione w raporcie na stronie Results.

Total net profit

Przedstawia całkowity zysk netto lub stratę netto osiągniętą przez system. Obejmuje wartość ceny zamknięcia ostatniego słupka otwartej pozycji (jeśli taka jest) na końcu testu. Pod pojęciem otwarta pozycja, rozumie się ostatnią długą lub krótką pozycję, która została otwarta, ale nie została zamknięta przez regułę transakcyjną do zakończenia testu.

Percent gain/loss

Całkowity zysk netto osiągnięty przez system przedstawiony w procentach w stosunku do kapitału początkowego.

Initial investment

Ilość pieniędzy zainwestowanych na początku testu. (Wielkość tę określasz w okienku dialogowym System Testing Options, na stronie Testing, w opcji Equity, w polu Initial Equity, patrz str. 372).

Open position value

Pokazuje zysk/stratę z ostatniej otwartej pozycji (jeśli taka istnieje), która nie została zamknięta w momencie przeprowadzania testu. System automatycznie uwzględnia w raporcie zysk/stratę z tej pozycji.

Annual percent gain/loss

Całkowity zysk netto dla testu, wyrażony procentach jako roczna stopa zysku. Roczna stopa zysku/straty jest obliczana w następujący sposób:

roczna stopa zysku/straty = (365/liczba dni w teście) * całkowity zysk/strata netto wyrażony

w procentach w stosunku do kapitału początkowego

Interest earned

Całkowity zysk osiągnięty w czasie, gdy system jest poza rynkiem (tj. w czasie, gdy nie jest otwarta żadna pozycja).

Current position

Informuje o aktualnie zajmowanej pozycji na zakończenie testu (tj. long, short lub out).

Date position entered

Pokazuje datę otwarcia aktualnej pozycji.

Buy/Hold profit

Dochód osiągnięty w rezultacie strategii kup i trzymaj. Strategia kup i trzymaj oznacza, że kupiłeś w pierwszym załadowanym dniu wykresu i cały czas trzymasz tę pozycję. Dochód jest obliczany przy użyciu ceny w pierwszym dniu i ceny w dniu ostatnim. Prowizja za otwarcie pozycji jest pobierana z twojego konta.

Idealnie jest, gdy twój system przynosi większy dochód, niż strategia kup i trzymaj (tj. całkowity dochód netto jest większy, niż dochód ze strategii kup i trzymaj); w przeciwnym wypadku, system transakcyjny nie jest wart czasu i wysiłku.

Pamiętaj, że jeśli wartość Buy/hold profit jest ujemna to oznacza, że strategia sprzedaj i trzymaj może przynieść dochód.

Buy/Hold pct gain/loss

Dochód osiągnięty w rezultacie strategii kup i trzymaj wyrażony w procentach, w stosunku do kapitału początkowego.

Days in test

Całkowita liczba dni kalendarzowych w przeprowadzanym teście.

Annual B/H pct gain/loss

Dochód osiągnięty w wyniku strategii kup i trzymaj wyrażony jako roczna stopa zysku. Patrz wzór roczna stopa zysku/straty.

Total closed trades

Całkowita liczba zamkniętych transakcji. (Jeśli jest jakaś otwarta pozycja na końcu testu, nie jest ona uwzględniana).

Avg profit per trade

Średni zysk na transakcję (z wyłączeniem aktualnie otwartej pozycji).

Total long trades

Całkowita liczba zakończonych długich pozycji.

Winning long trades

Liczba zakończonych długich pozycji, które przyniosły zysk.

Commissions paid

Całkowita prowizja zapłacona podczas testu. (Ta wielkość nie obejmuje prowizji zamknięcia otwartej pozycji, która może istnieć na końcu testu).

Avg Win/Avg Loss ratio

Stosunek średniego zysku do średniej straty. Średni zysk jest obliczany przez dodanie do siebie wszystkich zysków z transakcji zakończonych zyskiem i podzielenie przez ilość tych transakcji. Średnia strata jest obliczana w ten sam sposób.

Total short trades

Liczba zakończonych krótkich pozycji.

Winning short trades

Liczba zakończonych krótkich pozycji, które przyniosły zysk.

Total winning trades

Liczba zakończonych długich i krótkich pozycji, które przyniosły zysk.

Amount of winning trades

Całkowity zysk ze wszystkich zyskownych transakcji. Nie obejmuje otwartej pozycji (jeśli taka jest) istniejącej na końcu testu. Dlatego, „Amount of winning trades” plus „Amount of losing trades” (poniżej) może nie być równe „Total net profit”.

Average win

Średni zysk wszystkich zyskownych transakcji.

Largest win

Najbardziej zyskowna transakcja.

Average lenght of win

Średnia liczba okresów czasowych (słupków) w zyskownych transakcjach.

Longest winning trade

Maksymalna liczba okresów czasowych (słupków) w zyskownej transakcji.

Most consecutive wins

Największa liczba zyskownych transakcji pod rząd.

Total losing trades

Liczba zakończonych długich i krótkich transakcji, które nie były zyskowne.

Amount of losing trades

Suma strat ze wszystkich stratnych transakcji. Nie obejmuje otwartej pozycji (jeśli taka jest) istniejącej na końcu testu. Dlatego, „Amount of winning trades” plus „Amount of losing trades” może nie być równe „Total net profit”.

Average loss

Średnia strata ze wszystkich stratnych transakcji.

Largest loss

Najbardziej stratna transakcja.

Average lenght of loss

Średnia liczba okresów czasowych (słupków) w stratnych transakcjach.

Longest losing trade

Maksymalna liczba okresów czasowych (słupków) w stratnej transakcji.

Most consecutive losses

Największa liczba stratnych transakcji pod rząd.

Total bars out

Całkowita liczba okresów czasowych (słupków), w czasie których system był poza rynkiem (tj. nie była otwarta ani długa ani krótka pozycja).

Longest out period

Maksymalna liczba okresów czasowych (słupków) w czasie, gdy system był poza rynkiem.

Average lenght out

Średnia liczba okresów czasowych (słupków) w czasie, gdy system był poza rynkiem.

System close drawdown

Największa wartość spadku kapitału, poniżej wartości początkowej w chwili, gdy pozycja jest zamykana i nie jest otwierana nowa. Pod uwagę brana jest cena, przy której pozycja jest zamykana. Gdy w momencie zamknięcia pozycji i nie otwierania nowej, kapitał nigdy nie jest mniejszy od wartości początkowej, to wartość ta wyniesie zero. Gdy w momencie zamykania pozycji i nie otwierania nowej, zdarzą się takie sytuacje, że kapitał jest mniejszy od wartości początkowej, to wartość ta będzie ujemna i pokazana będzie ta wartość, która jest największa (tj. największa z wartości obliczonych w następujący sposób: wartość kapitału w momencie zamykania pozycji minus kapitał początkowy).

System open drawdown

Największa wartość spadku kapitału, poniżej wartości początkowej, podczas utrzymywania otwartej pozycji. Pod uwagę brana jest cena zamknięcia słupka. Gdy podczas utrzymywania otwartej pozycji, kapitał nigdy nie jest mniejszy od wartości początkowej, to wartość ta wyniesie zero. Gdy podczas utrzymywania otwartej pozycji, zdarzą się takie sytuacje, że kapitał jest mniejszy od wartości początkowej, to wartość ta będzie ujemna i pokazana będzie ta wartość, która jest największa (tj. największa z wartości obliczonych w następujący sposób: wartość kapitału dla ceny zamknięcia słupka minus kapitał początkowy).

Max open trade drawdown

Największa wartość spadku kapitału, która przytrafiła się podczas utrzymywania otwartej pozycji, w porównaniu do wartości kapitału w momencie otwierania tej pozycji. Bierze się pod uwagę cenę zamknięcia tego słupka, przy którym osunięcie kapitału jest największe.

Profit/Loss index

Współczynnik ten porównuje transakcje zyskowne do transakcji stratnych..

Profit/Loss index łączy transakcje zyskowne i transakcje stratne w jedną wartość, która zawiera się w przedziale od -100 (najgorzej) do +100 (najlepiej).

Ujemna wartość współczynnika oznacza, że system transakcyjny przynosi straty. Im większa wartość tego współczynnika, tym więcej jest transakcji zyskownych, w porównaniu do transakcji stratnych.

Wartość współczynnika

Zysk/Strata

+100

wysoki zysk, brak strat

+50

zysk większy od straty

0

zysk równy stracie

-50

zysk mniejszy niż strata

-100

brak zysku, wysoka strata

Reward/Risk index

Współczynnik ten porównuje ryzyko do dochodu. W tym współczynniku, ryzyko jest definiowane jako System open drawdown (tj. największa wartość spadku kapitału, poniżej wartości początkowej, podczas utrzymywania otwartej pozycji). Dochód, definiowany jest jako Total net profit (tj. końcowy punkt krzywej kapitału).

Reward/Risk index łączy dochód i ryzyko w jedną wartość, która zawiera się w przedziale od -100 (bardzo ryzykownie) do +100 (bardzo bezpiecznie). Wartość Reward/Risk index wynosząca zero oznacza, że ryzyko i dochód wzajemnie się znoszą.

Wartość współczynnika

Dochód

Ryzyko

+100

wysoki

brak

+50

średni

średnie

0

brak

brak

-50

mały

średnie

-100

bardzo mały

wysokie

Buy/Hold index

Współczynnik ten pokazuje procentowe porównanie zysku z systemu do zysku ze strategii kup i trzymaj. Wartość „-50” oznacza, że zysk z systemu wynosił połowę (tj. 50%) zysku ze strategii kup i trzymaj. Wartość „25” oznacza, że zysk z systemu był o 25% większy niż zysk ze strategii kup i trzymaj. Wartość „0” oznacza, że zyski z tych dwóch systemów są równoważne.

Idealnie, jeśli twój system daje większy zysk niż strategia kup i trzymaj (tj. Buy/Hold index jest większy od zera); w przeciwnym wypadku szkoda czasu i wysiłku na zajmowanie się takim systemem.

Strona Trades

Strona Trades wyświetla każdą transakcję generowaną przez system testujący.

Szerokość kolumn na stronie Trades można regulować, przeciągając myszą pionową kreskę znajdującą się pomiędzy nagłówkami kolumn, aż kolumna osiągnie żądaną szerokość.

0x08 graphic

Arrows

Ta opcja używana jest do wyświetlania i usuwania strzałek kupna/sprzedaży oraz znaków wyjścia i stopów na zaznaczonym wykresie. Przycisk jest nieaktywny, gdy nie ma żadnego wykresu na ekranie.

Plot Equity

Gdy naciśniesz przycisk Plot Equity, zostanie otwarte nowe okienko wewnętrzne w aktualnie otwartym wykresie (który może być inny niż testowany wykres) z krzywą reprezentującą dzienny bilans kapitału testowanego wykresu. Początek krzywej odpowiada wielkości kapitału określonego w okienku dialogowym System Testing Options, w opcji Equity, w polu Equity. Krzywa kapitału rośnie bądź maleje, w zależności od osiągniętego zysku lub straty z transakcji. Krzywa kapitału może być kopiowana lub przesuwana podobnie jak wskaźnik (patrz str. 186).

Więcej informacji o używaniu krzywej kapitału, znajdziesz na str. 400.

Poniżej wyjaśniono informacje przedstawione w raporcie na stronie Trades.

Trade #

Kolejny numer transakcji generowanej w czasie przeprowadzania testu (stan poza rynkiem nie jest uwzględniany).

Trade Type

W tej kolumnie wyświetlony jest typ transakcji. Możliwe są następujące oznaczenia:

Out:

okres czasowy, podczas którego system jest poza rynkiem; w czasie tego okresu naliczane są odsetki, zgodnie ze stopą procentową zaznaczoną w polu Annual Interest Rate, w opcji Equity, na stronie Testing, w okienku dialogowym System Testing Options (patrz str. 371),

Long:

długa pozycja,

Short

krótka pozycja,

NSFL:

długa pozycja, która nie udała się z powodu niewystarczających środków na pokrycie prowizji (Not Sufficient Funds for Long trade); żadna więcej transakcja nie odbędzie się chyba, że wpłyną odsetki, które na tyle zwiększą kapitał, że będzie możliwe pokrycie prowizji,

NSFS:

krótka pozycja, która nie udała się z powodu niewystarczających środków na pokrycie prowizji (Not Sufficient Funds for Short trade); żadna więcej transakcja nie odbędzie się chyba, że wpłyną odsetki, które na tyle zwiększą kapitał, że będzie możliwe pokrycie prowizji,

Open Long:

długa pozycja, która nie została zamknięta na końcu testu; (pamiętaj, że raportowany zysk/strata dla tej transakcji jest wartością wyliczoną dla ostatniego słupka wykresu),

Open Short:

krótka pozycja, która nie została zamknięta na końcu testu; (pamiętaj, że raportowany zysk/strata dla tej transakcji jest wartością wyliczoną dla ostatniego słupka wykresu).

Entry Date

Data otwarcia pozycji.

Entry Time

Godzina otwarcia pozycji.

Close Date

Data zamknięcia pozycji.

Close Time

Godzina zamknięcia pozycji.

Profit

Całkowity zysk, osiągnięty w tej transakcji.

MAE

Maximum Adverse Excursion (maksymalnie niepomyślne odchylenie) jest najgorszą ceną intraday otwartej pozycji, mierzoną od ceny wejścia. Miarę ryzyka sformułował John Sweeney w czasopiśmie Technical Analysis of Stocks & Commodities.

Reason For Close

Opis wyjaśniający przyczynę zamknięcia pozycji.

Strona Equity

Strona Equity wyświetla dzień po dniu zmiany kapitału.

Szerokość kolumn na stronie Equity można regulować, przeciągając myszą pionową kreskę znajdującą się pomiędzy nagłówkami kolumn, aż kolumna osiągnie żądaną szerokość.

0x08 graphic

Arrows

Ta opcja używana jest do wyświetlania i usuwania strzałek kupna/sprzedaży oraz znaków wyjścia i stopów na zaznaczonym wykresie. Przycisk jest nieaktywny, gdy nie ma żadnego wykresu na ekranie.

Plot Equity

Gdy naciśniesz przycisk Plot Equity, zostanie otwarte nowe okienko wewnętrzne w aktualnie otwartym wykresie (który może być inny niż testowany wykres) z krzywą reprezentującą dzienny bilans kapitału testowanego wykresu. Początek krzywej odpowiada wielkości kapitału określonego w okienku dialogowym System Testing Options, w opcji Equity, w polu Equity. Krzywa kapitału rośnie bądź maleje, w zależności od osiągniętego zysku lub straty z transakcji. Krzywa kapitału może być kopiowana lub przesuwana podobnie jak wskaźnik (patrz str. 186).

Więcej informacji o używaniu krzywej kapitału, znajdziesz na str. 400.

Poniżej wyjaśniono informacje przedstawione w raporcie na stronie Equity.

Bar Number

Numer słupka, kolejno od lewej do prawej strony wykresu.

Date

Data każdego okresu czasowego (np. dnia) analizowana podczas testu.

Ending Position

Zajęta pozycja pod koniec tego okresu czasowego (np. pod koniec dnia). Na przykład, jeśli system zmienił pozycję długą na krótką, w polu tym będzie wyświetlone słowo „Short”.

Close (itd.)

Cena zamknięcia słupka odpowiadająca danej dacie. Nagłówek kolumny będzie wyświetlał Open, High, Low lub Close w zależności od tego, jaka cena została zaznaczona w polach Entry Price i Exit Price, w opcji Trade Price, na stronie Testing, w okienku dialogowym System Testing Options.

Current Equity

Wartość kapitału na końcu okresu czasowego (np. pod koniec dnia). Jest to wartość, która zostanie wyświetlona, gdy wybierzesz przycisk Plot Equity (patrz str. 385).

Change in Equity

Zmiana wartości kapitału od poprzedniego okresu czasowego.

Trade Detail Report

Trade Detail Report wyświetla szczegółowe informacje odpowiadające pojedynczej transakcji. Raport ten zostanie wyświetlony po podświetleniu wybranej transakcji na stronie Trades lub Equity i naciśnięciu przycisku Inspect.

0x08 graphic
Arrows

Ta opcja używana jest do wyświetlania i usuwania strzałek kupna/sprzedaży oraz znaków wyjścia i stopów na zaznaczonym wykresie. Przycisk jest nieaktywny, gdy nie ma żadnego wykresu na ekranie.

Plot Equity

Gdy naciśniesz przycisk Plot Equity, zostanie otwarte nowe okienko wewnętrzne w aktualnie otwartym wykresie (który może być inny niż testowany wykres) z krzywą reprezentującą dzienny bilans kapitału testowanego wykresu. Początek krzywej odpowiada wielkości kapitału określonego w okienku dialogowym System Testing Options, w opcji Equity, w polu Equity. Krzywa kapitału rośnie bądź maleje, w zależności od osiągniętego zysku lub straty z transakcji. Krzywa kapitału może być kopiowana lub przesuwana podobnie jak wskaźnik (patrz str. 186).

Więcej informacji o używaniu krzywej kapitału, znajdziesz na str. 400.

Poniżej wyjaśniono informacje przedstawione w tym raporcie.

Trade number

Numer transakcji generowanej podczas testu. (Pozycja poza rynkiem nie liczona).

Days in trade

Liczba dni kalendarzowych (niekoniecznie dni handlowych), które minęły od daty wejścia do daty zamknięcia.

Trade Type

Typ transakcji (na str. 390 znajdziesz więcej informacji o komunikatach w tym polu).

Bars in trade

Liczba okresów czasowych (słupków) w transakcji.

Entry date

Data otwarcia transakcji.

Entry price

Cena, po której została otwarta transakcja.

Entry commission

Zapłacona prowizja za otwarcie transakcji.

Close date

Data zamknięcia transakcji.

Close price

Cena, po której została zamknięta transakcja.

Close commission

Prowizja zapłacona przy zamknięciu transakcji.

Equity at entry

Ilość dostępnej gotówki, gdy transakcja była otwierana (przed zapłaceniem prowizji).

Equity at close

Ilość dostępnej gotówki, gdy transakcja była zamykana (po zapłaceniu prowizji wejścia i wyjścia).

Max Adv. Excursion

Miara ryzyka.

Open pos drawdown

Największe obsunięcie kapitału w tej transakcji (w porównaniu do ceny otwarcia transakcji).

Profit lub Loss

Zysk/strata w dolarach osiągnięta w tej transakcji.

Percent profit lub Percent loss

Procentowy zysk/strata osiągnięta w tej transakcji (na podstawie ceny wejścia i ceny wyjścia).

Strona System

Strona System w okienku dialogowym System Report wyświetla reguły transakcyjne, zmienne OPT oraz ich wartości i opcje zaznaczone w okienku dialogowym System Testing Options (patrz str. 371).

0x08 graphic

Arrows

Ta opcja używana jest do wyświetlania i usuwania strzałek kupna/sprzedaży oraz znaków wyjścia i stopów na zaznaczonym wykresie. Przycisk jest nieaktywny, gdy nie ma żadnego wykresu na ekranie.

Plot Equity

Gdy naciśniesz przycisk Plot Equity, zostanie otwarte nowe okienko wewnętrzne w aktualnie otwartym wykresie (który może być inny niż testowany wykres) z krzywą reprezentującą dzienny bilans kapitału testowanego wykresu. Początek krzywej odpowiada wielkości kapitału określonego w okienku dialogowym System Testing Options, w opcji Equity, w polu Equity. Krzywa kapitału rośnie bądź maleje, w zależności od osiągniętego zysku lub straty z transakcji. Krzywa kapitału może być kopiowana lub przesuwana podobnie jak wskaźnik (patrz str. 186).

Więcej informacji o używaniu krzywej kapitału, znajdziesz na str. 400.

Porównywanie raportów

Jeśli masz zaznaczone pole Compare w okienku dialogowym System Tester, możesz zaznaczyć kilka systemów transakcyjnych, w celu porównania ich na jednym papierze wartościowych (patrz str. 374). Jeśli wybrałeś przycisk Reports, gdy zaznaczone zostało pole Compare, ukaże się najświeższy Comparison Report. Na górze raportu jest nazwa papieru wartościowego, użytego do porównania systemów. Następnie przedstawione jest podsumowanie wszystkich systemów transakcyjnych testowanych na tym papierze wartościowym. Jeśli porównywany system transakcyjny zawiera zmienne optymalizacyjne, w okienku Comparison Report ukaże się ten, który jest najbardziej zyskowny. Wartość zmiennej OPT, używanej w systemie transakcyjnym, można znaleźć na stronie System w okienku dialogowym System Report (patrz str. 395).

Comparison Report jest doskonałym sposobem do szybkiego znalezienia najlepszego systemu testującego dla konkretnego papieru wartościowego. Możesz także szybko znaleźć aktualną pozycję transakcyjną, którą twój system transakcyjny poleca. Jedną z interesujących technik analizy papieru wartościowego jest porównywanie czterech lub więcej wiarygodnych systemów testujących. Jeśli większość systemów testujących jest zgodna co do aktualnej pozycji, to może być mądre zajęcie pozycji zgodnie z ich wskazaniami.

0x08 graphic

Klikając przycisk Reports w okienku Comparison Report, możesz przeglądnąć okienko Summary Report, itp. dla zaznaczonego systemu testującego.

Kolumny w okienku Comparison Report zawierają te same informacje co okienko Summary Report (patrz str. 381), za wyjątkiem niżej przedstawionych.

System Name

Nazwa testowanego systemu.

Current Position

Aktualna pozycja w teście (tj. long, short lub out).

Date Position Entered

Data otwarcia aktualnej pozycji.

Okienko dialogowe Drukuj

Wybierając przycisk Print z raportu, możesz drukować raporty generowane przez systemy testujące i eksploracyjne.

0x08 graphic

Nazwa

W tym polu dokonuje się wyboru drukarki z listy.

Zakres wydruku

Wybierz Wszystko chcąc wydrukować wprowadzony raport. Opcja Strony jest zawsze nieaktywna. (To okienko dialogowe jest standardowym okienkiem dialogowym systemu Windows i ta opcja nie ma zastosowania tutaj).

Drukuj do pliku

Zaznacz to pole, jeśli chcesz wysłać do drukarki wyjściowej wyraźnie określoną nazwę pliku. Plik może być skierowany do drukarki w późniejszym czasie, klikając prawym przyciskiem myszy na nazwie pliku w Microsoft Explorer i wybierając Drukuj.

Kopie

Wpisz liczbę kopii do wydruku.

Sortuj

Drukuj oddzielnie każdą stronę w dokumencie podczas drukowania wielu kopii (jeśli drukarka posiada taką opcję).

Kopiowanie raportów do schowka w Windows Clipboard

Możesz kopiować zawartość raportu systemu testującego do Windows Clipboard w celu użycia w innej aplikacji Windows.

Jak kopiować raporty do schowka

  1. Wyświetl raport.

  2. Kliknij gdziekolwiek w obrębie strony raportu.

  3. Naciśnij klawisze CTRL+C aby skopiować zawartość raportu do schowka. Możesz wtedy wkleić tę zawartość do innej aplikacji Windows.

___________________________________________________________________________

Używanie Maximum Profit System

Maximum Profit System” jest specjalnym systemem znajdującym się na samej górze listy systemów w okienku dialogowym System Tester. Ten system testujący jest „tylko do odczytu” (co oznacza, że nie może być edytowany). Jest on nieosiągalny i absolutnie nieprzewidywalny. Maximum Profit System pokazuje „najlepszy przypadek” scenariusza transakcji dla zaznaczonego papieru wartościowego. Decyzja o transakcji podejmowana jest na podstawie już znanych zmian cen (takiego luksusu ty nie masz). Jest to użyteczne jako miara odniesienia, a nie jako system transakcyjny.

Summary Report dla Maximum Profit System pokazuje wynik testu. Pamiętaj, że ten system nie generuje stratnych transakcji.

Wynik Maximum Profit System może być porównywany z wynikami innych systemów transakcyjnych. W tym porównaniu, Maximum Profit System będzie zawsze lepszy.

Pamiętaj, że Maximum Profit System maksymalizuje zysk. Jednakże, wskaźnik Reward/Risk może być nadal mniejszy od 100% w zależności od obsunięcia kapitału (dzięki prowizji) w pierwszej pozycji.

Przesunięcie transakcji i stopa procentowa są ustawione na zero, ponieważ nie są używane w Maximum Profit System.

Jak uruchomić Maximum Profit System

  1. Wybierz System Tester z menu Tools lub kliknij przycisk System Tester w standardowym pasku narzędzi.

  2. Zaznacz Maximum Profit System (znajdujący się na górze listy w okienku dialogowym System Tester).

  3. Po zakończeniu testowania, kliknij przycisk Reports.

___________________________________________________________________________

Uwagi dotyczące udoskonalaniu systemów transakcyjnych

Udoskonalenie zyskownych systemów transakcyjnych jest trudne. Nawet po wielu latach praktyki w udoskonalaniu systemów, nadal można łatwo zepsuć system. Tutaj przedstawiliśmy kilka uwag pomocnych w udoskonalaniu systemów.

Prawidłowe testowanie /optymalizacja

Jednym z najbardziej powszechnych błędów podczas testowania systemu i optymalizacji jest przypisanie reguł transakcyjnych do konkretnych danych liczbowych. Zanim podekscytowany pomyślisz, że znalazłeś „świętego Grala”, zapoznaj się z tym, co przedstawiono poniżej.

Prowizje

Zwróć szczególną uwagę na liczbę transakcji generowanych przez system testujący. Jeśli jest duża liczba transakcji i duży zysk upewnij się, że wyznaczyłeś prawidłową prowizję. Rezultat testu może znacznie odbiegać od siebie przy różnych prowizjach.

Transakcje zyskowne w porównaniu do transakcji stratnych

Łatwo jest porównać liczbą transakcji zyskownych do transakcji stratnych. Mimo to powinieneś także zwrócić uwagę na porównanie Average Win do Average Loss (patrz str. 387). Niektóre dobre systemy generują więcej stratnych transakcji niż zyskownych transakcji. Tak dzieje się, jeśli średni zysk z transakcji jest znacznie wyższy, niż średnia strata z transakcji.

Odsetki

Jeśli twój system jest tak ustawiony, że nalicza odsetki gdy jest poza rynkiem (patrz str. 371), optymalizacja może wskazać taki system, który najczęściej jest poza rynkiem. To oznacza, że system testujący, który traci na każdej transakcji, może okazać się najlepszym systemem jeśli był poza rynkiem, ponieważ zarabia głównie na odsetkach.

Można to z łatwością dowieść, ustawiając bardzo wysokie odsetki w polu Annual Interest Rate, na stronie Testing, w okienku dialogowym System Testing Options i następnie optymalizując taki system.

Pułapka Zig Zag oraz Lastvalue( )

Wskaźnik Zig Zag (patrz str. 578) filtruje ruchy cenowe. Pokazuje on tylko te ruchy cen, które są równe lub większe niż zaznaczona wartość. Jednakże, wskaźnik Zig Zag ustala to „po fakcie” (gracz giełdowy nie ma z tego korzyści). Z tego powodu, bądź ostrożny używając wskaźnik Zig Zag w systemie testującym. Daje on rezultat, który nie jest osiągalny w rzeczywistych transakcjach.

Funkcja Lastvalue( ) (patrz str. 287) patrzy w przyszłość, w której zwraca ostatnią wartość pola danych. Na przykład, system testujący można napisać tak, aby jego podstawą była przyszła cena lub wartość wskaźnika - coś nieosiągalnego w rzeczywistości. Chociaż ma to jakąś wartość poznawczą, to powinien być (jeśli kiedykolwiek) rzadko używany w systemie testującym, ponieważ generuje nieosiągalne informacje.

Używanie krzywej kapitału

Linia kapitału (patrz str. 383) jest wartościowym narzędziem. Szybkie spojrzenie na krzywą kapitału może wiele powiedzieć o systemie transakcyjnym.

Pamiętaj, że wyrysowana krzywa kapitału, kreślona jest w nowym okienku wewnętrznym aktualnie otwartego wykresu. Aktualnie otwarty wykres niekoniecznie musi być tym samym, na podstawie którego system testujący przeprowadził obliczenia.

Idealna krzywa kapitału powinna stopniowo wzrastać. Duże szczyty wskazują, że system jest niekonsekwentny i ryzykowny. System, który generuje ogromne zyski z jednej transakcji (np. podczas krótkiego krachu w 1987) jest w najlepszym wypadku niepewny.

Poniżej przedstawiono przykład krzywej kapitału, będącej wynikiem systemu testującego, który wygenerował bardzo nierówne (zmienne) zyski. System, który generuje takie rezultaty, nie powinien być brany pod uwagę.

0x08 graphic

Poniżej przedstawiono przykład krzywej kapitału, która konsekwentnie rośnie. Taka krzywa jest rezultatem generowanym przez dobry system.

0x08 graphic

Używanie poleceń Cut/Copy/Paste

Chcąc przyśpieszyć pisanie systemów testujących, możesz skorzystać z poleceń Cut/Copy/Paste (patrz str. 14). Dużo częściej niż nie, reguły transakcyjne w obrębie systemu są bardzo podobne, za wyjątkiem operatorów. Rozważmy poniższe reguły transakcyjne polegające na przecięciu prostej średniej ruchomej.

Enter Long: c>mov(c,39,s)

Close Long: c<mov(c,39,s)

Pamietaj, że jedyną różnicą pomiędzy tymi regułami transakcyjnymi jest znak operatora (tj. > i < ).

Zamiast wpisywać obydwie reguły transakcyjne, napisz regułę Enter Long, zablokuj ją (SHIFT+PRAWA STRZAŁKA), skopiuj ją (CTRL+C), a następnie wklej w pole Close Long. Oczywiście, rzeczywista użyteczność poleceń Cut i Paste jest wtedy, gdy wprowadzasz znacznie dłuższe reguły niż przedstawione powyżej.

___________________________________________________________________________

Uwagi techniczne

Ten rozdział wyjaśnia szczegóły techniczne odnoszące się do procesu testowania systemu.

Uwagi ogólne

Podczas procesu testowania, system zawsze zajmuje długą lub krótką pozycję, bądź jest poza rynkiem.

Aktualna pozycja jest determinowana przez reguły transakcyjne (patrz str. 359), wartości optymalizacyjne (patrz str. 377) oraz ustawione stopy (patrz str. 363).

W czasie procesu testowania, program MetaStock otrzymuje liczne (na ogół dziesiątki tysięcy) informacje, odpowiadające przeprowadzonym transakcjom.

Zyski/straty

Zysk i strata z pozycji długiej i krótkiej obliczane są na podstawie procentowych zmian cen papieru wartościowego, podczas utrzymywania pozycji. Nie ma to żadnego związku z liczbą trzymanych akcji. Gdy zajęta jest długa lub krótka pozycja, program przyjmuje, że cały dostępny kapitał jest inwestowany (nawet, jeśli dostępne fundusze są mniejsze niż aktualna cena akcji tego papieru wartościowego).

Na przykład, jeśli w czasie otwierania długiej pozycji, początkowa wartość kapitału wynosiła 1.000$ i cena papieru wartościowego wzrosła o 10% przy zamykaniu długiej pozycji, to kapitał wzrośnie o 100$ (tj. 10% z kwoty 1.000$), czyli do kwoty 1.100$. Jeśli ponownie została zajęta długa pozycja i cena papieru wartościowego znowu wzrosła o 10% przy zamykaniu tej pozycji, to kapitał wzrośnie o 110$ (tj. 10% z 1.100$), czyli do kwoty 1.210$. (przykład ten nie uwzględnia prowizji i odsetek).

Prowizje

Poniższy przykład wykorzystuje te same dane wejściowe co przykład powyżej (tj. kapitał początkowy w wysokości 1.000$, dwie długie transakcje przynoszące zysk w wysokości 10%). Jednakże, w tym przykładzie zakłada się prowizję wejścia 30$ i prowizję wyjścia 25$. (Pamiętaj, że w programie MetaStock, prowizje mogą być w dolarach lub w procentach).

Gdy otwierana jest pierwsza długa pozycja, od kapitału początkowego, w wysokości 1.000$, odejmowana jest prowizja wejścia, w wysokości 30$. Tak więc, początkowy kapitał będzie wynosić 970$. Cena papieru wartościowego następnie wzrasta o 10%, co daje 97$ zysku (tj. 10% z 970$). Przy zamykaniu pozycji, od 97$ pobierana jest prowizja wyjścia, w wysokości 25$, co daje zysk72$. Zysk ten dodawany jest do 970$ kapitału początkowego, co daje 1.042$.

Gdy otwierana jest druga długa pozycja, od kapitału 1.042$ pobierana jest prowizja 30$, co daje 1.012$. Cena papieru wartościowego następnie wzrasta o 10%, co daje 101.20$ zysku (tj. 10% z 1.012$). Przy zamykaniu pozycji, od 101.20$ pobierana jest prowizja wyjścia, w wysokości 25$, co daje zysk 76.20$. Zysk ten dodawany jest do 1.012$, co daje kapitał w wysokości 1.088,20$.

Jeśli nie wystarcza kapitału na prowizję wejścia, to program MetaStock spróbuje otworzyć pozycję, ale nie będzie w stanie tego wykonać. Ten typ transakcji zostanie wyświetlony na stronie Trades, w okienku dialogowym System Report, jako niedostateczne fundusze („NSFS” lub „NSFL”, patrz str. 391), a system niezwłocznie zajmie pozycję poza rynkiem. Żadna nowa transakcja nie zostanie zawarta do momentu, aż naliczone odsetki wystarczą na pokrycie kosztów prowizji.

Depozyt zabezpieczający

Pole "Margin Requirement %" w okienku dialogowym "System Testing Options" (patrz str. 371) określa procent funduszy jakie musisz przeznaczyć na depozyt zabezpieczający, by móc zawrzeć transakcję. Pozwala to na lewarowanie transakcji.

Na przykład, jeśli kupujesz papier wartościowy, który wymaga 20% depozytu zabezpieczającego (czyli wpłacasz 20% rzeczywistej ceny papieru wartościowego), to 10% wzrost ceny papieru wartościowego przyniesie 50% zysk. Rozważmy następujący przykład.

Dysponując kapitałem początkowym w wysokości 1.000$ otwieramy długą pozycję i w czasie jej zamykania cena wzrosła o 10%. Normalnie zysk wynosił by 100$ (10% z 1.000$). Jednakże, ponieważ transakcja wymaga wpłacenia jedynie 20% rzeczywistej ceny papieru wartościowego, to tak naprawdę dokonujemy zakupu waloru wartego 5.000$. 10% wzrostu od rzeczywistej wartości 5.000$ da 500$ zysku (tj. 10% z 5.000$). Te 500$ stanowi 50% zysku z początkowej kwoty 1.000$.

Odsetki

Gdy system jest poza rynkiem (tj. nie ma żadnej otwartej pozycji), naliczane są odsetki od aktualnie posiadanego kapitału, w wysokości zaznaczonej w okienku dialogowym System Testing Options (patrz str. 371).

Gdy otwierana jest długa lub krótka pozycja po okresie bycia poza rynkiem, program nalicza odsetki, które narosły w tym czasie.

Kolejność oszacowania

Gdy rozpoczyna się testowanie, program zakłada start z pozycji poza rynkiem.

Gdy system zajmuje pozycję poza rynkiem

Jeśli sygnał Enter Long lub Enter Short występuje w tym samym czasie, pierwszeństwo ma sygnał Enter Long.

Gdy generowany jest sygnał Enter Long lub Enter Short, aktualna pozycja poza rynkiem jest zamykana i jednocześnie naliczone odsetki dodawane są do posiadanego kapitału.

Gdy system zajmuje długą lub krótką pozycję

Gdy system zajmuje długą pozycję, wszystkie sygnały Enter Long są ignorowane. Gdy system zajmuje krótką pozycję, wszystkie sygnały Enter Short są ignorowane.

Wszystkie sygnały Enter Long będą ignorowane, jeżeli nie były aktywowane w okienku dialogowym System Testing Options (patrz str. 371). Ta sama zasada dotyczy sygnałów Enter Short.

Jeśli zostanie odebrany sygnał Enter Long gdy zajmowana jest krótka pozycja, to pozycja krótka zostanie zamknięta, a zostanie otwarta pozycja długa. Ta sama zasada ma zastosowanie do sygnału Enter Short.

Gdy zajmowana jest długa lub krótka pozycja, sygnały analizowane są w następującej kolejności:

Inne rezultaty obliczeń

Jeśli kiedykolwiek kapitał spadnie do lub poniżej zera (spadanie poniżej zera jest możliwe tylko gdy prowizje wyznaczone są w punktach zamiast w procentach), nie będą naliczane odsetki i nie będzie otwarta żadna transakcja dla pozostałej reszty testu. (Pamiętaj, że to nie dotyczy sytuacji, gdy zaznaczyłeś pole „Points Only Test” w okienku dialogowym System Testing Options).

Gdy wybrana jest jakaś wartość w polu Delay w okienku dialogowym System Testing Options (patrz str. 371), wszystkie inne sygnały i stopy są ignorowane, aż do momentu gdy minie zaznaczony okres czasowy. Jest tylko jeden wyjątek, gdy w okienku dialogowym Stops zaznaczone jest pole „Exit at Stop Price”. Jeśli to pole jest zaznaczone i zadziałał stop, Delay jest ignorowane.

Testowanie futures i towarów

Testowanie futures i towarów oparte jest na systemie testującym, który oblicza zmiany punktowe. Oznacza to, że taki system oblicza zysk/stratę wyłącznie w punktach, a nie w walucie.

Chcąc, aby system obliczał wyłącznie punkty, to zanim zostanie uruchomiony test, należy zaznaczyć pole „Points Only Test” w okienku dialogowym System Testing Options (patrz str. 371). Gdy taki test zostanie uruchomiony, to ignorowany jest kapitał początkowy, depozyt zabezpieczający i roczna stopa procentowa.

W czasie przeprowadzania testu, dopuszczalny jest spadek krzywej kapitału poniżej zera.

Parametry stop mogą być nadal wyrażane w punktach lub w procentach. Wartość procentowa obliczana będzie na podstawie ceny otwarcia pozycji, a nie na podstawie wartości kapitału w chwili otwarcia tej pozycji.

W teście punktowym, prowizje obliczane są pod następującymi warunkami:

Poniżej przedstawione są różnice w raportach, będących wynikiem systemu punktowego:

Szybkość obliczeń

Matematyczny koprocesor w komputerze znacząco obniży czas potrzebny do przeprowadzenia testu zysku. Typowy test, którego wykonanie zajmuje 10 minut na 486SX (bez koprocesora matematycznego), zajmie mniej niż pięć minut, jeśli jest zainstalowany 486DX.

Znaczna część czasu zużytego na przeprowadzenie testu, przeznaczana jest na zapisywanie raportów na dysk. A zatem, możesz zmniejszyć czas potrzebny na przeprowadzenie testu, używając szybszy dysk twardy.

Gdy liczba raportów generowanych przez test przekracza dopuszczalną ilość raportów możliwych do przechowywania (patrz str. 384), proces testowania znacznie zwalnia, ponieważ program MetaStock musi robić przerwy po przeprowadzeniu każdego testu, by skasować mniej zyskowny test.

Pojemność dysku

Gdy testowany jest system zawierający zmienne optymalizacyjne, wielkość dostępnej pamięci dysku wyświetlana jest ekranie. Jeśli wielkość dostępnego miejsca na dysku jest mniejsza niż około 40K, program MetaStock będzie automatycznie kasować mniej zyskowne testy, by zrobić miejsce na nowe testy.

Z powodu dużej ilości informacji gromadzonych dla każdego testu, raporty zajmują dużo miejsca na dysku. Raporty te przechowywane są w podfolderze o nazwie SREPORTS, w folderze MetaStocka. Raporty możesz skasować wybierając Delete w okienku dialogowym System Tester (patrz str. 357) lub wymazując pliki w podfolderze SREPORTS za pomocą Windows Explorer.

Funkcja input( ), zmienne i wskaźniki zawierające kilka wykresów

System Tester akceptuje oznaczone zmienne w regułach transakcyjnych. Na przykład, poniższa reguła transakcyjna Close Long jest prawidłowa:

myvar:=10;

c>mov(c,myvar,s);

System testujący nie może używać funkcji input( ) w sposób bezpośredni (patrz str. 285). Ta funkcja jest zarezerwowana wyłącznie dla wskaźników. Jednakże, jeśli reguła używa funkcji fml( ) (patrz str. 282) do oznaczenia rezultatów wskaźnika i wskaźnik używa funkcji input( ), funkcja fml( ) może być użyta wyłącznie do oznaczenia domyślnej wartości wejścia - System Tester nie wymaga podania wartości wejścia.

System testujący nie może używać funkcji input( ) (patrz str. 285). Ta funkcja jest zarezerwowana wyłącznie dla wskaźników.

Jeśli system testujący zawiera lub oznacza (używając funkcji fml( )) wielowykresowe wskaźniki, tylko ostatni wykres jest używany do obliczeń przez system testujący.

347

0x01 graphic

0x01 graphic

0x01 graphic

0x01 graphic

0x01 graphic

0x01 graphic

0x01 graphic

0x01 graphic

0x01 graphic

0x01 graphic

0x01 graphic

0x01 graphic

0x01 graphic

0x01 graphic

0x01 graphic

0x01 graphic

0x01 graphic

0x01 graphic

0x01 graphic

0x01 graphic

0x01 graphic

0x01 graphic

0x01 graphic

0x01 graphic

0x01 graphic

0x01 graphic

0x01 graphic

0x01 graphic

0x01 graphic

0x01 graphic

0x01 graphic

0x01 graphic

0x01 graphic

0x01 graphic

0x01 graphic

0x01 graphic

0x01 graphic

0x01 graphic

0x01 graphic

0x01 graphic

0x01 graphic

0x01 graphic

0x01 graphic

0x01 graphic

0x01 graphic



Wyszukiwarka

Podobne podstrony:
MetaStock Budowanie i testowanie systemu transakcyjnego
PRÓBA WYKORZYSTANIA TESTÓW KONCEPCJI PERFORMANCE STABILITY DO DIAGNOSTYKI POŁĄCZEŃ UKŁADU MIĘŚNIOWEG
Przedmiot PRI i jego diagnoza przegląd koncepcji temperamentu
3 Koncepcja Hollanda kariera
koncepcje z mediami
prezentacja koncepcja HUMANISTYCZNA psychologia
RI 12 2010 wspolczesne koncepcje
koncepcja kształcenia wielostronnego
Transalcje
transakcyjny SQL
06 Testowanie hipotez statystycznychid 6412 ppt
Psychologia ogólna Psychologiczne koncepcje sztuki Waligórska wykład 4 Gestalt
Metodologia badań z logiką dr Karyłowski wykład 7 Testowalna w sposób etycznie akceptowalny
Koncepcja zdrowia w medycynie

więcej podobnych podstron