Jetzt beitreten
Indikatoren/probuilder · probacktest · proorder · proscreener

SMI

SMI in ProBuilder gibt den Stochastic Momentum Index zurück, einen doppelt geglätteten Oszillator, der den Schlusskurs relativ zum Mittelpunkt zwischen Hoch und Tief verortet. Syntax, Beispiele.

Syntax

probuilder
SMI[N, SS, DS](price)

Parameter

NameTypStandardBeschreibung
NGanzzahl14Rückblickperiode für die Stochastik-Berechnung, das Fenster, in dem das höchste Hoch und das tiefste Tief gesucht werden.
SSGanzzahl3Periode der ersten exponentiellen Glättung, die auf den rohen Abstand vom Mittelpunkt angewendet wird.
DSGanzzahl5Periode der zweiten (doppelten) Glättung, die die endgültige Linie in Signalqualität erzeugt.
priceKursquelleSchlusskursDie gegen die Range-Mitte gemessene Preisreihe. Üblicherweise close.

Formel

Code
midpoint = (Highest[N](high) + Lowest[N](low)) / 2
distance = price - midpoint
SMI = 100 * DoubleSmooth(distance) / (0.5 * DoubleSmooth(range))

DoubleSmooth wendet einen exponentiellen Durchschnitt der Periode an SS, dann einen weiteren mit Periode DS. Da der Zähler ein vorzeichenbehafteter Abstand vom Mittelpunkt ist und nicht der Abstand vom Tief, ist der SMI um null zentriert und bewegt sich typischerweise zwischen -100 und +100.

So funktioniert es

Ein klassischer Stochastik-Indikator fragt, wie nah der aktuelle Kurs am oberen Ende seiner jüngsten Range liegt. SMI stellt eine subtil andere Frage: wie weit ist der Close von der Mitte dieser Range entfernt. Wenn der Kurs über dem Mittelpunkt der letzten N Bars, ist der SMI positiv; schließt er darunter, ist der SMI negativ. Der Abstand wird dann durch die halbe Range normiert, damit die Werte über Instrumente und Volatilitätsregime hinweg vergleichbar sind.

Die doppelte exponentielle Glättung ist das zweite Unterscheidungsmerkmal. Rohe Stochastic-Werte sind sprunghaft, daher führt der SMI den Abstand zum Mittelpunkt durch zwei aufeinanderfolgende exponentielle Durchschnitte (SS dann DS). Das Ergebnis ist eine langsamere, saubere Linie, die Fehlsignale reduziert, auf Kosten von etwas Verzögerung.

Da die Ausgabe um null zentriert ist, trägt die Nulllinie selbst eine Bedeutung: Kreuzungen vom negativen in den positiven Bereich markieren eine Verschiebung des Schlusskurses von der unteren in die obere Hälfte der jüngsten Spanne.

Beispiele

Beispiel 1, Flags für überkauft und überverkauft (Indikator)

probuilder
mySMI = SMI[14,3,5](close)
IF mySMI > 40 THEN
    // close is deep in the upper half of the range
    overbought = 1
    oversold = 0
ELSIF mySMI < -40 THEN
    // close is deep in the lower half of the range
    overbought = 0
    oversold = -1
ELSE
    overbought = 0
    oversold = 0
ENDIF
RETURN overbought, oversold

Berechnet einen SMI über 14 Perioden mit Glättung über 3 und 5 Perioden und wandelt den Messwert dann in zwei diskrete Flags um, die überkaufte und überverkaufte Zustände markieren.

Beispiel 2, Mean Reversion Einstieg mit Trendfilter (ProOrder)

probuilder
// Buy oversold readings only while the long-term trend is up
trend = Average[200](close)
osc   = SMI[14,3,5](close)

IF NOT LongOnMarket THEN
  IF close > trend AND osc CROSSES OVER -40 THEN
    BUY 1 CONTRACT AT MARKET
  ENDIF
ELSE
  IF osc > 40 THEN
    SELL AT MARKET
  ENDIF
ENDIF

Steigt ein, wenn SMI seine überverkaufte Zone in Richtung des vorherrschenden Trends verlässt, und steigt aus, sobald der Oszillator die überkaufte Zone erreicht.

Beispiel 3, Scan auf überverkaufte Werte (ProScreener)

probuilder
osc = SMI[14,3,5](close)
SCREENER[osc < -40](osc AS "SMI 14")

Listet nur Instrumente auf, deren SMI unter -40 liegt, sortiert nach dem Indikatorwert.

Interpretation

ZoneRangeAblesung
ÜberkauftSMI > +40Der Schlusskurs liegt auf geglätteter Basis nahe dem oberen Ende der jüngsten Spanne. Das Momentum ist stark, aber überdehnt.
Neutral-40 bis +40Keine ausgeprägte Positionierung innerhalb der Spanne. Kreuzungen der Nulllinie zeigen einen Seitenwechsel an.
ÜberverkauftSMI < -40Der Schlusskurs liegt nahe dem unteren Ende der jüngsten Spanne. Geht oft einer Stabilisierung voraus, nicht einer garantierten Umkehr.

Divergenzen zwischen SMI und Kurs sind das Signal, das der Indikator hervorheben soll: ein neues Kurshoch ohne neues SMI-Hoch deutet auf nachlassendes Momentum hin. Die Konstruktion über den Mittelpunkt macht diese Divergenzen tendenziell sichtbarer als bei einer Standard-Stochastik.

Häufige Fehler und Stolperfallen

  • Falsche Annahmen zur Skala. SMI ist nicht auf 0 bis 100 begrenzt wie Stochastic. Es oszilliert um null, daher sind Schwellen wie 20/80 hier sinnlos. Verwenden Sie +40/-40 oder auf das Instrument kalibrierte Werte.
  • Parameterreihenfolge. Die drei Klammerparameter sind Lookback, erste Glättung, zweite Glättung, in dieser Reihenfolge. Ein Vertauschen SS und DS erzeugt eine andere, meist verrauschtere Linie ohne Compiler-Warnung.
  • Verzögerung durch doppelte Glättung. Zwei aufeinanderfolgende exponentielle Durchschnitte verzögern das Signal. Bei großen SS und DS Werten können Zonenausstiege viele Bars nach der eigentlichen Wende auslösen.
  • Anhaltende Extremwerte in Trends. Wie alle spannenbasierten Oszillatoren kann SMI in einem starken Aufwärtstrend über lange Strecken über +40 bleiben. Extreme Messwerte ohne Trendfilter gegenzuhandeln ist eine häufige Backtest Falle.
  • Stochastic, der klassische %K-Oszillator, den SMI verfeinert.
  • StochasticD, die %D-Signallinie des Stochastik-Oszillators.
  • SmoothedStochastic, die langsame Stochastik-Variante.
  • RSI, Momentum Oszillator, begrenzt von 0 bis 100.
  • CCI, Oszillator der Abweichung vom Durchschnitt mit einer ähnlich zentrierten Skala.
  • Momentum, rohes, unbegrenztes Momentum Maß.
  • Williams, %R-Oszillator, ein weiteres Maß für die Position in der Spanne.
  • ExponentialAverage, die Glättungsmethode, die innerhalb von SMI zweimal verwendet wird.