Start · Sprachen · PHP · Referenz · trader_get_unstable_period

trader_get_unstable_period

Funktion

Gibt die instabile Periode (Lookback-Perioden) für eine bestimmte TA-Lib-Funktion zurück.

Kategorie: math

Signatur

trader_get_unstable_period(int $functionId): int

Beschreibung

trader_get_unstable_period() ist Teil der PHP-Erweiterung Trader, die auf der TA-Lib (Technical Analysis Library) basiert. Die Funktion gibt die aktuell konfigurierte instabile Periode (Unstable Period) für eine angegebene technische Analysefunktion zurück.

Viele Indikatoren wie EMA (Exponential Moving Average) oder RSI benötigen eine gewisse Anzahl an Datenpunkten, bevor ihre Ausgabewerte als zuverlässig gelten. Diese Anlaufphase – die instabile Periode – kann für jede Funktion individuell über trader_set_unstable_period() gesetzt und mit dieser Funktion abgefragt werden.

Die Funktion-ID wird über eine der vordefinierten Trader-Konstanten vom Typ TRADER_FUNC_UNST_* angegeben. Mit der instabilen Periode kann die Ausgabe von Indikatoren präziser gesteuert werden, sodass nur stabile, verlässliche Werte für Handelsentscheidungen genutzt werden.

  • Typischer Einsatz: Abfrage der aktuell gesetzten instabilen Periode vor Berechnungen.
  • Ergänzende Funktion: trader_set_unstable_period() zum Setzen des Wertes.

Parameter

Name Typ Default Beschreibung
$functionId Pflicht int Die ID der TA-Lib-Funktion, für die die instabile Periode abgefragt werden soll. Es sind die vordefinierten Konstanten TRADER_FUNC_UNST_* zu verwenden, z. B. TRADER_FUNC_UNST_EMA für den Exponential Moving Average.

Rückgabewert

Typ
int
Beschreibung
Gibt die aktuell konfigurierte instabile Periode (in Perioden/Datenpunkten) für die angegebene Funktion als Integer zurück. Wurde kein Wert explizit gesetzt, wird der Standardwert 0 zurückgegeben.

Beispiele

Instabile Periode für EMA abfragen

<?php
// Voraussetzung: PHP-Trader-Extension ist geladen

// Aktuellen Wert für EMA abfragen (vor dem Setzen)
$periodVorher = trader_get_unstable_period(TRADER_FUNC_UNST_EMA);
echo "EMA instabile Periode (vorher): " . $periodVorher . PHP_EOL;

// Instabile Periode auf 30 setzen
trader_set_unstable_period(TRADER_FUNC_UNST_EMA, 30);

// Erneut abfragen, um Änderung zu bestätigen
$periodNachher = trader_get_unstable_period(TRADER_FUNC_UNST_EMA);
echo "EMA instabile Periode (nachher): " . $periodNachher . PHP_EOL;
EMA instabile Periode (vorher): 0 EMA instabile Periode (nachher): 30

Instabile Perioden mehrerer Indikatoren ausgeben

<?php
// Instabile Perioden für verschiedene Indikatoren abfragen
$indikatoren = [
    'EMA'  => TRADER_FUNC_UNST_EMA,
    'RSI'  => TRADER_FUNC_UNST_RSI,
    'DEMA' => TRADER_FUNC_UNST_DEMA,
];

foreach ($indikatoren as $name => $id) {
    $periode = trader_get_unstable_period($id);
    echo $name . " => instabile Periode: " . $periode . PHP_EOL;
}
EMA => instabile Periode: 0 RSI => instabile Periode: 0 DEMA => instabile Periode: 0

// Wichtig · Fallstricke

Hinweis: Die Funktion setzt voraus, dass die PHP-Erweiterung trader installiert und aktiviert ist (extension=trader in der php.ini). Ohne diese Erweiterung ist die Funktion nicht verfügbar.

Eine ungültige $functionId (d. h. kein gültiger TRADER_FUNC_UNST_*-Wert) kann zu undefiniertem Verhalten führen. Verwende daher ausschließlich die vordefinierten Konstanten.

Die instabile Periode wirkt sich auf die Anzahl der als unzuverlässig betrachteten Anfangswerte aus. Ein Wert von 0 bedeutet, dass die Standardberechnung ohne zusätzliche Anlaufphase erfolgt.