MACD
MACD in ProBuilder gibt das MACD-Histogramm zurück, den Abstand zwischen der MACD-Linie und ihrer Signallinie, mit den Standardeinstellungen 12/26/9. Syntax und Beispiele.
Syntax
MACD[S, L, Si](price)Parameter
| Name | Typ | Standard | Beschreibung |
|---|---|---|---|
S | Ganzzahl | 12 | Periode des kurzen exponentiellen gleitenden Durchschnitts. |
L | Ganzzahl | 26 | Periode des langen exponentiellen gleitenden Durchschnitts. Muss größer sein als S. |
Si | Ganzzahl | 9 | Periode des exponentiellen gleitenden Durchschnitts, der auf den MACD angewendet wird, um die Signallinie zu bilden. |
price | Kursquelle | Schlusskurs | Die Kursserie, auf der die Berechnung läuft. Üblicherweise close, akzeptiert auch open, high, low, typicalprice, oder eine eigene Variable. |
Formel
MACD line = EMA[S](price) - EMA[L](price)
Signal = EMA[Si](MACD line)
MACD[S, L, Si](price) = MACD line - Signal // the histogramDas Ergebnis ist unbegrenzt und wird in den Kurseinheiten des Instruments ausgedrückt. Wenn die MACD-Linie über ihrer Signallinie liegt, ist der Wert positiv; wenn sie darunter liegt, ist der Wert negativ.
So funktioniert es
Auf jedem Bar berechnet ProBuilder die MACD-Linie, den kurzen EMA von price minus dem long EMA, dann glättet diese Linie mit einem Si-Perioden-EMA, um die Signallinie zu bilden. Die MACD Anweisung gibt die Differenz zwischen beiden zurück, die Serie, die Chartprogramme als Histogramm zeichnen. Ein Durchgang durch null markiert daher eine Kreuzung der Signallinie, nicht eine EMA-Kreuzung.
Die beiden Komponentenserien sind als separate Befehle verfügbar: MACDLine gibt die rohe Linie zurück und MACDsignal gibt die Signallinie zurück. MACDLine - MACDsignal reproduziert den Wert, der zurückgegeben wird von MACD.
MACD wurde von Gerald Appel als trendfolgender Momentum-Indikator entwickelt. Er verbindet zwei Fragen in einer Reihe: auf welcher Seite des Trends der kurze Durchschnitt liegt und wie schnell sich der Abstand zwischen den Durchschnitten verändert.
Beispiele
Beispiel 1, Steigender MACD bei zurücksetzendem Kurs (Indikator)
// MACD with the standard 12, 26, 9 settings on closing prices
i1 = MACD[12,26,9](close)
FOR i = 20 DOWNTO 0 DO
IF(close[i] < close[i+1] AND i1 > i1[1]) THEN
result = 100
ELSE
result = 0
ENDIF
NEXT
RETURN resultVon der Quellseite übernommen. Die Bedingung kombiniert einen fallenden Schlusskurs mit einem steigenden MACD. Beachten Sie: Jeder Durchlauf der Schleife überschreibt result, sodass der zurückgegebene Wert nur die letzte Iteration widerspiegelt (i = 0), der aktuelle Bar.
Beispiel 2, Strategie mit Kreuzen der Signallinie (ProOrder)
// Go long when the histogram turns positive, exit when it turns negative
DEFPARAM CumulateOrders = false
m = MACD[12,26,9](close)
IF NOT LongOnMarket AND m CROSSES OVER 0 THEN
BUY 1 CONTRACT AT MARKET
ENDIF
IF LongOnMarket AND m CROSSES UNDER 0 THEN
SELL AT MARKET
ENDIFWeil MACD gibt das Histogramm zurück, eine Nulllinienkreuzung bedeutet, dass die MACD-Linie ihre Signallinie gekreuzt hat, der klassische MACD-Einstiegstrigger in einer einzigen Bedingung ausgedrückt.
Beispiel 3, Sich verbesserndes Momentum unter null (ProScreener)
// Instruments where a negative histogram has risen two bars in a row
hist = MACD[12,26,9](close)
improving = hist < 0 AND hist > hist[1] AND hist[1] > hist[2]
SCREENER[improving](hist AS "MACD hist")Gibt Instrumente zurück, die noch unter der Signallinie liegen, deren Abstand aber schrumpft, ein Scan auf sich verbesserndes Momentum, der vor dem eigentlichen Kreuzen auslöst.
Interpretation
| Signal | Ablesung |
|---|---|
| Histogramm über null | MACD-Linie über ihrer Signallinie, aufwärts gerichtetes Momentum. |
| Histogramm unter null | MACD-Linie unter ihrer Signallinie, abwärts gerichtetes Momentum. |
| Histogramm kreuzt über null | Bullisches Kreuzen der Signallinie, eine gängige Auslösebedingung. |
| Histogramm schrumpft in Richtung null | Nachlassendes Momentum vor einem möglichen Kreuzen. |
Für Nulllinien-Kreuzungen der MACD-Linie selbst, also den EMA-Kreuzungswert, prüfen Sie MACDLine stattdessen gegen null.
Divergenzen. Eine bullische Divergenz liegt vor, wenn der Kurs ein tieferes Tief ausbildet, während der MACD ein höheres Tief formt. Eine bärische Divergenz liegt vor, wenn der Kurs ein höheres Hoch ausbildet, während der MACD ein tieferes Hoch formt. Beide werden als frühe Anzeichen einer möglichen Umkehr gelesen, und die DivergenceMACD Befehl erkennt sie direkt.
Häufige Fehler und Stolperfallen
- Histogramm, nicht Linie.
MACDliefert das Histogramm. Code, der von Plattformen portiert wurde, auf denenMACD()zurückgibt, setzt die Linie falsch an. Verwenden SieMACDLinefür die Linie undMACDsignalfür das Signal. - Alle drei Perioden sind erforderlich.
MACD[12,26](close)löst einen Syntaxfehler aus. Die Perioden stehen in eckigen Klammern, die Kursquelle in runden Klammern:MACD[12,26,9](close). - Überschreiben in der Schleife. Im Quellmuster aus Beispiel 1 weist die FOR-Schleife
resultbei jeder Iteration, sodass frühere Bars verworfen werden. Um Treffer über 21 Bars zu zählen, akkumulieren Sie in einem Zähler statt zu überschreiben. - Nicht über Instrumente hinweg vergleichbar. MACD ist unbegrenzt und skaliert mit dem Kurs. Ein Wert von 2.5 bei einem Index und 0.002 bei einem Forex-Paar haben keine relative Bedeutung zueinander. Screener, die nach rohem MACD sortieren, vermischen Skalen.
- Verzögerung in langsamen Märkten. Zwei verschachtelte EMAs machen MACD zu einem nachlaufenden Maß. Bei höheren Einstellungen kommen Kreuzungen deutlich nach der Wende, und ein Verkürzen der Perioden tauscht Verzögerung gegen Fehlsignale.
Verwandte Befehle
MACDLine, die MACD-Linie als eigenständige Reihe.MACDsignal, die Signallinie, ein EMA des MACD.DivergenceMACD, eingebaute Divergenzerkennung.ExponentialAverage, der EMA, aus dem MACD aufgebaut ist.PriceOscillator, prozentbasierte Variante derselben Idee.Momentum, rohe Kursveränderung über N Bars.TRIX, dreifach geglättete Änderungsrate des EMA.Average, einfacher gleitender Durchschnitt zur Glättung der MACD-Ausgabe.