Gaussa ruchomo średnio afl
Biblioteka funkcji filtrowania i pobierania informacji o krzywych cen, począwszy od tradycyjnej analizy technicznej aż do bardziej zaawansowanej transformacji i statystyk, przenoszą średnie ruchy, oscylatory, pasma, momentum, wskaźniki wytrzymałości, regresję liniową, transformacje Hilberta, wskaźniki Ehlersa i analizę widmową. Wskaźniki są wymienione w kolejności alfabetycznej. Tradycyjne wskaźniki korzystają z biblioteki wskaźników TA-Lib autorstwa Mario Fortiera, która ustaliła się jako standardową informację o używaniu, algorytmach i kodzie źródłowym wskaźników TA-Lib. source znajduje się również w folderze źródłowym Zorro Kod źródłowy większości innych wskaźników i funkcji analizy można znaleźć w Zorro zawiera wskaźniki c Filtry spektralne i funkcje analizy amplitudy częstotliwości są wymienione w bibliotece widmowej Klasyczne wzory świec można znaleźć w bibliotece wzorów. AC vars Dane var. Accelerator Oscillator Różnica wskaźnika AO patrz belo w i jego 5-barowej prostej średniej ruchomej SMA Zanotowano w celu wskazania przyspieszenia i hamowania siły napędowej rynku, niezależnie od tego, że dla danych zazwyczaj używana jest seria MedPrice lub serii cen. Kod źródłowy w wskaźnikach c. Oscylator dystrybucyjny akumulatora Close-Low - High-Close High-Low Ranges od -1, gdy dolna krawędź jest na dolnym pasku, do 1, gdy jest ona wysoka Prawdopodobnie wskazywać podaż i popyt, ustalając, czy kupcy zazwyczaj gromadzą kupno lub dystrybucję Sprzedaż Ten wskaźnik został opublikowany w wielu indywidualnych wariantach formuła, ale żaden z nich nie wydaje się lepszy niż inne Używa bieżącej serii cen aktywów Kod źródłowy w wskaźnikach c. ADX int TimePeriod var. Average Directional Movement Index Przeciętna średnia wskaźnika DX patrz poniżej Używa bieżącej serii cen aktywów Nie support TimeFrame Zwracane wartości w zakresie od 0 do 100.ADXR int TimePeriod var. Average Wskaźniki Movement Index Kierunkowe Średnia obecna ADX i ADX od Tima paski ePeriod Użyj bieżącej serii cen aktywów Nie obsługuje ramki TimeFrame. Alligator vars Dane var. Alligator Indicator Składa się z trzech linii niebieskich SMA 13 opóźnionych o 5 barów czerwonych SMA 8 opóźnionych o 2 bary zielone SMA 5 Wskazuje tendencję spadkową z liniami w zamów niebiesko-czerwono-zieloną górną na dół i trenującą się z zielono-czerwono-niebieską Im bliżej linii Alligera, tym słabszy jest trend i odwrotnie Nie zawiera dodatkowych 3 pasków pierwotnego algorytmu aligatora Użyj danych 3 dla tego w przypadku danych najczęściej stosowana jest seria mediów o wysokiej niskiej średniej Wynik w rRed rGreen rBlue Kod źródłowy w wskaźnikach c. ALMA vars Data, int TimePeriod, int Sigma, var Offset var. ALMA vars Data, int TimePeriod var. Arnaud Legoux Moving Średnia W oparciu o rozkład Gaussa z tendencją do rozpoczęcia serii danych, tzn. Najnowsze ceny Parametry Szerokość dystrybucji Sigma, domyślnie 6 Współczynnik kompensacji przesunięcia, domyślnie 0 85 Kod źródłowy w wskaźnikach c. AO vars Data var. Awesome Oscillator po prostu różnica 5-bar i 34-bar SMA dla danych zazwyczaj używana jest seria MedPrice lub cena Kod źródłowy w wskaźnikach c. APO vars Data, int FastPeriod, int SlowPeriod, int MAType var. Absolute Oscillator ceny bardziej ogólny wersja AO Zwraca różnicę między dwoma średnimi ruchoma Parametry FastPeriod Liczba okresów dla szybkiego MA, SlowPeriod Ilość okresów dla powolnej macierzowej, typu MAType Typ przemieszczania średnia. Aroon int TimePeriod var. Aroon indicator Składa się z dwóch linii W górę iw dół ten środek, jak długo odkąd najwyższy najwyższy najniższy poziom miał miejsce w danym okresie Używa bieżącej serii cen aktywów Nie obsługuje efektu TimeFrame w rAroonDown rAroonUp. AroonOsc int TimePeriod var. Aroon Oscillator Obliczono przez odjęcie Aroon Down od Aroon Up Wartość zwracana będzie wahać się od 100 do -100 Używa bieżącej serii cen aktywów Nie obsługuje TimeFrame. ATR int TimePeriod var. Average Prawdziwy zakres Zakres pomiaru zmienności cen użyteczne do obliczania odległości odcięcia lub zysku docelowego Formuła ATR ATR1 CzasPeriod-1 maks. Wysoki, Zbliżony - min Niski, Zamknięty Czas Czasu, gdzie ATR1 jest ATR z ostatniego paska Wykorzystuje bieżące ceny aktywów Funkcja wewnętrznie tworzy serie, gdy TimeFrame wynosi 1 i musi a następnie wezwać na stałe w skrypcie Zob. także Volatility CVolatilty TrueRange ATRS. ATR vars Open, vars High, vars Low, vars Zamknij, int TimePeriod var. Average Prawdziwy zakres z dowolnej serii cen, z dowolnym przesunięciem i ramką czasową. ATRS int TimePeriod var. Simple Średni True Range SMA TrueRange w okresie czasowym przy użyciu bieżącej serii cen aktywów Cenę zmienności, prostszą do obliczenia niż ATR, ale dostosowującą powolne do zmienności zmiany, a tym samym mniej dopasowane do celów zysku z zatrzymania strat Zużyte przez platforma MT4 zamiast prawdziwego ATR Nie obsługuje kodu TimeFrame Kod źródłowy w wskaźnikach c. AvgPrice var. Average Price Otwórz High Low Zamknij 4 z bieżącej serii cen aktywów. BBands v ars Data, int TimePeriod, var NbDevUp, var NbDevDn, int MAType. Bollinger Bands Składa się z trzech linii środkowego pasma to prosta średnia ruchoma zazwyczaj 20 okresów typowej ceny TP Górna i dolna taśma to n standardowych odchyleń ogólnie 2 powyżej i poniżej pasma środkowego Paski rozszerzają się i są wąskie, gdy zmienność ceny jest wyższa lub niższa, odpowiednio paski Bollingera wskazują, kiedy cena stała się stosunkowo wysoka lub niska, co sygnalizuje dotyk lub niewielka penetracja linii górnej lub dolnej Wynik w rRealUpperBand rRealMiddleBand Parametry rRealLowerBand Mnożnik odchylenia NbDevUp dla górnego pasma, NbDevDn Mnożnik odchylenia dla dolnego pasma, typ MAType Typ średniej ruchomej w indeksie najmniejszej c. BBOsc vars Data, int TimePeriod, var NbDev, int MAType var. Bollinger Zespoły Oscylator procentowy bieżąca wartość serii w obrębie Bollinger Bands. Beta vars Data, vars Data2, int TimePeriod var. Beta wartość A mierzenie pojedynczego osła et s w stosunku do ogólnego indeksu rynkowego Cena aktywów jest podana w danych, a ceny rynkowe są podane w Data2 Algorytm oblicza zmianę między cenami w obu seriach, a następnie przekształca te zmiany jako punkty na płaszczyźnie euklidesowej Wartość x dowolnego punktu jest zmiana na rynku danych2, a wartością y jest zmiana aktywów danych Wartość beta jest nachyleniem linii regresji liniowej przez te punkty A beta 1 jest prostą linią yx, więc składnik aktywów różni się w zależności od rynku A beta mniej niż jeden oznacza, że składnik aktywów różni się mniej niż rynek, a beta więcej niż jednego środka aktywów różni się więcej niż rynek. Równowaga energetyczna po prostu zamyka - otwiera się wysoko - nisko Używa bieżącej serii cen aktywów. CCI int TimePeriod varmodity Odniesienie do indeksu kanału ceny z jego średniej statystycznej, zwykle oscyluje między -100 Wykorzystuje bieżącą serię cen aktywów Nie obsługuje TimeFrame. CI int TimePeriod var. Choppiness Index mierzy niestabilność pojedynczej bar w stosunku do zmienność z przeszłości TimePeriod w zakresie 1 100 Używa bieżącej serii cen aktywów Nie obsługuje TimeFrame. ChandelierLong int TimePeriod, var Mnożnik var. ChandelierShort int TimePeriod, var Mnożnik var. Chandelier wychodzi z najwyższej ceny TimePeriod minus ATR pomnożony przez Mnożnik Zwykle używane jako końcowa utrata przerwy w utrzymywaniu transakcji w trendzie i zapobieganiu wczesnemu wyjsciu, dopóki trwa tendencja Kod źródłowy na wskaźnikach c Nie obsługuje ramki czasowej w rozdziale TMF. CGOsc vars Data, int TimePeriod var. Center of Gravity oscylator, John Ehlers oblicza odchylenie cen od ich centrum w okresie czasu. Może być używany do identyfikowania punktów zwrotnych cen o prawie zerowym opóźnieniu Kod źródłowy w wskaźnikach c. Chikou int Shift var. Chikou linia należąca do wskaźnika Ichimoku po prostu przesunięta przesuwanie przez opcjonalne domyślnie Shift 26 Używa bieżącej serii cen aktywów Kod źródłowy w wskaźnikach c. CMO vars Data, int TimePeriod var. Chande M oscylator oscylacyjny Podobny do RSI, ale dzielący całkowity ruch danych przez ruch netto w górę iw dół. Dane kontrolne danych, po prostu T3 z TimePeriod 60 i VolumeFactor 0 4.Rozwiązanie korelacji danych1, vars Data2, int TimePeriod współczynnik korelacji var. Pearsona pomiędzy dwiema seriami danych w danym przedziale czasowym w przedziale od -1 1 Współczynnik 1 0, doskonała dodatnia korelacja, oznacza, że zmiany danych2 powodują identyczne zmiany w wyniku zmiany danych 1 na przykład w wyniku tego wskaźnika identyczna zmiana ceny aktywów Współczynnik -1 0, doskonała ujemna korelacja, oznacza, że zmiany danych2 powodują identyczne zmiany danych 1, ale w przeciwnym kierunku Współczynnik zera oznacza, że nie istnieje żaden związek między dwiema seriami i że zmiana danych2 nie będzie miała wpływu na dane1 Funkcja ta może być również wykorzystana do uzyskania autokorelacji szeregu przez obliczenie współczynnika korelacji pomiędzy oryginalną serią a tym samym ser opóźnione przez jeden lub dwa bary szeregowe 1 lub serie 2.Kolektywność vars Data1, vars Data2, int TimePeriod var. Covariance między dwiema seriami danych Może być użyta do wygenerowania macierzy kowariancji fi w celu efektywnego obliczania granicy markowitz. Channel int TimePeriod. Donchian Kanał minimalnej i maksymalnej wartości cenyHigh i priceLow funkcji w okresie czasu Podstawa słynnego systemu handlu żółwiami Używa bieżącej serii cen aktywów Nie obsługuje wyników TimeFrame w rRealUpperBand rRealLowerBand. DCOsc Dane, int TimePeriod var. Donchian Channel Oscillator procent bieżącej wartości danych w kanale Donchian Używa bieżącego zasobu i bieżącego parametru TimeFrame. Decycle vars Data, int CutOffPeriod var. Ehlers Decycler, wskaźnika trendu niskiego opóźnienia danych Dane - HighPass2, CutOffPeriod Usuwa wszystkie cykle poniżej CutOffPeriod z danych seria i zachowuje trend Funkcja wewnętrznie tworzy serie, a zatem musi być wywoływana w stałym porządku w skrypcie Kod dorsza eModemod var. Double Exponential Moving Average. DPO vars Dane, int TimePeriod var. Detrended Price Oscillator uważany za wykrywający wczesne zmiany kierunku cenowego Dane DPO 0 - dane SMA n 2 1, n gdzie n jest kodem TimePeriod Source na wskaźnikach c. DX int TimePeriod var. Kierunkowy indeks ruchu Welles Wilder, który w pewnym momencie odkrył, że oddziaływanie Słońca, Księżyca i Ziemi jest podstawą całego ruchu na rynku Jeśli słońce, księżyc , a ziemia nagle powstrzymuje się od przenoszenia rynku, wymyślił również niektóre tradycyjne wskaźniki. Uważa się, że DX wskazuje siłę trendu. Wartości w zakresie od 0 do 100, ale rzadko powyżej 60. DX używa bieżącej serii aktywów i nie obsługuje programu TimeFrame Formula DX 100 Abs PlusDI-MinusDI PlusDI MinusDI Dla PlusDI i MinusDI zobacz poniższy opis. EMA vars Data, int TimePeriod var. EMA vars Dane, var alfa var. Exponential Moving Average Zwraca nowe wartości danych Używa formuły E MA alpha dane 1-alfa EMA1, gdzie alfa jest współczynnikiem rekursji od 0 1, który jest obliczany z 2 0 TimePeriod 1 i EMA1 to poprzednia wartość EMA Mniejsza liczba alfa jest wyższa jest efekt wygładzania wzoru EMA Zarówno funkcje EMA nieco inne algorytmy Pierwszy użyj TimePeriod nie tworzy serii, jest wolniejszy i wymaga długości danych TimePeriod UnstablePeriod 1 Drugi przy użyciu alfa tworzy wewnętrzną serię, potrzebuje tylko danych Długość 2 i jest znacznie szybsza. Fisher vars Data var. Fisher Transform transformuje znormalizowaną serię danych do normalnego zakresu rozproszonego. Wartość zwracana nie ma teoretycznego limitu, ale większość wartości wynosi od -1. Wszystkie wartości danych muszą mieścić się w przedziale -1, fi przez normalizowanie przy pomocy AGC Normalize lub Funkcja cdf Minimalna długość danych to 1 Źródło dostępne w wskaźnikach c. FisherInv vars Dane var. Inwersja Fisher Transform kompresuje serię danych w zakresie od -1 do 1 Minimalna długość serii danych to 1 Źródło availa wskaźniki c. FisherN vars Data, int TimePeriod var. Fisher Przekształcenie z normalizacją normalizuje serie danych z danym przedziałem czasowym, a następnie przekształca go w normalny zakres rozproszony Podobny do filtra Normalizuj poniżej, ale bardziej selektywny ze względu na rozkład normalny wyjścia Wartość zwracana nie ma teoretycznego limitu, ale większość wartości mieści się w przedziale -1 5 1 5 Minimalna długość serii danych jest równa liczbie czasu (TimePeriod) Funkcja wewnętrznie tworzy szereg, a zatem musi być wywołana w ustalonym porządku w skrypt Źródło dostępne w wskaźnikach c. FractalDimension vars Data, int TimePeriod var. Frakcyjny wymiar danych serii, zazwyczaj John Ehlers 1 2 Mniejsze wartości oznaczają więcej jaggies Może być stosowany do wykrywania obecnego systemu rynkowego lub do dostosowywania średnich kroczących do fluktuacji z serii cen Źródło dostępne w wskaźnikach c. FractalHigh vars Dane, int TimePeriod var. Fractal High, wskaźnik Bill Williams, który sygnalizuje, kiedy rynek odwraca nie ma nic wspólnego z fraktalami Zwraca najwyższą wartość danych, gdy znajduje się w centrum czasu TimePeriod w przeciwnym wypadku 0.FractalLow vars Data, int TimePeriod var. Fractal Low Zwraca najniższą wartość danych, gdy znajduje się w środku pola TimePeriod w przeciwnym razie 0. Gauss vars Data, int TimePeriod var. Gauss Filter, zwraca średnią ważoną danych w danym przedziale czasowym, przy czym krzywa wagi równa rozkładowi normalnemu Gaussa Przydatna do usuwania szumu poprzez wygładzenie surowych danych Minimalna długość serii danych to równa stopie TimePeriod Opóźnienie to połowa ceny TimePeriod. HAClose var. Haiken Ashi, w oparciu o aktualne ceny zasobów Kod źródłowy w wskaźnikach c Alternatywnie, krzywa cen może być przekształcona w słupki Haiken Ashi za pomocą funkcji paska. HH int TimePeriod, int Offset var. Najbliższa cena funkcji HighHigh w okresie TimePeriod kończącym się domyślnie Offset 0 F i HH 3 zwraca najwyższą cenę z ostatnich 3 barów Wykorzystuje bieżące szeregi aktywów Nie obsługuje TimeFra mnie na wiele ramek czasowych, użyj MaxVal High Offset, okres z synchronizacją czasu High series Zobacz Zobacz też dayHigh. HMA vars Data, int TimePeriod var. Hull Moving Average przez Alan Hull próbuje rozwiązać problem lag i wygładzić niektóre choppiness Formula HMA n WMA 2 WMA n 2 WMA n, sqrt n Funkcja wewnętrznie tworzy serię, a zatem musi być wywoływana w stałym rozdziale w skrypcie Kod źródłowy w wskaźnikach c. HTDcPeriod vars Data var. Heberbert Transform - okres dominującego cyklu, opracowany przez John Ehlers Hilbert transformacji algorytmy wyjaśniono w książce Ehler Rocket Science dla Handlarzy patrz książka lista Ta funkcja jest równoważna, ale mniej dokładne niż funkcja DominantPeriod. HTDcPhase vars Data var. Hilbert Transform - faza Dominant Cycle. HTPhasor vars Data var. Hilbert Transform - Składniki Phasor w rInPhase rQuadrature. HTSine vars Data var. Hilbert Transform - SineWave Wynik w rSine rLeadSine. HTTrendline vars Data var. Hilbert Transform - natychmiastowa linia Trendline. HTTr endMode vars Wskaźniki trendów transformacji danych int. Hilbert - zwraca 1 dla Trybu Trendu, 0 dla trybu Cycle. Hurst vars Data, int TimePeriod var. Hurst wykładnik serii danych między 0 1 Wyrażenie Hursta mierzy pamięć serii Określa ilościowo autokorelacja, tzn. tendencja do powrotu do średniej Hurst 0 5 lub kontynuowania trendu w kierunku Hurst 0 5 W ten sposób wykładnik Hursta może wykryć, czy rynek znajduje się w stanie trenowania Okno TimePeriod minimum 20 musi mieć wystarczającą długość, aby złapać tendencja długoterminowa Funkcja wewnętrznie tworzy serię, a zatem musi być wywołana w stałym rozkazie w skrypcie Źródło dostępne w wskaźnikach c. Ichimoku int PeriodTenkan, int PeriodKijun, int PeriodSenkou, int Offset. Ichimoku Kinko Hyo wskaźnik Wynalazcy dziennikarza Goichi Hosoda w 1930 r. Mieszanka średnich cen z trzech okresów czasu, uważana za głęboko wgląd w trendy rynkowe ze względu na ogromną liczbę kolorowych linii Offset domyślnie 0 określa pasek dla c alokowanie wskaźnika Zwraca 4 zmienne. Kolejna linia należąca do Ichimoku, linia Chikou, jest przyszłościowa i wyliczana osobno Używa bieżącej serii cen aktywów Funkcja ta tworzy wewnętrznie serie, gdy TimeFrame jest 1, a następnie musi być wywoływana w stałym porządku w skrypt Kod źródłowy w wskaźnikach c. Internal Bar Siła po prostu Zamknij - Niski Wysoki - Niska Używa bieżącej serii cen aktywów. KAMA vars Data, int TimePeriod var. Kaufman Adaptacyjna średnia ruchoma Średnia wykładnicza przeciętna skorygowana zmiennością cen, więc jej okres staje się krótszy, kiedy zmienność jest wysoka. Keltner vars Data, int TimePeriod, var Factor var. Keltner Channel, Charles Keltner Proste przecięcie średniej - dane SMA, TimePeriod - z pasm bocznym w oddali Współczynnik ATRS CzasPeriod Wyniki w rRealUpperBand rRealMiddleBand rRealLowerBand Kod źródłowy w wskaźniki c. Laguerre vars Data, var alpha var.4-element Filtr Laguerre Służy do wygładzania danych podobnych do EMA, ale z mniejszym opóźnieniem i wi zakres strojenia podany przez współczynnik wygładzania alfa 0 1 Elementy niskiej częstotliwości są opóźnione znacznie częściej niż komponenty wysokiej częstotliwości, co umożliwia bardzo gładkie filtry przy niewielkiej ilości danych Minimalna długość serii danych wynosi 1, okres jest 4 Funkcja wewnętrznie tworzy serie, a zatem musi być wywoływana w stałym rozkazie w skrypcie Źródło dostępne w wskaźnikach c. LinearReg vars Data, int TimePeriod var. Linear Regression, znany również jako metoda najmniejszych kwadratów lub najlepiej pasuje do regresji liniowej aby dopasować prostą linię między kilkoma punktami danych w taki sposób, aby odległość pomiędzy każdym punktem danych a linią trendu została zminimalizowana W każdym punkcie linia prosta w określonym przedziale czasowym jest określona w ybmx Funkcja LinearReg zwraca bm TimePeriod -1 W przypadku regresji wyższego rzędu, użyj funkcji wielomianów polifonicznych Dla regresji logistycznej z wieloma zmiennymi, skorzystaj z funkcji PERCEPTRON podpowiedzi. arRegAngle vars Data, int TimePeriod var. Linear Regression Angle Zwraca m przeliczony na stopnie Ze względu na różne jednostki x i y wykresu cennego, kąt jest zwykle mało użyteczny, z wyjątkiem może dla zwolenników Gann. LinearRegIntercept vars Data, int TimePeriod var. Regulacja regresji liniowej zwraca b. LinearRegSlope vars Data, int TimePeriod var. Linear Regression Slope Returns m jako różnica cen na bar. LL int TimePeriod, int Offset var. Noważna wartość funkcji priceLow w okresie TimePeriod kończącym się z Offset default 0 F i LL 3,10 zwraca najniższą cenę w ciągu ostatnich 10 i ostatnich 13 barów Wykorzystuje bieżącą serię cen aktywów Nie obsługuje ramki TimeFrame dla wielu ramek czasowych, użyj MinVal Low Offset, okres z synchronizacją czasu Niski szereg zamiast Zobacz też dayLow. MACD vars Dane, int FastPeriod, int SlowPeriod, int SignalPeriod. Moving Średnia deformacja konwergencji MACD jest pośrednim wskaźnikiem tendencji, utworzonym przez odjęcie 26-godzinnego ruchu Moving Ave wściekłość EMA patrz powyżej z 12-EMA okresu Trzykrotnie okres EMA jest następnie zastosowany do wyników MACD utworzyć linię sygnału Linia Histogram MACD jest ostatecznie utworzony z różnicy MACD do jego linii sygnału Uważa się, że zero przecięcie histogramu od dołu jest sygnałem kupna, zero przecinającym się od powyższego sygnału sprzedaży. Wzorzec to. rMACD Dane EMA, dane FastPeriod - EMA, SlowPeriod rMACDSignal EMA rMACD, SignalPeriod rMACDHist rMACD - rMACDSignal. Results w rMACD rMACDSignal rMACDHist Zwraca parametry rMACD Okres czasu FastPeriod dla szybkiego MA, czasu wolnego czasu dla wolnego MA, okresu sygnału SignalPeriod dla wygładzenia linii sygnału. MACDefender vars Data, int FastPeriod, int FastMAType, int SlowPeriod, int SlowMAType, int SignalPeriod, int SignalMAType. MACD z kontrolą Typ MA Wynik w parametrach rMACD rMACDSignal rMACDHist Czas fastPeriod dla szybkiego MA, FastMAType Typ Moving Average dla szybkiego MA, SlowPeriod okres czasu dla powolnego MA, SlowMAType Typ średniej ruchomej dla powolnego MA, przedziału czasowego sygnału SignalPeriod dla wygładzenia linii sygnału, Typ sygnału średniego ruchu dla linii sygnału. MACDFix vars Data, int SignalPeriod. Moving Średnia zbieżność Rozbieżność Fix 12 26 Wynik w rMACD rMACDSignal Parametry rMACDHist Okres ważności sygnaturyPeriod wygładzanie linii sygnału. AMA vars Data, var FastLimit, var SlowLimit. MESA Średnia przemieszczeniowa Adaptive, opracowana przez Johna Ehlersa, patrz łącza Wynik w parametrach rMAMA rFAMA FastLimit Wykorzystanie limitu górnego w algorytmie adaptacyjnym, SlowLimit Ograniczenie dolne w algorytmie adaptacyjnym. MaxVal vars Data, int TimePeriod var. Highest wartość w określonym okresie. MaxIndex vars Data, int TimePeriod int. Index najwyższej wartości w określonym okresie 0 najwyższa wartość jest w bieżącym pasku, 1 na jednym pasku temu, i tak dalej. Median vars Data, int TimePeriod var. Median Filter sortuje elementy serii danych i zwraca ich średnią wartość w danym okresie czasu Przydatne w usuwaniu skoków szumów przez eliminat wartości ekstremalne Minimalna długość serii danych jest równa Czasowi zwłoki jest połowa Czasu Czasu Zobacz także Procentowy. Zm. cenaCena cenowa po prostu punkt środkowy Wysoki Niski 2 bieżącej świecy Średnia cena - średnia wszystkich cen kreski ceny świec - użycie. MidPoint vars Data, int TimePeriod var. MidPoint w okresie Określenie najwyższej wartości najniższej wartości 2.MidPrice int TimePeriod var. Midpoint cena za okres po prostu najwyższy najwyższy najniższy 2 bieżącej serii cen aktywów Nie obsługuje TimeFrame. MinusDI int TimePeriod var. MinusDI vars Otwarte, vars Wysoki, vars Niski, vars Zamknij, int TimePeriod var. Minus Kierunkowy wskaźnik, część wskaźnika DX Jeśli funkcja nie jest wywoływana z inną serią cen, bieżąca seria cen aktywów jest używany. MinusDM int TimePeriod var. MinusDM vars Otwórz, vars Wysoki, vars Niski, vars Zamknij, int TimePeriod var. Minus Kierunek ruchu, dwie wersje Jeśli funkcja nie jest wywoływana z inną serią cen, bieżący sset jest używany. InVal vars Data, int TimePeriod var. Największa wartość w określonym przedziale. MinIndex vars Data, int TimePeriod int. Index najniższej wartości w określonym okresie 0 najmniejsza wartość jest na bieżącej bar, 1 w jednym barze , i tak dalej. MinMax vars Data, int TimePeriod var. Lowest i najwyższe wartości oraz ich indeksy w określonym okresie Wynik w rMin rMax rMinIdx rMaxIdx. MinMaxIndex vars Data, int TimePeriod int. Indexes najniższych i najwyższych wartości w określonym okresie Wynik w rMinIdx rMaxIdx 0 bieżący pręt, 1 jeden pasek temu, i tak dalej. MMI vars Data, int TimePeriod var. Market Indeks Znaczności przez Haker Finansowy Zmierza średnicę rynku, tj. jego średnią tendencję odwrotu, w zakresie 0 100 Losowe liczby mają MMI 75 Prawdziwe ceny są mniej lub bardziej autocorrelated, więc prawdopodobieństwo prawdziwej serii cen wrócić do średniej jest niższe niż 75, ale zwykle ponad 50 Im wyższy, tym bardziej oznacza rynek Indeks średniej rynkowej może ustalić, kiedy trend stają się bardziej opłacalne MMI spada lub mniej zyskuje MMI rośnie, a tym samym zapobiega stratom w nierentownych okresach Kod źródłowy w wskaźnikach c. Mom vars Data, int TimePeriod var. Momentum Po prostu dane 0 - Data TimePeriod Zobacz też diff. Moment vars Data, int TimePeriod, int N var Moment statystyczny N 1 4 sekcji danych podanej przez TimePeriod Pierwszą chwilą jest średnia, druga wariancja, trzecia jest skośność, a czwarta kurtosis Źródło dostępne w wskaźnikach c. MovingAverage vars Data, int TimePeriod, int MAType var. Moving average Parametry MAType Typ Moving Average, patrz uwagi. MovingAverageVariablePeriod vars Dane, vars Okresy, int MinPeriod, int MaxPeriod, int MAType var. Moving średnia z zmiennym okresem podawanym przez serie Periods Parametry MinPeriod Wartość mniejsza niż minimalna zostanie zmieniona na Minimalny okres, MaxPeriod Wartość większa niż maksymalna zostanie zmieniona na Maksymalny okres, rodzaj średniej ruchowej typu MAType, patrz uwagi. NATR int TimePeriod var. Normalized Average True Range przez John Forman Podobnie jak w przypadku ATR, z wyjątkiem tego, że normalizuje się następująco NATR 100 ATR TimePeriod Close Wykorzystuje bieżącą serię cen aktywów Nie obsługuje TimeFrame. Normalize vars Data, int TimePeriod var. Transformuje Serie danych do zakresu -1 w ramach danego przedziału czasowego Podobny do funkcji AGC, ale nie rozróżniaj między atakiem a zanikiem Minimalna długość serii danych jest równa liczbie źródeł czasowych dostępnych w wskaźnikach c Zobacz także scale. NumInRange vars Low, vars High, var Min, var Max, int Długość var. Number zakresów danych, podawanych przez ich niskie i wysokie wartości, które leżą całkowicie wewnątrz interwału od Min do Max w danej długości Może być używany do obliczania rozkładu cen lub świece mogą być ustawione na taką samą wartość, aby zliczyć wszystkie wartości w przedziale lub zamienić na liczenie wszystkich świec, które dotykają przedziału Zakres Źródło dostępne w wskaźnikach c. NumRiseFall vars Data, int T imePeriod var. Length bieżącej sekwencji rosnących lub spadających wartości w tablicy danych, z powrotem do podanego przedziału czasowego W przypadku rosnącej sekwencji zwracana jest jego długość, dla spadającej sekwencji ujemna długość Zakres resp -1 - TimePeriod Źródło dostępne w wskaźnikach c Zobacz skrypt RandomWalk i rozdział Strategia dla przykładu Źródło dostępne w wskaźnikach c. NumWhiteBlack var Body, int Offset, int TimePeriod var. Number białych minus czarnych świec w danym przesunięciu TimePeriod jest odległością od bieżącego paska 0 bieżącego paska, Ciało jest minimalną długością świecy, która ma być liczona Źródło dostępne w wskaźnikach c. Percentile vars Dane, int Długość, var procent var. Returny danego percentyla serii danych z danym Length f Percent 95 zwraca wartość danych powyżej 95 wszystkich pozostałych wartości Procent 50 zwraca Median z serii danych Do obliczania procentu danej wartości percentyla należy użyć funkcji NumInRange i zliczyć elementy poniżej percentyla. PlusDI int TimePeriod var. PlusDI vars Otwarte, vars Wysoki, vars Niski, vars Zamknij, int TimePeriod var. Plus Wskaźniki kierunkowe, część wskaźnika DX, dwie wersje W pierwszej wersji używana jest bieżąca seria cen aktywów. PlusDM int TimePeriod var. PlusDM vars Open, vars High, vars Low, vars Close, int TimePeriod var. Plus Ruch kierunkowy, dwie wersje W pierwszej wersji używana jest bieżąca seria cen aktywów. PPO vars Data, int FastPeriod, int SlowPeriod, int MAType var Parametry oscylatora cenowego FastPeriod Liczba okresów dla szybkiego MA, SlowPeriod Ilość okresów powolnego MA, MAType Typ Moving Average. ProfitFactor vars Data, int Długość var. Znowa współczynnika zysku w serii danych Współczynnik zysku to stosunek sumy wyników pozytywnych, tzn. danych i-1 danych i do sumy negatywnych, tzn. danych i-1 danych i zwrócona wartość jest przycinana do zakresu 0 1 10. Jego odwrotność musi być użyta, gdy tablica danych nie jest w kolejności szeregowej, ale w chronologii gical order, jako wygrane i straty są następnie zamieniane Źródło dostępne w wskaźnikach c. ROC vars Data, int TimePeriod var. Rate of change, 100 scale prevPrice prefiks 100.ROCP vars Data, int TimePeriod var. Rate of change Procentowa cena - prevPrice prevPrice Zobacz także diff. ROCR vars Data, int TimePeriod var. Rate zmiany ceny ceny prevPrice. ROCL vars Dane, int TimePeriod var. Logarithmic Powrót cen logotypu prevPrice. ROCR100 vars Dane, int TimePeriod var. Rate of ratio zmiany, 100 scale cena prevPrice 100.Roof vars Dane, int CutoffLow, int CutoffHigh var. Ehler s filtr dachowy, przygotowuje serie danych do dalszego obliczania poprzez usunięcie tendencji i hałasu Zastosowanie 2-biegunowego filtru górnoprzepływowego, a następnie gładkiego filtru Zalecane wartości dla niskich i wysokie okresy odcięcia wynoszą 10 i 50 Minimalna długość serii danych to 2 Funkcja wewnętrznie tworzy serie i dlatego musi być wywoływana w stałym rozkazie w skrypcie Źródło dostępne w wskaźnikach c. RSI vars Data, int TimePeriod var. Rela Indeks mocy według Welles'a Wildera Ratio ostatniego ruchu danych w górę do całkowitego zakresu ruchu danych 0 100 Uważa się, że RSI wskazuje warunki przeterminowania przejęcia przez kupującego, gdy wartość jest powyżej 70 poniżej 30 Formuła RSI 100 w górę w górę Dn gdzie w górę EMA max 0 , Dane 0 - Data 1, TimePeriod i Dn EMA max 0, Dane 1 - Data 0, TimePeriod. RVI int CzasPeriod var. Relative Vigor Index, John Ehlers Stosunek zmian cen do całego przedziału cenowego CO HL uśrednione w danym okresie i wygładzone filtrem FIR Oscyluje między -1 i 1 Funkcja wewnętrznie tworzy serię, a zatem musi być wywoływana w stałym rozdziale w skrypcie Kod źródłowy w wskaźnikach c. SAR var Krok, var Min, var Max var. arabolic SAR, przez Welles Wilder SAR przebiega powyżej lub poniżej krzywej cenowej, w zależności od bieżącej tendencji, podczas której każda krzywa cenowa wskazuje zmianę tendencji Parametry Przyrost przyspieszenia krokowego, normalnie 0 02, minimalna wartość minimalna współczynnika przyspieszenia, normalnie 0 02, maks. przyspieszenie na wartość maksymalną czynnika, normalnie 0 2 SAR jest funkcją rekurencyjną, która zależy od kierunku świecenia ceny początkowej dla spójnych wartości okres LookBack powinien być wystarczająco długi, aby zawierał co najmniej jedną krzywą cenową Wykorzystuje bieżące ceny aktywów Funkcję wewnętrznie tworzy a więc musi być wywołany w stałym rozkazie w skrypcie Kod źródłowy w wskaźnikach c przykład w Indicatortest c. ShannonGain vars Dane, int TimePeriod var. Expected logarithmic gain rate z serii danych w zakresie około -0 0005 Zysk rate pochodzi z prawdopodobieństwa Shannona P 1 Mean Gain RootMeanSquare Gain 2, co jest podobieństwem wzrostu lub spadku serii danych o wysokim poziomie entropii w następnym okresie barowym Dodatnia stopa przyrostu wskazuje, że seria ta jest bardziej prawdopodobna, szybkość zysku wskazuje, że jest prawdopodobne, że spadnie Spadek zerowy może być użyty dla sygnału handlu algorytm John Conover Źródło dostępne w wskaźnikach c. ShannonEntropy vars Data, int Lengt h, int PatternSize var. Entropia wzorców w serii danych, w bitach może być użyta do określenia losowości danych PatternSize 2 8 określa podział danych na wzorce do 8 bitów Każda wartość danych jest albo wyższa niż poprzednia wartość, lub nie jest to informacja binarna i stanowi jeden bit wzoru Im bardziej przypadkowe są rozproszone wzory, tym większe są entropia Shannona Całkowicie przypadkowe dane mają entropię Shannon identyczną z rozmiarem wzoru Algorytm wyjaśniony na Źródło bloga Hacker dostępne w wskaźnikach c. SIROC vars Data, int TimePeriod, int Zmienność częstotliwości S-RoC przez Fred G Schutzman Różnice z ROC widać powyżej, ponieważ opierają się na wykładniczej średniej ruchomej EMA danych series Believed to indicate the strength of a trend by determining if the trend is accelerating or decelerating Formula Current EMA - Previous EMA Previous EMA x 100 Source code in indicators c. SMA vars Data, int TimeP eriod var. Simple Moving Average the mean of the data, i e the sum divided by the time period Use Moment when long time periods are required. Smooth vars Data, int CutoffPeriod var. Ehler s super-smoothing filter, a 2-pole Butterworth filter combined with a SMA that suppresses the Nyquist frequency Can be used as a low-lag universal filter for removing noise from price data The minimum length of the Data series is 2 The function internally creates series and thus must be called in a fixed order in the script Source available in indicators c. SMom vars Data, int TimePeriod, int CutoffPeriod var. Smoothed Momentum by John Ehlers indicates the long term trend direction TimePeriod is the momentum period, CutoffPeriod is a Butterworth filter constant for lowpass filtering the momentum Source code in indicators c. Spearman vars Data, int TimePeriod var. Spearman s rank correlation coefficient correlation between the original Data series and the same series sorted in ascending order within TimePerio d 1 256 Returns the similarity to a steadily rising series and can be used to determine trend intensity and turning points Range -1 1 lag TimePeriod 2 For usage and details, see Stocks Commodities magazine 2 2017 Source available in indicators c. StdDev vars Data, int TimePeriod var. Standard Deviation of the Data series in the time period, from the ta-lib Use the square root of the second Moment when high accuracy or long time periods are required. Stoch int FastKPeriod, int SlowKPeriod, int SlowKMAType, int SlowDPeriod, int SlowDMAType. Stochastic Oscillator unrelated to stochastics, but its inventor, George Lane, looked for a fancy name Measures where the Close price is in relation to the recent trading range Formula FastK 100 Close-LL HH-LL SlowK MA FastK SlowD MA SlowK Uses the current asset price series and does not support TimeFrame Result in rSlowK rSlowD Some traders believe that the SlowK crossing above SlowD is a buy signal others believe they should buy when SlowD is below 20 and sell when it is above 80 Parameters FastKPeriod - Time period for the HH and LL to generate the FastK value, usually 14 SlowKPeriod - Time period for smoothing FastK to generate rSlowK usually 3 SlowKMAType - Type of Moving Average for Slow-K, usually MATypeEMA SlowDPeriod - Time period for smoothing rSlowK to generate rSlowD usually 3 SlowDMAType - Type of Moving Average for Slow-D, usually MATypeEMA. StochEhlers vars Data, int TimePeriod, int CutOffLow, int CutOffHigh var. Predictive stochastic oscillator by John Ehlers Measures where the Data value is in relation to its range within TimePeriod The data runs through a 2-pole highpass filter with period CutOffHigh and through a Butterworth lowpass filter with period CutOffLow Indicator algorithm explained in Ehler s Predictive Indicators paper usage example in the Ehlers script Source code in indicators c The function internally creates series and thus must be called in a fixed order in the script. StochF int FastKPeriod, int FastD Period, int FastDMAType var. Stochastic Fast Measures where the Close price is in relation to the recent trading range Formula Fast-K 100 Close-LL HH-LL Fast-D MA Fast-K Uses the current asset price series Does not support TimeFrame Result in rFastK rFastD Returns FastK Parameters FastKPeriod Time period for the HH and LL of Fast-K, usually 14 , FastDPeriod Moving Average Period for Fast-D usually 3 , FastDMAType Type of Moving Average for Fast-D, usually MATypeEMA. StochRSI vars Data, int TimePeriod, int FastKPeriod, int FastDPeriod, int FastDMAType var. Stochastic Relative Strength Index RSI Result in rFastK rFastD Returns FastK Parameters FastKPeriod Time period for building the Fast-K line , FastDPeriod Smoothing for making the Fast-D line Usually set to 3 , FastDMAType Type of Moving Average for Fast-D. Sum vars Data, int TimePeriod var. Sum of all Data elements in the time period. T3 vars Data, int TimePeriod, var VFactor var. An extremely smoothed Moving Average by Tim Tillson Uses a weighted sum of multiple EMAs Parameters VFactor Volume Factor, normally 0 7.TEMA vars Data, int TimePeriod var. Triple Exponential Moving Average by Patrick Mulloy, calculated from 3xEMA - 3xEMA of EMA EMA of EMA of EMA. Trima vars Data, int TimePeriod var. Triangular Moving Average also known under the name TMA a form of Weighted Moving Average where the weights are assigned in a triangular pattern F i the weights for a 7 period Triangular Moving Average would be 1, 2, 3, 4, 3, 2, 1 This gives more weight to the middle of the time series It causes better smoothing, but greater lag. Trix vars Data, int TimePeriod var.1-day Rate-Of-Change see ROC of a Triple EMA see TEMA. TrueRange var. True Range TR max High 0,Close 1 - min Low 0,Close 1 of the current asset price series See also ATR ATR S. TSF vars Data, int TimePeriod var. Time Series Forecast Returns b m TimePeriod i e the Linear Regression forecast for the next bar. TSI vars Data, int TimePeriod var. Trend Strength Index, an indicator by Frank Hassler who believed that it identifies trend strength A high TSI value above.1 65 indicates that short-term trend continuation is more likely than short-term trend reversal The function internally creates series and thus must be called in a fixed order in the script. TypPrice var. Typical Price Simply High Low Close 3 Uses the current asset price series. UltOsc int TimePeriod1, int TimePeriod2, int TimePeriod3 var. Ultimate Oscillator Parameters TimePeriod1 Number of bars for 1st period , TimePeriod2 Number of bars for 2nd period , TimePeriod3 Number of bars for 3rd period Uses the current asset price series Does not support TimeFrame. UO vars Data, int CutOff var. Universal oscillator by John Ehlers, from S C Magazine 1 2018 Removes white noise from the data, smoothes it and runs it through the AGC filter Detects trend reversals very early Output in the -1 1 range Source code in indicators c The function internally creates series and thus must be called in a fixed order in the scrip t. Variance vars Data, int TimePeriod var. Variance of the Data series in the time period, from the ta-lib Use Moment when high accuracy or long time periods are required. Volatility vars Data, int TimePeriod var. Annualized volatility of the Data series standard deviation of the log returns, multiplied with the square root of time frames in a year This is the standard measure of volatility used for financial models, such as the Black-Scholes model The function internally creates series and thus must be called in a fixed order in the script Source code in indicators c. VolatilityC int TimePeriod, int EMAPeriod var. Chaikin Volatility indicator by Marc Chaikin measures volatility in percent as momentum of the smoothed difference between High and Low An increase in the Chaikin Volatility indicates that a bottom is approaching, a decrease indicates that a top is approaching TimePeriod is the period of the momentum normally 10 , EMAPeriod determines the smoothing also, normally 10 Uses the curr ent asset price series The function internally creates series and thus must be called in a fixed order in the script Source code in indicators c. VolatilityMM vars Data, int TimePeriod, int EMAPeriod var. Min Max volatility of the Data series the difference of MaxVal and MinVal in the time period, smoothed by an EMA set EMAPeriod 0 for not smoothing The function internally creates a series when EMAPeriod 0 and then must be called in a fixed order in the script Source available in indicators c For the volatility of price candles, use ATR or ATRS. VolatilityOV int Days var. Annualized volatility of the current asset, calculated over the given number of Days usually 20 Empirical formula used by some options software packages OptionsVue for estimating the values of options, alternatively to Volatility Source code in options c which must be included for using this indicator. WCLPrice var. Weighted Close Price Uses the current asset price series. WillR int TimePeriod var. Williams Percent Range Form ula -100 HH-Close HH-LL Uses the current asset price series Does not support TimeFrame. WMA vars Data, int TimePeriod var. Linear Weighted Moving Average the weight of every bar decreases linearly with its age. ZigZag vars Data, var Depth, int Length, int Color var. ZigZag indicator converts the Data series into alternating straight trend lines with at least the given Depth and Length Non-predictive can only identify trends in hindsight Returned rSlope the slope of the last identified trend line upwards trends have a positive slope, downwards trends a negative slope rPeak the bar offset of the last identified peak rSign 1 if the last peak was a top, -1 if the last peak was a bottom rLength the number of bars of the last trend line ending with rPeak If a nonzero Color is given, the trend lines are plotted in the chart Source code in indicators c example in Indicatortest c The function internally creates series and thus must be called in a fixed order in the script. ZMA vars Data, int Time Period var. Zero-lag Moving Average by John Ehlers smoothes the Data series with an Exponential Moving Average EMA and applies an error correction term for compensating the lag The function internally creates a series and thus must be called in a fixed order in the script Source in indicators c. Standard parameters. The number of bars for the time period of the function, if any or 0 for using a default period. A data series often directly derived from the price functions price , priceClose etc Alternatively a user created series or any other double float array with the given minimum length can be used If not mentioned otherwise, the minimum length of the Data series is TimePeriod Some functions require a second data array Data2.Price data series can be explicitly given for some indicators, for using price series generated from a different asset or with a different TimeFrame Otherwise the prices of the current asset with a time frame equivalent to the bar period are used. Price variation or percentage, dependent on the function, for the current bar. Usage example. MACD Price,12,26,9 calculates the standard MACD for the given Price series The results are stored in the global variables rMACD rMACDSignal and rMACDHistory. The TA-Lib function prototypes are defined in include ta h Information about the usage and the indicator algorithms can be found online at The C source code of all included TA-Lib indicators is contained in and can be studied for examining the algorithms Some TA-Lib indicators that originally didn t work properly - such as Correlation or SAR - have been replaced by working versions The lite-C source code of most additional indicators that are not part the the TA-Lib is contained in include indicators c. All TA functions are applied on series and do normally not accept other data arrays In the INITRUN all TA functions return 0 and LookBack is automatically increased to the largest required lookback time by a TA function. Recursive TA functions - f i EMA or ATR - need a higher lookback period than their TimePeriod parameter see UnstablePeriod LookBack can be exceeded when TA functions are later called with a series offset or a different TimePeriod this will generate an Error 046 message Make sure that LookBack is always higher than the maximum TimePeriod plus the UnstablePeriod plus the highest possible offset of all used series. Some functions return more than one value, f i MACD The returned results are stored in global variables beginning with r they can be accessed after the function is called. Some functions only require a single Data value Rather than creating a Data series of length 1 simply a pointer to the Data value can be used Example var Raw MyIndicator var Transformed AGC Raw,0.TimeFrame affects subsequent data series and thus also affects all indicators that use the data series as input The TimePeriod is then not in Bar units, but in time frame units TimeFrame has no effect on indicators that do not use data series. Indicators tha t rely on the standard deviation f i Bollinger Bands become inaccurate when the standard deviation is below 0 0001, as it is then assumed to be zero by the TA-Lib This can happen on very short bar periods when the price does almost not move. For writing your own indicators, have a look at the examples inside indicators c But please do not modify indicators c - write the indicators in your own script, or in a dedicated script that you can then include in your strategies If you need a complex indicator that you can not be easily add, please ask for it on the Zorro user forum. It says a lot about your ethics that you did not feel the need to acknowledge the original coder of this AFL However, this particular implementation of ALMA in amibroker is not quite accurate The correct accurate implementation of ALMA in conformance with Ninja Trader and Meta Trader releases by the original developers of ALMA i e Arnaud Legoux has been submitted by me so that amibroker users can also benefit. just one word, this is fantastic. ALMA can be coded using the FIR function By accident I bumped into this writing. which does not seem to pop up when you look in the manual FIR allows you to do a convolution of an input array with a some smaller function like a Gaussian window type function resulting code. windowSize Param Window Size ,9,5,201,2 sigma Param Sigma ,6,1,20 Offset Param Offset ,0 85,0 05,1 0,0 05.function ALMAAFL input, range, Offset, sigma local m, im, s,Coeff m floor Offset range-1 s range sigma. SetChartOptions 0, chartShowDates Plot C, Close, colorLightGrey, styleCandle Plot rr,,colorBlue,1.in fact it can be programmed using. ws Param Window Size ,9,5,201,2 sigma Param Sigma , 6, 1, 20,1 Offset Param Offset ,0 85,0,1 0,0 05 bi BarIndex. m floor Offset ws-1 s ws sigma window IIf bi ws, Cum 1 -1 - m,0 window IIf bi ws, exp - window 2 2 s 2 ,0 rr FIR C, window, ws. SetChartOptions 0, chartShowDates Plot C, Close, colorLightGrey, styleCandle Plot rr, ALMA, colorBlue,1.Req afl cpoding for a special moving average ALMA. Req afl cpoding for a special moving average ALMA. Here is a special moving average It is based on probability distribution-gaussian. please read the pdf and try to code it if possible. The code has something special why so Why is ALMA SO SPECIAL LISTEN TO ITS DEVELOPERArnaud L In attempt to create a new kind of Moving Average with some friends colleagues because i was a little bit tired of the classical set of MA everybody s use for the last 10 years , we ve created this new one ALMA. It removes small price fluctuations and enhances the trend by applying a moving average twice, one from left to right and one from right to left At the end of this process the phase shift price lag commonly associated with moving averages is significantly reduced Zero-phase digital filtering reduces noise in the signal Conventional filtering reduces noise in the signal, but addS delay. The ALMA can give some excellent results if you take the time to tweak the parameters don t need to explain this part, it will be easy for you to find the right setting in less than hour. Arnaud L it is this application of moving average from left to right and from right to left is what makes it special - so far no such code exists in amibroker For those interested in mt4 code of alma, you can refer to attachment. It can be prepared from adheer pai based afl probability and gaussian distribution already existing Here is the Amibroker code for probability and gaussian distribution We need only the GUASSIAN PART. In this some removal and additions are needed to be done. removal Remove probabilityDENSITY ADDITION add sigma value of 6, add offset of 0 85 I request the experts to handle this task tHE ABOVE CODE BASIS WAS BY ADHEER to his solid content. Name Probability Density Gaussian Distribution Description Visual representation of distribution of the data-series e g Price, Price Change, LogNormal Price Change etc Identify whether the series exhibits normal Gaussian distribution Author Adheer Pai adheer at gmail dot com History 1 0 Original Release - July 08, 2009. The input series for plotting the Probability Density and Gaussian Distribution Use the array SERIES or replace accordingly. Constants PI 3 14159 SHOWBELLCURVE Show HIDEBELLCURVE Hide. AFL Inputs nSample Param DataSet Size , 500, 100, 1000 nSegments Param Density Segments , 15, 10, 20 bGauss ParamList Gaussian Curve , SHOWBELLCURVE HIDEBELLCURVE, 0 nPrecision Param Precision Digits , 5, 0, 6 nPrecision 8 nPrecision 10. Constants - system and derived nBarIndex SelectedValue BarIndex nFirstValidBar -1 for i 0 i BarCount i if IsEmpty SERIES i nFirstValidBar i break nSample Max Min nBarIndex - nFirstValidBar nSample ,1. DataSize 0 Number of samples it should be same as nPeriod arrMean MA SERIES, nSample arrMax HHV SERIES, nSample arrMin LLV SERIES, nSample arrSDev StDev SERIES, nSample. currMax arrMax nBarIndex Maximum of the range currMin arrMin nBarIndex Minimum of the range Mu arrMean nBarIndex Mean Mu Sigma arrSDev nBarIndex Standard Deviation of the Range Sigma. rangeOfBar currMax-currMin nSegments The range of each distribution bar barFrequency 0 Occurances within each bar MaxFrequency 0 Highest number of occurrances. DisplayBorder Displays the charting borders function DisplayBorder GfxSelectPen colorBrown, 1, styleDashed GfxMoveTo pxMargin, pxMargin GfxLineTo pxMargin, pxHeight - pxMargin GfxLineTo pxWidth - pxMargin, pxHeight - pxMargin GfxLineTo pxWidth - pxMargin, pxMargin GfxLineTo pxMargin, pxMargin. computeSigmaBandDistribution Computes the distribution withing the specified sigma band bounded by minvalue and maxvalue function computeSigmaBandDistribution MinValue, MaxValue nCount 0 for i nBarIndex i nBarIndex - nSample i 0 i-- if SERIES i MinValue SERIES i MaxValue nCount return 100 nCount nSample. getGaussianValue Function to compute the Gaussian distribution value Y for a given value of X non-scaled function getGaussianValue inputValue Steps to compute normal Gaussian distribution 1 Compute x - mu squared, multiply it by -1 step1 -1 inputValue - Mu 2 2 Compute twice of sigma squared step2 2 Sigma Sigma 3 Divide 1 by 2, and get the exp step3 exp step1 step2 4 Now, divide step 3 by sigma step4 step3 Sigma 5 Now, divide step 4 by square-root of 2 x PI step5 step4 sqrt 2 PI. Compute the arithmetic mean, minimum and maximum of the price series Compute the frequency of occurrances for nIndex nBarIndex nIndex nBarIndex - nSample nIndex 0 nIndex -- nCurrIndex int SERIES nIndex - currMin rangeOfBar nCurrIndex Max Min nSegments-1, nCurrIndex ,0 barFrequency nCurrIndex MaxFrequency Max MaxFrequency, barFrequency nCurrIndex. Now display the frequency of occurrances - aka distribution GfxSetBkMode 1 GfxSelectFont Verdana , 8, 800 GfxSetTextAlign 6 GfxSetTextColor colorRed pxScaleX pxWidth - 2 pxMargin nSegments pxScaleY 0 9 pxHeight - 2 pxMargin MaxFrequency for i 0 i nSegments i pxStartX pxMargin i pxScaleX pxEndX pxStartX pxScaleX pxStartY pxMargin barFrequency i pxScaleY GfxGradientRect pxStartX, pxHeight - pxStartY pxEndX, pxHeight - pxMargin, ColorRGB 70,255,255 , ColorRGB 70,20,255 GfxTextOut NumToStr 100 barFrequency i nSample 4 2 , pxStartX pxScaleX 2 , pxHeight - pxStartY - 15. Now plot the mean and the standard-deviation bars range pxScaleXPixelsPerPriceUnit pxWidth - 2 pxMargin currMax - currMin. meanLineX pxMargin Mu - currMin pxScaleXPixelsPerPriceUnit GfxSelectPen colorBlue, 2, 3 GfxMoveTo meanLineX, pxMargin GfxLineTo meanLineX, pxHeight - pxMargin GfxTextOut Mean , meanLineX, pxHeight - pxMargin GfxTextOut NumToStr Mu, nPrecision , meanLineX, pxHeight - pxMargin 3 for i 1 i 6 i N ow plot the Mean - 1-StDev sDevBand pxMargin Mu i Sigma - currMin pxScaleXPixelsPerPriceUnit if sDevBand pxWidth - pxMargin GfxSelectPen ColorRGB 128,128,128 , 1, 4 GfxMoveTo sDevBand pxMargin GfxLineTo sDevBand pxHeight - pxMargin GfxTextOut NumToStr i,1 0 SD , sDevBand, pxHeight - pxMargin GfxTextOut NumToStr Mu i sigma, nPrecision , sDevBand, pxHeight - pxMargin 3 sDevBand pxMargin Mu - i Sigma - currMin pxScaleXPixelsPerPriceUnit if sDevBand pxMargin GfxSelectPen ColorRGB 128,128,128 , 1, 4 GfxMoveTo sDevBand pxMargin GfxLineTo sDevBand pxHeight - pxMargin GfxTextOut - NumToStr i,1 0 SD , sDevBand, pxHeight - pxMargin GfxTextOut NumToStr Mu - i sigma, nPrecision , sDevBand, pxHeight - pxMargin 3. Legend and data information GfxSetBkMode 1 GfxSetTextAlign 0 24 GfxSelectFont Verdana , 8, 400 GfxSetTextColor colorBlue GfxTextOut Latest NumToStr SERIES nBarIndex , nPrecision , pxMargin 10, pxMargin 15 GfxTextOut Mean NumToStr Mu, nPrecision , pxMargin 10, pxMargin 30 GfxTe xtOut Sigma NumToStr Sigma, nPrecision , pxMargin 10, pxMargin 45. Now display the distribution of the first 10 standard deviations or less nLastPixelY pxMargin 60 for numOfStDevs 1 numOfStDevs 10 numOfStDevs nCount computeSigmaBandDistribution Mu - numOfStDevs Sigma, Mu numOfStDevs Sigma GfxTextOut NumToStr numOfStDevs, 1 0 - Sigma NumToStr nCount,5 2 , pxMargin 10, nLastPixelY nLastPixelY nLastPixelY 15 if nCount 100 numOfStDevs 100.currLineX pxMargin SERIES nBarIndex - currMin pxScaleXPixelsPerPriceUnit GfxSelectPen colorGreen, 2, 3 GfxMoveTo currLineX pxMargin GfxLineTo currLineX pxHeight - pxMargin GfxSetTextAlign 6 GfxSetTextColor colorGreen GfxTextOut Latest , CurrLineX, pxMargin 2. Display the Gaussian Distribution if requested by the user if bGauss SHOWBELLCURVE Now display the normal distribution curve based on sigma and mu graphStepX CurrMax - Mu Max 100, pxWidth-2 pxMargin if graphStepX 0 GaussianMaxima 0 for x CurrMin x CurrMax x x graphStepX GaussianMaxima Max GaussianMaxima, getGaussianValue x. pxGaussianScaleY 0 9 pxHeight - 2 pxMargin GaussianMaxima GfxSelectPen colorOrange, 2, 0 for x CurrMin x CurrMax x x graphStepX gaussianValue getGaussianValue x pxPointX x - CurrMin pxScaleXPixelsPerPriceUnit pxMargin pxPointY pxHeight - gaussianValue - 0 pxGaussianScaleY - pxMargin if x CurrMin GfxMoveTo pxPointX, pxPointY GfxLineTo pxPointX, pxPointY. property copyright Copyright 2017, TrendLaboratory property link ---- indicator settings property indicatorchartwindow property indicatorbuffers 3 property indicatorcolor1 Yellow property indicatorcolor2 LightBlue property indicatorcolor3 Tomato property indicatorwidth1 2 property indicatorwidth2 2 property indicatorwidth3 2 ---- indicator parameters extern int Price 0 Price Mode 0 6 extern int WindowSize 9 Window Size extern double Sigma 6 0 Sigma parameter extern double Offset 0 85 Offset of Gaussian distribution 0 1 extern double PctFilter 0 Dynamic filter in decimal extern int Shift 0 extern int ColorMode 0 0-on,1-off extern int ColorBarBack 1 extern int AlertMode 0 Sound Alert switch 0-off,1-on extern int WarningMode 0 Sound Warning switch 0-off,1-on ---- indicator buffers double ALMA double Uptrend double Dntrend double trend double Del. int drawbegin bool UpTrendAlert false, DownTrendAlert false double wALMA ------------------------------------------------------------------ Custom indicator initialization function ------------------------------------------------------------------ int init ---- indicator buffers mapping IndicatorBuffers 5 SetIndexBuffer 0,ALMA SetIndexBuffer 1,Uptrend SetIndexBuffer 2,Dntrend SetIndexBuffer 3,trend SetIndexBuffer 4,Del ---- drawing settings SetIndexStyle 0,DRAWLINE SetIndexStyle 1,DRAWLINE SetIndexStyle 2,DRAWLINE drawbegin WindowSize SetIndexDrawBegin 0,drawbegin SetIndexDrawBegin 1,drawbegin SetIndexDrawBegin 2,drawbegin SetIndexShift 0,Shift SetIndexShift 1,Shift SetIndexShift 2,Shift IndicatorDigits MarketInfo Symbol, MODEDIGITS 1 ---- name for DataWindow and indicator subwindow label IndicatorShortName ALMA WindowSize SetIndexLabel 0, ALMA SetIndexLabel 1, ALMA Uptrend SetIndexLabel 2, ALMA Dntrend. double m MathFloor Offset WindowSize - 1 double s WindowSize Sigma. ArrayResize wALMA, WindowSize double wsum 0 for int i 0i WindowSizei wALMA i MathExp - i-m i-m 2 s s wsum wALMA i. for i 0i WindowSizei wALMA i wALMA i wsum. if shift Bars - WindowSize continue. double sum 0 double wsum 0.for i 0i WindowSizei if i WindowSize sum wALMA i iMA NULL,0,1,0,0,Price, shift WindowSize - 1 - i. if wsum 0 ALMA shift sum. if PctFilter 0 Del shift MathAbs ALMA shift - ALMA shift 1.double sumdel 0 for int j 0j WindowSize-1j sumdel sumdel Del shift j double AvgDel sumdel WindowSize. double sumpow 0 for j 0j WindowSize-1j sumpow MathPow Del j shift - AvgDel,2 double StdDev MathSqrt sumpow WindowSize. double Filter PctFilter StdDev. if MathAbs ALMA shift - ALMA shift 1 Filter ALMA shift ALMA shift 1 else Filter 0.if ColorMode 0 trend shift trend shift 1 if ALMA shift - ALMA shift 1 Filter trend shift 1 if ALMA shift 1 - ALMA shift Filter trend shift -1.if trend shift 0 Uptrend shift ALMA shift if trend shift ColorBarBack 0 Uptrend shift ColorBarBack ALMA shift ColorBarBack Dntrend shift EMPTYVALUE if WarningMode 0 trend shift 1 0 i 0 PlaySound else if trend shift 0 Dntrend shift ALMA shift if trend shift ColorBarBack 0 Dntrend shift ColorBarBack ALMA shift ColorBarBack Uptrend shift EMPTYVALUE if WarningMode 0 trend shift 1 0 i 0 PlaySound ---------- string Message. if trend 2 0 trend 1 0 Volume 0 1 UpTrendAlert Message Symbol M Period HMA Signal for BUY if AlertMode 0 Alert Message UpTrendAlert true DownTrendAlert false. if trend 2 0 trend 1 0 Volume 0 1 DownTrendAlert Message Symbol M Period HMA Signal for SELL if AlertMode 0 Alert Message DownTrendAlert true UpTrendAlert false. The mt4 code is poosted to provide some kind of hint for coding in afl. looking forawrd to alma code in afl here on traderji as it doesnt exist anywhere else as of now regards ford.
Comments
Post a Comment