Metatrader 4 szablon forex trading


Szablony i profile Szablon to zestaw parametrów okna wykresu, który można zastosować do innych wykresów. W szablonie można zapisać: typ wykresu i kolorowy schemat wykresu koloru linia OHLC pokazywana lub ukryta załączony doradca eksperta i jego parametry nałożone niestandardowe i techniczne wskaźniki wraz z ich ustawieniami analiza linii separatorów dni. Kiedy szablon zostanie nałożony na wykres, zapamiętane ustawienia są takie, które są dołączone do bezpieczeństwa i okresu. Na przykład można utworzyć szablon zawierający wskaźniki MACD, RSI i Moving Average, a następnie użyć go do innych map. W takim przypadku okna wykresów będą miały ten sam widok dla różnych symboli i okresów. Szablony są przechowywane w katalogu TEMPLATES jako pliki TPL. Szablon utworzony raz może być użyty w nieograniczonej ilości razy. Podstawowy szablon (DEFAULT. TPL) jest tworzony podczas instalacji terminala. Zostanie on zastosowany automatycznie do utworzenia nowego okna wykresu. W przyszłości można go zmienić za pomocą właściwości aktywnego okna wykresu. Aby utworzyć nowy szablon, należy wykonać szablon Zapisywanie szablonu. polecenie menu, polecenie menu kontekstowego wykresu o tej samej nazwie lub naciśnięcie przycisku paska narzędziowego quotChartsquot. W rezultacie na podstawie danych aktywnego okna wykresu zostanie utworzony nowy szablon. Te same czynności należy wykonać, aby zmodyfikować szablon, ale zamiast nowego pliku należy wybrać istniejący szablon. Aby nałożyć szablon w oknie wykresu, należy wybrać żądany plik w menu zarządzania szablonami lub w dowolnym dostępnym folderze w oknie quotOpenquot, które można wywołać za pomocą szablonu Szablon w arkuszu 150 Szablon 150. menu. Polecenie menu Szablon i polecenie menu kontekstowego o takiej samej nazwie pozwalają usuwać szablony. Uwaga: nie można usunąć cytowanego zapytania DEFAULT. TPL. Profile zapewniają wygodny sposób pracy z grupami wykresów. Po otwarciu profilu każdy wykres z jego ustawieniami znajduje się dokładnie w tym samym miejscu, w którym był wcześniej, przy zapisie profilu. Wszystkie zmiany na wszystkich oknach na danej liście są automatycznie zapisywane w bieżącym profilu. Listę wszystkich okien wykresu bieżącego profilu można znaleźć w menu quotWindowquot. Nazwa bieżącego profilu jest wyświetlana w jednym z okien paska stanu i zaznaczona w menu zarządzania profilami. Po zainstalowaniu terminala profil jest domyślnie tworzony (DEFAULT). Początkowo przechowywane są w niej cztery podstawowe pary walutowe: quotEURUSDquot, quotUSDCHFquot, quotGBPUSDquot i quotUSDJPYquot. Profile są zarządzane z jednego menu, które można wywołać w poleceniach menu QuicFile 150 Profilesquot, naciskając przycisk na pasku narzędziowym quotStandardquot. lub klikając przycisk myszy na bieżącym profilu profilu na pasku stanu. Aby użyć innego profilu, należy wybrać żądaną nazwę z listy w tym menu. W tym momencie nowy profil zostanie otwarty i stanie się aktualny. Polecenie quotSave Databasequot zapisuje bieżący profil w stanie w chwili rozpoczęcia wykonywania polecenia pod nowym nazwiskiem. Nowy profil jest kopią poprzedniego i staje się aktualny. Można usuwać profile za pomocą polecenia quotRemove Profilequot. Polecenie quotNext Profilequot i Ctrl F5 otwierają wszystkie dostępne profile pojedynczo, a przyciskiPrevious Profilequot i przyspieszające klawisze Shift F5 umożliwiają wyszukiwanie profili w odwrotnym kierunku. Uwaga: Bieżącego profilu i domyślnie (DEFAULT) nie można usunąć. Wstępnie zdefiniowany profil można przypisać do konta handlowego w terminalu klienta. Ten profil musi mieć nazwę, która pokrywa się z numerem konta handlowego. Jeśli w trakcie danego konta handlowego jest odpowiedni profil, zostanie on automatycznie otwarty. Jeśli nie ma wstępnie zdefiniowanego profilu, bieżący profil pozostanie aktywny. MetaTrader 4 - Przykłady Handel portfelem w MetaTrader 4 Magnus ab integro saeclorum nascitur ordo Publius Vergilius Maro, Eclogues Wstęp Zasada portfolio znana jest od dawna. Poprzez dywersyfikację funduszy w kilku kierunkach inwestorzy tworzą swoje portfele, zmniejszając ogólne ryzyko strat i zwiększając płynność wzrostu dochodów. Teoria portfela zyskała na popularności w 1950 roku, kiedy Harry Markowitz zaproponował pierwszy model matematyczny portfela. W latach 80. zespół badawczy z Morgan Stanley opracował pierwszą strategię handlu rozprzestrzenianiem, która utorowała drogę do grupy strategii neutralnych dla rynku. Dzisiejsza teoria portfela jest różnorodna i złożona, przez co prawie niemożliwe jest opisanie wszystkich strategii portfolio w jednym artykule. Dlatego rozważymy tutaj tylko niewielki zakres strategii spekulacyjnych wraz z ich możliwą implementacją na platformie MetaTrader 4. Niektóre definicje stosowane w tym artykule są następujące: Zestaw portfeli (koszyk, instrument syntetyczny) w wielu instrumentach handlowych o obliczonych optymalnych wolumenach. Pozycje pozostają otwarte przez pewien czas, są śledzone jako jedno i zamykane wspólnym wynikiem finansowym. Dostosowanie portfela (koszyk, instrument syntetyczny) zmieniającego zestaw instrumentów portfelowych i lub ich wielkości w celu minimalizacji strat lub ustalenia wyników pośrednich. Syntetyczna liczba pozycji syntetycznych (liczba przypadków zakupu lub sprzedaży portfela). Wirtualny wynik finansowy, który można uzyskać, utrzymując pozycję w określonym przedziale czasu. Klasyczne portfele inwestycyjne są zwykle stosowane na rynkach akcji. Jednak takie podejście nie pasuje do rynku Forex, ponieważ większość portfeli ma charakter spekulacyjny. Są one tworzone i sprzedawane nieco inaczej. Jeśli chodzi o Forex, handel portfelem jest w rzeczywistości transakcją handlu wieloma walutami, jednak nie wszystkie strategie dotyczące wielu walut są portfelami. Jeśli symbole są sprzedawane niezależnie i nie jest śledzona całkowita dynamika wyników, jest to handel wieloma symbolami. Jeśli kilka niezależnych systemów handluje na jednym rachunku transakcyjnym, jest to portfel strategii. W tym przypadku rozważymy obrót portfela w wąskim znaczeniu, gdy pozycja syntetyczna składa się z kilku symboli i jest zarządzana później. Zasady Rozwój portfela składa się z dwóch etapów: wyboru symboli oraz obliczania partii i kierunków dla nich. Omówimy tutaj tylko kilka prostych metod opracowywania portfela wraz z próbkami algorytmów. W szczególności proponujemy metodę zwykłych najmniejszych kwadratów (OLS) i analizę głównych składników (PCA) jako podstawę. Więcej informacji można znaleźć tutaj: Podczas tworzenia portfolio zazwyczaj konieczne jest zdefiniowanie pożądanego zachowania wykresu portfela. Wykres portfela reprezentuje zmiany całkowitego zysku wszystkich pozycji wchodzących w skład portfela w pewnym przedziale czasowym. Optymalizacja portfela to poszukiwanie kombinacji partii i kierunków najlepiej pasujących do pożądanego zachowania portfela. Na przykład w zależności od naszego zadania może być konieczne, aby portfel miał powtórkę do wartości średniej lub atrybutów wyraźnie wyznakowanego trendu lub jego wykresu powinien być podobny do wykresu funkcji. Trzy typy portfela (trend, płaska, funkcja): Portfel może być reprezentowany przez następujące równanie: A, B, C to szeregy czasowe odpowiadające symbolom portfela k1, k2, k3. są partiami symboli (pozytywny kup, negatywna sprzedaż) Funkcja docelowa F (ustalona przez wartości w punktach szeregowych czasowych) Jest to równanie regresji wielowymiarowej liniowej z zerowym określeniem stałym. Jego korzenie można łatwo znaleźć za pomocą OLS. Przede wszystkim szeregy czasowe powinny być porównywalne, co oznacza, że ​​punkty cenowe powinny być wprowadzone do waluty depozytowej. W takim przypadku każdy element każdej serii czasu będzie reprezentował wirtualną wartość zysku z pojedynczej partii odpowiedniego symbolu w danym czasie. Wstępne logarytmaty cen lub różnice cen są zwykle zalecane w zadaniach statystycznych. Jednak w naszym przypadku może to być niepotrzebne, a nawet szkodliwe, ponieważ krytyczne dane dynamiki ogólnych symboli zostaną zniszczone po drodze. Funkcja docelowa definiuje typ wykresu. Wartości funkcji celu należy wstępnie obliczyć w każdym punkcie. Na przykład, przy rozwijaniu prostego portfela rosnącego (portfela trendów), portfel docelowy będzie miał wartości 0, 1S, 2S, 3S, itd., Gdzie S to przyrost wartości pieniężnej, do której należy zwiększyć portfel na każdym pasku na z góry określonym przedziale. Algorytm OLS dodaje serie czasowe A, B, C. tak, że ich suma szuka powtórzenia docelowej tabeli funkcji. Aby to osiągnąć, algorytm OLS minimalizuje sumę kwadratowych odchyleń między sumą serii a funkcją docelową. Jest to standardowe zadanie statystyczne. Nie jest wymagane szczegółowe zrozumienie działania algorytmu, ponieważ można użyć gotowej biblioteki. Może się również zdarzyć, że funkcja docelowa zawiera tylko wartości zerowe (płaskie portfolio). W tym przypadku należy dodać dodatkowy limit sumy sumy (na przykład k1 k2 k3. 1), aby pominąć rozwiązanie równania regresji z zerowymi korzeniami. Alternatywą jest przesunięcie terminu równania na prawo, czyniąc go funkcją docelową, przyjmującą stosunek -1, podczas gdy pozostałe terminy są optymalizowane jak zwykle. W tym przypadku przyrównujemy koszyk instrumentów do wybranego instrumentu, tworząc w ten sposób portfel spreadów. Na koniec bardziej zaawansowany algorytm PCA może być wykorzystany do opracowania takich portfeli. Wykorzystuje macierz kowariancji przyrządu do obliczania wektora współczynnika odpowiadającego hiperlatii przekroju chmurki punktów z minimalną wariancją resztową portfeli. Ponownie, nie musisz zrozumieć algorytmu tutaj, ponieważ możesz skorzystać z gotowej biblioteki. Algorytmy Teraz nadszedł czas na wdrożenie wszystkich pomysłów opisanych powyżej przy użyciu języka MQL. Będziemy używać dobrze znanej biblioteki matematycznej ALGLIB przystosowanej do MT4. Czasami mogą pojawić się problemy podczas instalacji, więc będę więcej na ten temat. Jeśli na komputerze jest zainstalowanych kilka terminali, bardzo ważne jest, aby znaleźć właściwy folder danych, ponieważ kompilator nie widzi biblioteki, jeśli znajduje się w innym folderze danych terminali. Instalowanie biblioteki ALGLIB: pobierz bibliotekę (mql5encode11077), rozpakuj plik zip otwórz folder włącz i znajdź katalog Math wewnątrz uruchom platformę etarader 4, do której powinna zostać dodana biblioteka wybierz polecenie menu: Otwórz folder plików otwórz MQL4 i dołącz kopię podfolderu Folder matematyczny do folderu Dołącz do terminala sprawdź wyniki: pliki mhq powinny znajdować się wewnątrz MQL4IncludeMathAlglib. Pierwszy kluczowy etap: konwersja szeregów czasowych z punktów cenowych na walutę depozytową. Aby to osiągnąć, musimy napisać specjalną funkcję do obliczania ceny kontraktowej w dowolnym momencie. Tradycyjna funkcja MarketInfo nie jest do tego odpowiednia, ponieważ zapewnia poprawną cenę punktową tylko dla ostatniego paska wykresu. Problem polega na tym, że odchylenia nieuchronnie pojawiają się w historii jako punkty cen niektórych symboli zmienia się stale. Dlatego ważne jest, aby dokładnie skonwertować serie danych w celu uniknięcia znacznych nierównowagi w portfelu. Poniżej przedstawiono przykładową funkcję obliczania ceny kontraktu: Ta funkcja będzie zawsze używana w przyszłości. Działa z parami walut, indeksami, kontraktami terminowymi i kontraktami CFD. Poza tym uwzględnia także prefiksy symboli i postfixów (FXprefix, FXpostfix) stosowane przez niektórych brokerów. Wynik jest konwertowany na walutę docelową (ChartCurrency). Jeśli pomnożymy zwracaną wartość funkcji przez bieżącą cenę symbolu, otrzymujemy cenę symboli losowych. Po zsumowaniu wszystkich cen kontraktu w portfelu z uwzględnieniem partii otrzymujemy cenę całego portfela. Jeśli pomnożymy wartość funkcji przez różnicę cen w czasie, otrzymamy zysk lub stratę wygenerowaną podczas tej zmiany ceny. Następnym krokiem jest obliczenie wirtualnego zysku dla wszystkich pojedynczych kontraktów. Obliczenia są realizowane jako dwuwymiarowa tablica, w której pierwszy wymiar jest indeksem punktowym w obliczonym przedziale, podczas gdy drugi wymiar jest indeksem symboli (rozmiar drugiego wymiaru może być ograniczony przez pewną liczbę, wiedząc, że ilość symboli w portfel oczywiście nie będzie go przekraczał): Po pierwsze, powinniśmy przechowywać ceny początkowe dla wszystkich symboli (na lewej granicy obliczonego przedziału). Następnie różnica w cenie początkowej i końcowej jest obliczana w każdym punkcie obliczonego przedziału i pomnożona przez cenę kontraktu. Za każdym razem przesuwamy się w prawo o jeden przedział czasowy w pętli: W powyższym fragmencie kodu, czas zerowania obliczonej interwału, lewa granica, czas limitu czasu obliczonych przedziałów, prawa granica, Oś czasu liczba minut na jednym pasku roboczego przedział czasowy, wskazuje całkowitą liczbę wykrytych punktów w obliczonym przedziale. W powyższym przykładzie użyto reguły ścisłej zgodności z etykietą czasu. Jeśli nie ma paska dla określonej etykiety czasowej, nawet w jednym symbolu, pozycja jest pomijana i przesunięcie następuje do następnego. Zarządzanie znakami czasu jest bardzo ważne dla wstępnego przygotowania danych, ponieważ niedopasowanie danych na różnych symbolach może spowodować poważne zniekształcenia w portfelu. Przykładowe dane portfela dla trzech symboli i niezależnej funkcji (parabola pierwiastka kwadratowego): Po przygotowaniu danych nadszedł czas, aby wysłać je do modelu optymalizacji. Optymalizację należy przeprowadzić za pomocą funkcji LRBuildZ, LSFitLinearC i PCABuildBasis z biblioteki ALGLIB. Funkcje te zostały krótko opisane w samej bibliotece, a także na oficjalnej stronie internetowej projektu: alglibdataanalysislinearregression. php i tutaj: alglibdataanalysisprincipalcomponentsanalysis. php. Po pierwsze, upewnij się, że zawiera bibliotekę: Następny fragment kodu, biorąc pod uwagę cechy modelu, powinien być ustawiony dla każdego modelu optymalizacji. Po pierwsze, zbadaj model tendencji próbki: na początku może to wydawać się skomplikowane, ale w zasadzie wszystko jest proste. Na początku obliczana jest liniowa funkcja trendu, a jej wartości są umieszczane w tablicy MODEL. Parametr ModelGrowth ustawia wartość wzrostu dla całego przedziału obliczeń (wartość, o którą portfel powinien rosnąć w walucie depozytu). Parametry ModelAbsolute i ModelPhase są opcjonalne i nie mają znaczenia na obecnym etapie. Matryca jest tworzona dla obliczeń (MATRIX). Dane dotyczące wirtualnego zysku wszystkich zamówień z tablicy EQUITY oraz wartości docelowych funkcji z tablicy MODEL są pobierane do ostatniego rzędu macierzy. Liczba zmiennych niezależnego równania regresji jest przechowywana w zmiennych. Funkcja LRBuildZ jest następnie wywoływana w celu wykonania obliczeń. Następnie, reguły regresji regresji są zapisywane do tablicy ROOTS za pomocą funkcji LRUnpack. Cała złożona matematyka znajduje się w bibliotece, a użytkownik może korzystać z gotowych funkcji. Główna trudność ma tu charakter techniczny i związana z prawidłowym ustawieniem wszystkich połączeń oraz zachowaniem danych podczas przygotowywania. Ten sam fragment kodu może być użyty dla dowolnej funkcji. Po prostu zastąp zawartość tablicy MODEL swoją funkcją docelową. Poniżej przedstawiono przykładową funkcję parabolicznego obliczania funkcji parabolicznych: Poniżej znajduje się przykład bardziej złożonej funkcji przedstawiającej sumę trendu liniowego i oscylacji harmonicznych: W powyższym przykładzie możliwe jest zarządzanie wielkością trendu (za pomocą parametru ModelGrowth) i oscylacją amplituda (za pomocą parametru ModelAmplitude). Liczba cykli oscylacji jest ustawiana przez ModelCycles, natomiast przesunięcie fazy oscylacji odbywa się za pomocą ModelPhase. Dodatkowo należy wykonać przesunięcie pionowe, aby funkcja była równa zero w punkcie zerowym, aby zapewnić poprawność obliczeń: przykłady ułatwiają opracowanie niestandardowej funkcji. Możesz utworzyć dowolny typ funkcji w zależności od zadania i konfiguracji handlu. Im bardziej złożony jest typ funkcji, tym trudniej jest wybrać najlepsze rozwiązanie, ponieważ rynek nie jest zobowiązany do przestrzegania funkcji. W tym przypadku funkcja jest tylko przybliżeniem. Nie potrzebujesz funkcji celu do tworzenia spreadów i zwracania płaskich portfeli. Na przykład, jeśli chcesz utworzyć rozpiętość między dwoma koszami symboli, zoptymalizowany koszyk zostanie pobrany do głównej części macierzy, podczas gdy koszyk referencyjny zostanie użyty jako funkcja docelowa i pobrany do ostatniej kolumny macierzy jako suma kwota: Poniżej znajduje się przykładowe obliczenie płaskiego portfela, w którym funkcja LSFitLinearC sprawia, że ​​portfel jest możliwie symetryczny wokół zera w obliczonym przedziale: Poniżej znajduje się kolejny ważny przykład obliczenia płaskiego portfela z minimalną wariancją przy użyciu metody PCA. W tym przypadku funkcja PCABuildBasis oblicza współczynniki tak, aby wykres portfela był jak najbardziej skompresowany w przedziale obliczeniowym: Jeśli czujesz się przytłoczony wszystkimi tymi pojęciami matematycznymi, nie martw się. Jak już powiedziałem, nie musisz zrozumieć wszystkich danych matematycznych w celu rozwijania i używania portfeli. Zasadniczo kolejność etapów wygląda następująco: Obliczanie zysku wirtualnego dla symboli portfela za pomocą pojedynczych partii Obliczanie wykresu i handel przy użyciu portfela Po uzyskaniu tablicy ROOTS optymalnych stosunków za pomocą szeregu procedur, nadszedł czas, aby przekształcić wskaźniki w dużo. Aby to zrobić, potrzebujemy normalizacji: skalowania i zaokrąglania. Ustawienie wymaganej skali ułatwia handel. Zaokrąglanie jest konieczne w celu dostosowania wielkości partii do wymagań brokera. Czasami zaleca się normalizację według marży portfela, ale ta metoda ma poważne niedogodności (ponieważ margines poszczególnych symboli zmienia się i może się zmienić). Dlatego znacznie rozsądniej jest przeprowadzić normalizację poprzez cenę portfela lub jego zmienność. Poniżej znajduje się prosty przykład algorytmu normalizacyjnego według ceny portfela: Tutaj cena portfela jest porównywana do wymaganej za pomocą proporcji. PortfolioValue wymagana cena portfela, całkowita wartość całkowita ceny portfela z domyślnymi wskaźnikami, współczynnik skalowania scalevolume, pojemność partii LotsDigits, tablica LOTS z wartościami partii odpowiednich do handlu. Wartości partii tworzą ostateczną strukturę portfela. Partie pozytywne odpowiadają pozycji długiej, a partie negatywne krótszej. Wiedząc strukturę portfela, możemy wydrukować wykres i przeprowadzić transakcje z portfelem. Poniżej znajduje się przykładowa struktura portfela po normalizacji: Wykres portfela jest wykreślany tylko przez ceny zamknięcia i wyświetlany w oddzielnym oknie podrzędnym wskaźnika. Aby zbudować wykres portfela, musimy obliczyć każdy pasek wykresu w taki sam sposób, jak wcześniej obliczono wirtualne zyski dla oddzielnych symboli. Jednak teraz są one streszczone w odniesieniu do przypisanych partii: w tym fragmencie kodu możemy zobaczyć, że wykres jest wykreślony pomiędzy początkowe i końcowe bary: drawbegin i drawend. Wartość portfela jest równa sumie zysków we wszystkich symbolach obliczonych jako różnica cen pomnożona przez cenę kontraktu i poprzednio wyliczoną partię. Pominąłem aspekty techniczne związane z buforami wskaźników, formatowaniem i tym podobne. Przykład gotowego wskaźnika portfela opisano w poniższej sekcji. W tym miejscu można sprawdzić budowę wykresu próbnego (dolne okno wskaźnika) z dołączonym grafem funkcji celu: W tym przypadku funkcja celu docelowego jest pierwiastkiem kwadratowym wykonanym symetrycznie względem punktu odniesienia (ModelAbsolutetrue). Obliczone granice przedziałów są wyświetlane jako czerwone przerywane linie, podczas gdy wykres portfela ma tendencję do przemieszczania się wzdłuż linii funkcji celu zarówno w obliczonym interwale, jak i poza nim. Możesz przeprowadzić analizę techniczną wykresów portfelowych podobnych do zwykłych wykresów cen symboli, w tym zastosować średnie ruchome, linie trendów i poziomy. Rozszerza to możliwości analityczne i handlowe, umożliwiając wybór struktury portfela do kształtowania określonego układu handlowego na wykresie portfela, na przykład korekta po impulsie trendu, osłabienie trendu, wyjście z mieszkania, wykupienie wyprzedaży, zbieżność - rozbieżność, przełom, poziom konsolidacji i innych ustawień. Na jakość konfiguracji transakcji wpływa skład portfela, metoda optymalizacji, funkcja celu i wybrany segment historii. Konieczna jest znajomość zmienności portfeli, aby wybrać odpowiedni wolumen obrotu. Ponieważ wykres portfela oparty jest przede wszystkim na walucie depozytowej, można oszacować zakres wahań portfela i potencjalną głębokość wyodrębnienia bezpośrednio w tej walucie, korzystając z trybu kursora krzyżowego i pociągając za sobą. System transakcyjny powinien opierać się na właściwościach portfela i statystykach konfiguracji. Do tej pory nie wspominaliśmy o tym, że zachowanie portfela może drastycznie się zmienić poza interwałem optymalizacji. Płyta może przekształcić się w tendencję, podczas gdy tendencja może się odwrócić. System handlu powinien również brać pod uwagę, że właściwości portfela są podatne na zmiany w czasie. Ten temat zostanie omówiony poniżej. Operacje handlowe z portfelem obejmują jednorazowe kupowanie wszystkich symboli portfela z obliczonymi wolumenami. Dla wygody, byłoby rozsądne posiadanie specjalnego doradcy ds. Ekspertów, aby wykonać wszystkie rutynowe czynności, w tym uzyskiwanie danych o strukturze portfela, przygotowanie syntetycznych pozycji, śledzenie poziomów wprowadzania, ustalanie zysków i ograniczanie strat. Będziemy stosować następujące warunki dotyczące operacji EA: długie pozycje w portfelu syntetycznym i krótkie pozycje portfela syntetycznego (gdzie długie pozycje są zastępowane krótkimi i vice versa). EA powinna mieć możliwość gromadzenia pozycji, śledzenia objętości syntetycznych, a także dokonywania kompensowania i przekształcania portfela. Przykładowa EA jest rozważana w następnej sekcji, chociaż jej struktura nie jest wyjaśniona ze względu na ograniczenia dotyczące objętości artykułu. Poniżej znajduje się przykładowy minimalistyczny interfejs dla portfela EA: Czasami konieczne jest zbudowanie nie jednego, ale kilku portfeli. W najprostszym przypadku jest to potrzebne do porównania dwóch portfeli. Niektóre zadania wymagają zbudowania całej serii portfela w jednym segmencie historii, co daje zestaw portfeli zawierających określone wzorce. W celu realizacji takich zadań wymagany jest algorytm generujący portfele zgodnie z określonym szablonem. Przykład wdrożenia takiego wskaźnika można znaleźć w następnej sekcji. W tym miejscu opiszemy tylko najbardziej krytyczne cechy operacji. Musimy zorganizować tablicę struktur, aby zapisać dane wielu portfeli, na przykład: w tym fragmencie kodu DIMSIZE ustawia maksymalny rozmiar przechowywania portfeli. Struktura organizowana jest w następujący sposób: tablica symboli symboli, tablica partii dla symboli portfela, łańcuch tekstów formuł z równaniem portfela, kierunek portfela kierunku (długi lub krótki), atrybut filtru filtra (includedexcluded). Zastosowanie tablicy struktur jest wygodniejsze i rozsądniejsze niż używanie oddzielnych tablic. Tablica struktury może również zostać utworzona do przechowywania tablic buforów wykresów graficznych: Portfele w zestawie różnią się w zależności od kombinacji symboli. Te kombinacje mogą być zdefiniowane wcześniej lub generowane zgodnie z określonymi regułami. Praca z zestawem portfeli może obejmować kilka etapów w zależności od zadania. Poniższa sekwencja etapów: Obliczanie wykresów oddzielnych portfeli Najpierw oddzielne portfele w zestawie są obliczane zgodnie z wcześniej opisanymi zasadami. Łączenie portfeli w punkcie zerowym jest potrzebne do łatwości analizy. W tym celu wybiera się punkt, w którym wszystkie portfele są równe zeru. Cofanie portfeli w stosunku do poziomu zerowego może być również przydatne w celu uproszczenia analizy. Spadające portfele stają się rosnącymi po odwróceniu partii. Filtrowanie portfeli w zestawie oznacza wybór najlepszych portfeli według pewnego kryterium, na przykład szybkość wzrostu, odchylenie od zera, pozycja w obrębie zestawu względem innych portfeli. Tak więc najlepsze portfele wybrane i czesane do koszyka portfeli lub superportfolio (superpozycja portfeli). Poniższe zdjęcie ilustruje następujące kroki: do łączenia portfeli wykorzystuje się przesunięcie pionowe. Portfel jest odwracany po pomnożeniu przez -1. Na koniec filtr jest stosowany przez sortowanie i próbkowanie według wartości. Nie ma szczegółowego opisu tych algorytmów, aby uniknąć ogromnej liczby rutynowych kodów. Poniżej znajduje się przykładowy zestaw portfeli skonstruowany zgodnie z wymienionymi zasadami: Wykres przedstawia zestaw portfeli wyliczonych za pomocą modelu PCA w krótkim okresie. Obliczone granice przedziału są przedstawione jako czerwone przerywane linie. Tutaj można zobaczyć rozszerzenie portfolio po obu stronach interwału optymalizacji. Punkt zerowy jest wybierany na lewej granicy przedziału optymalizacji, a momenty odwrócenia względem zera i zastosowania filtra są oznaczone purpurowymi kropkowanymi liniami. Gruba linia przedstawia superportfolio składające się z najbardziej aktywnych portfeli, a tym samym ma przyzwoity przebieg od punktu zerowego. Łączenie portfeli zapewnia dodatkowe możliwości analizy i rozwoju strategii handlowych, np. Dywersyfikację portfeli, spready między portfelami, zbieżność - rozbieżność w zestawach portfeli, oczekiwanie na skręcenie zestawu portfeli, przejście z jednego portfela do drugiego i inne podejścia. Przykłady implementacji Metody opisane w bieżącym artykule zostały zaimplementowane jako wskaźnik portfela i półautomatyczny EA. Tutaj znajdziesz instrukcje, pobierz kod źródłowy i dostosuj go do swoich potrzeb: Programista i optymalizator portfela Modeli. Posiada kilka typów modeli optymalizacji z konfigurowalnymi parametrami. Poza tym możesz dodawać własne modele i funkcje docelowe. Istnieją również podstawowe narzędzia do analizy technicznej portfeli, a także różne opcje formatowania wykresów. Portfolio Generator Multigraph z zestawami portfelowymi z tymi samymi modelami i parametrami oraz dodatkowymi opcjami do transformacji i filtracji portfela oraz tworzenia superportfolio. Portfolio Manager EA do pracy z portfelami i superportfolio. Działa w połączeniu z wskaźnikiem portfela i umożliwia otwieranie i zarządzanie pozycjami syntetycznymi, a także funkcjonalność korekcji portfela i tryb automatycznego obrotu na podstawie graficznych linii zamówień wirtualnych. Strategie handlowe Istnieje wiele strategii handlowych opartych na stosowaniu instrumentów syntetycznych. Pozwala rozważać kilka podstawowych pomysłów, które mogą być użyteczne przy tworzeniu strategii handlowej portfela. Jednocześnie nie zapominaj o ryzyku i ograniczeniach. Klasycznym podejściem do generowania portfela jest zidentyfikowanie niedowartościowanych aktywów mających potencjał wzrostu i włączenie ich do portfela z oczekiwaniem ich wzrostu. Zmienność portfela jest zawsze niższa niż suma zmienności uwzględnionych instrumentów. To podejście jest dobre dla rynku akcji, ale ma ograniczone zastosowanie do Forex, ponieważ waluty zwykle nie wykazują trwałego wzrostu, w przeciwieństwie do zapasów. Poniżej znajduje się portfel długoterminowy Warren Buffetts: Przy pracy ze standardowymi portfelami inwestycyjnymi należy dokładnie ocenić stan zasobów bieżących, aby kupić go w trakcie obniżania cen. Pierwszą i najłatwiejszą opcją dla spekulacyjnego handlu portfelem jest handel parami, w wyniku którego rozchodzi się o dwa powiązane ze sobą symbole. W przypadku Forex takie podejście jest znacznie ograniczone, ponieważ nawet bardzo skorelowane pary walutowe nie mają kointegracji, a zatem mogą znacząco różnić się w czasie. W tym przypadku mamy do czynienia ze złamanym spreadem. Poza tym handel parą prowadzi do handlu syntetycznym kursem krzyżowym, ponieważ pary z wspólną walutą są zazwyczaj włączane do spreadu. Tego rodzaju handel parą jest bardzo zły pomysł. Po otwarciu przeciwnych pozycji przez rozłożenie, czasami musimy czekać bardzo długo, zanim krzywe znowu się zbiegają. Poniżej znajduje się przykład wysoce skorelowanych par i ich stopniowej i nieuniknionej rozbieżności: rozwój tego podejścia jest wielostronnym spreadem, gdy trzy i więcej par walutowych zostaje uwzględnionych w spreadach. Jest to już lepsze niż parowanie, ponieważ łatwiej jest tworzyć bardziej równomierne rozłożenie z większą liczbą opcji kombinacji. Jednak takie same zagrożenia pozostają: rozprzestrzenianie może się różnić i nie zbiegać się ponownie. O wiele łatwiej osiągnąć dobry zysk z spreadu na spokojnym rynku, ale mocne fundamentalne wiadomości powodują po pewnym czasie szybkie i nieodwracalne rozbieżności. Co ciekawe, jeśli zwiększymy liczbę instrumentów w spreadu, prawdopodobieństwo rozbieżności również wzrasta, ponieważ wiąże się to z większym zaangażowaniem walut, tym większe prawdopodobieństwo, że coś się dzieje podczas niektórych nowości. Oczekiwanie na ponowne zejście spreadu byłoby wyjątkowo szkodliwą strategią, ponieważ działa to tylko na cichym, płaskim rynku. Poniżej znajduje się przykładowa analiza rozproszonego charakteru wielu stron: "Spread trading" ma większe szanse na giełdach lub giełdach w przypadku istnienia fundamentalnego związku między aktywami. Jednakże w dacie dywidendy nie ma jeszcze gwarancji przed rozłożonymi lukami lub w trakcie wygaśnięcia kontraktów terminowych. Spready mogą również składać się z indeksów giełdowych i kontraktów futures, ale wymaga to uwzględnienia cech giełdowych. Ślepa gałąź transakcji spreadu jest reprezentowana przez multi-lock, gdy parami walutowymi powiązanymi cyklicznie (na przykład EURUSD-GBPUSD-EURGBP) wybiera się i stosuje w celu utworzenia zrównoważonego spreadu. W tym przypadku mamy doskonały spread, który jest niemożliwy do handlu, ponieważ łączne spready i prowizje są zbyt wysokie. Jeśli próbujemy nieco wyważyć partie, wykres staje się bardziej podobny do trendu, co jest sprzeczne z rozproszonym handlem, a koszty pozostają na tyle wysokie, że podejście to jest bez znaczenia. Poniżej jest przykład zrównoważonej wielokrotnej blokady. Całkowita rozpiętość jest pokazywana jako dwie czerwone linie: Wady handlowe powodują, że przechodzimy na modele trendów. Na pierwszy rzut oka wszystko wydaje się być wystarczająco harmonijne: identyfikuj trend, wprowadź podczas korekty i wyjdź z zyskiem na wyższych poziomach. Poniżej znajduje się przykład dobrego modelu trendu: Jednak modele trendów mogą okazać się nie tak proste i poręczne. Czasami portfel odmawia dalszego rozwoju, a czasami gwałtownie się zmniejsza. W tym przypadku mamy do czynienia ze zepsutym trendem. Występuje dość często w modelach krótko - i średnioterminowych. Efektywność obrotu zależy w dużym stopniu od fazy rynkowej. Kiedy rynek jest modny, system działa dobrze. Jeżeli rynek jest płaski lub szczególnie niestabilny, mogą wystąpić liczne straty. Poniżej widać wyraźne ukończenie trendów: te niedogodności powodują, że rozważamy tradycyjne podejścia. Teraz przyjrzyjmy się metodom przełamywania spreadu i odwrócenia trendów. Częstym przypuszczeniem jest to, że ponieważ nie możemy uniknąć niestabilności portfela, powinniśmy nauczyć się jej używać. In order to develop a spread breakout setup, we need to create a very compact short-period spread with the minimum volatility in anticipation of a strong movement. The more we compress the portfolio volatility, the stronger it bursts out. For accelerated spread breakout, it is possible to form a setup before beginning trade sessions and before the news selecting certain intervals of a quiet market. PCA optimization method is best suited for volatility compression. In this setup, we do not know in advance, in which direction the breakout is to occur, therefore, the entry is already defined when moving from the spread boundaries. Below is a sample exit from the short-period spread channel with the spread channel boundaries highlighted: The method advantages: short-period spreads are frequent on charts and the volatility after the breakout often exceeds the spread corridor width. The drawbacks: spreads are expanded during news releases and a saw may form when the price moves up and down a few times. The conservative entry can be proposed as an alternative after exiting a spread corridor during the correction to the corridor boundary if possible. In order to create a trend reversal setup, a trend model is created, as well as turning movements and portfolio price levels are tracked. The movement direction is clearly defined but we do not know in advance when the trend reverses. An internal trend line crossing, reverse correction and roll-back are tracked for a conservative entry. Touching an external trend line and a roll-back are tracked for an aggressive entry. Below is an example of a trend portfolio with the external and internal lines displayed: The method advantages: good entry price, convenience, extreme price instability works in favor of the setup. Disadvantages: portfolio price may go up the trend due to fundamental reasons. In order to improve the situation, we may enter in fractional volumes from multiple levels. A similar setup can be implemented using square root parabolic function model. The setup is based on a well-known property: when the price reaches a theoretical limit of a market distribution range, its further movement is hindered. Like in other cases, the target optimization function is adjusted for the current market distribution. If the markets had featured normal Gaussian distribution, the time-based square root law would have always worked perfectly but since the market distribution is fractal and non-stationary in its nature, the situational adjustment is required. You can find more about market distributions in the following books by Edgar Peters: Chaos and Order in the Capital Markets Fractal Market Analysis Below is an example of a portfolio moving away from the parabolic function: This setup is perfect for adapting to mid-term volatility. However, just like in case of a trend setup, a portfolio price may move upwards due to fundamental factors. The market is not obliged to follow any target function behavior, but neither it is obliged to deviate from it as well. Some degree of freedom and duality remain at all times. All trade setups are not market-neutral in the absolute sense but are based on some form of technical analysis. The dual nature of trend and flat can be seen below. A trend model looks similar to an uneven flat on a bigger scale: Apart from symbol combination and model type, location of estimated interval boundaries is of great importance when developing a portfolio. When configuring the portfolio, it might be useful to move the boundaries and compare the results. Good choice of boundaries allows finding portfolios that are more suitable in terms of a trading setup. If a portfolio position enters a drawdown, it is possible to correct the portfolio without closing existing positions. Shifting the boundaries changes the portfolio curve adapting it to a changing situation. Positions should be corrected accordingly after re-arranging the portfolio. This does not mean that the drawdown will decrease in a moment, but the corrected portfolio might become more efficient. Next, lets consider some properties of portfolio sets and their possible applications in trading systems. The first property of portfolio sets to catch the eye is a set expansion, or divergence of portfolios with distance from the zero point. It would be only natural and reasonable to use this property for trading: buying rising portfolios and selling falling ones. Below is a sample expanding set of portfolios: The second property portfolio set compression (convergence) is opposite to the previous one. It happens after an expansion. Expansion and compression cycles suggest that this behavior can be used to open synthetic positions in anticipation of returning to the center of the set after reaching an alleged highest degree of expansion. However, the expansion highest degree always vary, and it is impossible to predict the final boundaries of the set curves expansion. Below is a sample compressing set of portfolios: Applying various target functions, filtration parameters, reversals and combinations provides good opportunities for experimenting and searching for efficient trading setups. Generally, all setups can be divided into two classes: trading breakouts and trading roll-backs. Below is an example of the first type trading setup with a reversal and shift of a portfolio set: A sample roll-back trading setup based on the multi-trend model is provided below: Another recurring portfolio property is a set twist (self-crossing). Typically, this corresponds to a change of a market trend. If we trade in anticipation of an expansion of portfolios, a twist is a negative effect requiring the set re-arrangement. For other strategies, crossing of some portfolio curves can be used to identify promising and played-out portfolios. Besides, it is necessary to consider a distance traveled, levels, position in a set and position relative to the target function. Below is an example of a set twisting multiple times: We have not focused out attention on the volume management issue up until now, though this is a critical part of any trading system. Generally, we can describe the following approaches: trading a single synthetic position (the simplest case) dividing the volumes (extended entry by levels) adding to a rising portfolio (pyramiding by trend) adding to a portfolio in a drawdown (position averaging) adding to a portfolio after a correction (finishing method) adding to a portfolio after a reversal (expansive strategy) adding to new portfolios (portfolio consolidation) combined approach (combining several approaches) Specific volume management method should be selected considering trading system features. When planning a profit and a drawdown, your calculations should be based on a portfolio volatility. In the simplest case, the portfolio volatility can be evaluated as the movement range of its graph within a certain segment. It is much better to evaluate volatility not only within the optimization interval but on the previous history as well. Knowing the portfolio volatility, it is possible to calculate a theoretical value of the maximum total drawdown at a series of positions. Traditionally, we caution against too frequent aggressive volume adding. The total funds allocated for a portfolio coverage on a trading account should be able to withstand unfavorable movement considering all additional positions. Multi-portfolio trading means systematic portfolio selection and consolidation. If one portfolio is bought and another one is added to it, this may have a positive diversification effect if the portfolios have noticeable differences. But if portfolios are correlating, this may have a negative effect, since they both may find themselves in a drawdown in case of an unfavorable movement. Normally, you should avoid adding correlating portfolios. At first glance, trading spread between two correlating portfolios may seem to be very promising but closer examination shows that such spreads are no different from usual spreads since they are not stationary. Various exit strategies can be applied in multi-portfolio trading, including: closing by total result of all portfolios closing a group of portfolios by the groups total result closing by certain portfolios targets and limits. For some strategies, the entry point is of critical importance. For example, if a strategy applies extreme prices before a trend reversal or correction, a period suitable for entry is very short. Other strategies are more reliant on the optimal calculation of a position adding system and portfolio selection principle. In this case, individual portfolios may enter a drawdown, but other (more efficient) portfolios within the consolidated series adjust the overall result. Conclusion Portfolio trading advantages: optimization allows you to create a portfolio curve according to your preferences, as well as form a desired trading setup and trade it similar to trading symbols on a price chart. However, unlike trading portfolios, buying and selling conventional assets leave traders in passive position (since they are only able to accept the current price chart or avoid using it). Besides, as the situation evolves, traders can adjust their portfolios to new market conditions. Portfolio trading drawbacks: standard pending orders are not applicable, more stringent minimum volume requirements, bigger spreads on 30 and lower charts, hindered intraday scalping, no OHLC data, not all indicators can be applied to portfolios. Generally, this is a rather specific approach in trading. Here we have only made an introductory overview of the portfolio properties and working methods. If you want to perform deeper studies of portfolio trading systems, I recommend using the MetaTrader 5 platform for that, while market distribution properties should be studied in specialized statistical packages. Warning: All rights to these materials are reserved by MQL5 Ltd. Copying or reprinting of these materials in whole or in part is prohibited. Forex Trading 8211 MetaTrader 4 Chart Templates Trading Bonus Free 25 No Deposit Required. goo. glnXSPZ7 Forex Trading 8211 MetaTrader 4 Chart Templates MetaTrader Forex Trading Tutorial: Setting up MetaTrader 4 for price action trading charts. The MetaTrader 4 software, often referred to as MT4, has plenty of options and novice users find themselves overwhelmed with the settings. If you8217ve never traded with MetaTrader 4, it8217s basically a trading platform that opens up a window into the world of foreign exchange. While it8217s true that it takes some time to figure everything out, there are really only a few settings that you will need to know to trade. One of the most useful features is the ability to add indicators, expert advisors and templates to your trading window in MetaTrader 4. This is extremely valuable because there are thousands of MT4 users, as well as trading professionals and companies who share their configurations for free or a for a small payment. Trading indicators help the user recognise price patterns and aid in live trading. There are thousands of different indicators out there. Indicators can produce buy and sell signals visible on the charts. Within MT4 there are many built-in indicators but users can also install custom indicators. These are very popular among traders as they often show much more information than the standard built-in ones. Indicators can also become parts of an Expert Advisor. Expert Advisors are built to automate trading. So if you have an indicator that shows buy and sell signals, an expert advisor would execute the trades on the signals. In addition, Expert Advisors have rules that define each trading position according to specific trading strategy and money management. Expert Advisors are usually paid by subscription but there are also free ones available on trading forums. Using EAs is completely automated so trades are executed without user input. The risks of such automated system are obvious so most traders prefer to rely on trading indicators and live analysis based on their market knowledge. In addition to Indicators and Expert Advisors there are custom templates that can be added to MetaTrader 4. Templates allow to configure the look and feel of your trading window. MT4 users often share templates with their settings. Now that you are considering using MetaTrader 4 and giving trading a go it8217s important to understand that all indicators are just that, indicators. There is no magical indicator that will make you rich. Markets are too unpredictable and too organic for anyone to predict the trends correctly all the time. However there are indicators that can help with that. There is a saying 8216The trend is your friend8217 which is often used in trading classrooms. If you can just follow the trends you can make it as a successful trader. However it8217s a lot easier said than done. Trends change and consolidate, their nature often seems very erratic. Indicators such as Moving Averages and Bollinger Bands help to see what8217s going on and recognise certain market sentiments, whether it is bullish, going up or bearish, going down. The type of moving averages to use largely depend on your trading strategy and the topic of moving averages in trading goes beyond the scope of this article. However these are the simplest indicators one can use to trade binary options or Forex using the MetaTrader 4 software. Deja un comentario Cancelar respuesta

Comments

Popular posts from this blog

Forex grid ea free

How do you trade forex po i męczącym dniu

Forex szkolenie w tamil