- iAC
- iAD
- iADX
- iADXWilder
- iAlligator
- iAMA
- iAO
- iATR
- iBearsPower
- iBands
- iBullsPower
- iCCI
- iChaikin
- iCustom
- iDEMA
- iDeMarker
- iEnvelopes
- iForce
- iFractals
- iFrAMA
- iGator
- iIchimoku
- iBWMFI
- iMomentum
- iMFI
- iMA
- iOsMA
- iMACD
- iOBV
- iSAR
- iRSI
- iRVI
- iStdDev
- iStochastic
- iTEMA
- iTriX
- iWPR
- iVIDyA
- iVolumes
Funktionen für die Arbeit mit technischen Indikatoren
Alle Funktionen wie iMA, iAC, iMACD, iIchimoku usw. erzeugen im globalen cache des Kundenterminlas eine Kopie des entsprechenden Kundenindikators. Wenn eine Kopie des Indikators mit solchen Parametern schon existiert, wird eine neue Kopie nicht erzeugt, sondern Counter der Verweise an die vorgegebene Kopie steigt.
Diese Funktionen geben handle der entsprechenden Kopie des Indikators zurück. Im weiteren können Sie durch Verwendung dieses Handles Daten bekommen, die vom entsprechenden Indikator berechnet werden. Daten des entsprechenden Puffers (technische Anzeiger haben berechnete Daten in ihren Innenpuffern, deren Anzahl abhängig vom Anzeiger von 1 bis 5 sein kann) können in mql5-Programm durch die Funktion CopyBuffer() kopiert werden.
Man kann nicht Daten des Indikators sofort nah seiner Erzeugung verwenden, denn man braucht einige Zeit für Berechnung der Indikatorwerte, darum ist es am besten Handles der Indikatoren in OnInit() zu erzeugen. Funktion iCustom() erzeugt entsprechenden Benutzerindikator und bei der erfolgreichen Erzeugung gibt sein handle zurück. Benutzerindikatoren können bis 512 Indikatorbuffer haben, den Inhalt durch die Funktion CopyBuffer() erhalten werden kann mit der Verwendung von handle.
Es gibt eine universelle Methode, durch die Funktion durch die Funktion IndicatorCreate() jeden technischen Indikator zu erzeugen. Als Eingabeparameter bekommt diese Funktion:
- Symbolname;
- Timeframe;
- Typ des erzeugten Indikators;
- Anzahl der Eingabeparameter des Indikators;
- Feld des Typs MqlParam, mit allen erforderlichen Eingabeparametern.
für die Befreiung des Speichers des Computers wird die Funktion IndicatorRelease() verwendet, der handle dieses Indikators übertragen wird.
Bemerkung. Wiederholter Aufruf der Funktion des Indikators mit denselben Parametern führt nicht zu vielfachen Steigerung des Counters der Verweise, Counter wird nur einmal um 1 vergroessert. Es ist aber empfehlenswert, handles der Indikatoren in der Funktion OnInit() oder im Konstruktor der Klasse zu bekommen, und dann diese handles in anderen Funktionen zu verwenden.
Alle Indikatoren haben mindestens 2 Parameter - Symbol und Periode. Wert des Symbols NULL bedeutet das laufende Instrument, Wert der Periode 0 bedeutet das laufende Timeframe.
Funktion |
Gibt handle des Indikators zurück: |
---|---|
Accelerator Oscillator |
|
Accumulation/Distribution |
|
Average Directional Index |
|
Average Directional Index by Welles Wilder |
|
Alligator |
|
Adaptive Moving Average |
|
Awesome Oscillator |
|
Average True Range |
|
Bears Power |
|
Bollinger Bands® |
|
Bulls Power |
|
Commodity Channel Index |
|
Chaikin Oscillator |
|
Benutzerindikator |
|
Double Exponential Moving Average |
|
DeMarker |
|
Envelopes |
|
Force Index |
|
Fractals |
|
Fractal Adaptive Moving Average |
|
Gator Oscillator |
|
Ichimoku Kinko Hyo |
|
Market Facilitation Index by Bill Williams |
|
Momentum |
|
Money Flow Index |
|
Moving Average |
|
Moving Average of Oscillator (MACD histogram) |
|
Moving Averages Convergence-Divergence |
|
On Balance Volume |
|
Parabolic Stop And Reverse System |
|
Relative Strength Index |
|
Relative Vigor Index |
|
Standard Deviation |
|
Stochastic Oscillator |
|
Triple Exponential Moving Average |
|
Triple Exponential Moving Averages Oscillator |
|
Williams' Percent Range |
|
Variable Index Dynamic Average |
|
Volumes |