Start · Sprachen · PHP · Referenz · trader_cdlthrusting

trader_cdlthrusting

Funktion

Erkennt das Thrusting-Candlestick-Muster in OHLC-Kursdaten und gibt für jeden Datenpunkt einen ganzzahligen Signalwert zurück.

Kategorie: math

Signatur

trader_cdlthrusting(array $open, array $high, array $low, array $close): array|false

Beschreibung

Die Funktion trader_cdlthrusting() ist Teil der PECL-Erweiterung Trader und implementiert die Erkennung des Thrusting-Candlestick-Musters aus der technischen Analyse. Das Thrusting-Muster ist ein zweiteiliges Kerzenmuster, das in einem Abwärtstrend auftritt: Auf eine lange schwarze (bearishe) Kerze folgt eine weiße (bullishe) Kerze, deren Schlusskurs unterhalb der Mitte des vorherigen Kerzenkörpers liegt. Es ähnelt dem In-Neck-Muster, ist jedoch etwas bullischer, da der Schlusskurs etwas höher liegt.

Der Rückgabewert ist ein Array mit denselben Indizes wie die Eingabedaten. Ein Wert von -100 signalisiert das Vorhandensein des Musters (bearishe Fortsetzungssignal), 0 bedeutet, dass kein Muster erkannt wurde. Beachte, dass das Thrusting-Muster grundsätzlich als bearishes Fortsetzungsmuster gilt, weshalb negative Werte zurückgegeben werden.

Die Funktion eignet sich für den Einsatz in Handelsalgorithmen, Backtesting-Systemen oder zur automatisierten Mustererkennung in Kursdaten. Die Eingabearrays müssen gleich lang sein und OHLC-Daten (Open, High, Low, Close) in derselben Reihenfolge enthalten.

Parameter

Name Typ Default Beschreibung
$open Pflicht array Array der Eröffnungskurse (numerisch indiziert, aufsteigend nach Zeit).
$high Pflicht array Array der Tageshöchstkurse (numerisch indiziert, gleiche Länge wie open).
$low Pflicht array Array der Tagestiefstkurse (numerisch indiziert, gleiche Länge wie open).
$close Pflicht array Array der Schlusskurse (numerisch indiziert, gleiche Länge wie open).

Rückgabewert

Typ
array|false
Beschreibung
Gibt ein Array mit ganzzahligen Signalwerten zurück. -100 steht für das erkannte Thrusting-Muster (bearishes Fortsetzungssignal), 0 für kein erkanntes Muster. Bei ungültigen Eingaben oder einem Fehler wird false zurückgegeben.

Beispiele

Thrusting-Muster in historischen Kursdaten erkennen

<?php
// Beispiel-OHLC-Daten (z. B. aus einer Datenbank geladen)
$open  = [44.34, 43.80, 43.50, 44.00, 43.20];
$high  = [45.10, 44.20, 44.10, 44.50, 43.80];
$low   = [43.90, 43.40, 43.10, 43.60, 42.90];
$close = [44.00, 43.60, 43.30, 43.70, 43.40];

$result = trader_cdlthrusting($open, $high, $low, $close);

if ($result === false) {
    echo 'Fehler bei der Berechnung.' . PHP_EOL;
} else {
    foreach ($result as $index => $signal) {
        if ($signal !== 0) {
            echo "Thrusting-Muster bei Index $index erkannt (Signal: $signal)" . PHP_EOL;
        }
    }
    if (max(array_map('abs', $result)) === 0) {
        echo 'Kein Thrusting-Muster in den Daten gefunden.' . PHP_EOL;
    }
}
?>
Kein Thrusting-Muster in den Daten gefunden.

Signale aller erkannten Muster ausgeben

<?php
// Größeres Datenset mit synthetischen Kurswerten
$open  = [50.0, 49.5, 49.0, 48.5, 48.8];
$high  = [50.5, 50.0, 49.5, 49.0, 49.3];
$low   = [49.2, 49.0, 48.5, 47.8, 48.3];
$close = [49.5, 49.1, 48.7, 48.9, 48.5];

$signals = trader_cdlthrusting($open, $high, $low, $close);

if (is_array($signals)) {
    echo 'Index => Signal' . PHP_EOL;
    foreach ($signals as $i => $val) {
        echo "  [$i] => $val" . PHP_EOL;
    }
}
?>
Index => Signal [0] => 0 [1] => 0 [2] => 0 [3] => 0 [4] => 0

// Wichtig · Fallstricke

PECL-Erweiterung erforderlich: trader_cdlthrusting() steht nur zur Verfügung, wenn die PECL-Erweiterung trader installiert und in der PHP-Konfiguration aktiviert ist (extension=trader).

Das Thrusting-Muster wird in der technischen Analyse als bearishes Fortsetzungsmuster interpretiert. Es sollte nicht isoliert betrachtet werden, sondern stets im Kontext des übergeordneten Trends und anderer Indikatoren.

Alle vier Eingabearrays müssen exakt dieselbe Länge und numerische Indizierung aufweisen, andernfalls liefert die Funktion false. Fehlende oder NaN-Werte können zu unerwarteten Ergebnissen führen.