Start · Sprachen · PHP · Referenz · trader_cdlgapsidesidewhite

trader_cdlgapsidesidewhite

Funktion

Erkennt das <code>Up/Down-Gap-Side-by-Side-White-Lines</code>-Candlestick-Muster in OHLC-Kursdaten.

Kategorie: math

Signatur

trader_cdlgapsidesidewhite(array $open, array $high, array $low, array $close): array

Beschreibung

Die Funktion trader_cdlgapsidesidewhite() ist Teil der TRADER-Erweiterung für PHP, die auf der TA-Lib (Technical Analysis Library) basiert. Sie analysiert OHLC-Kerzenchartdaten (Open, High, Low, Close) und erkennt das Up/Down-Gap-Side-by-Side-White-Lines-Muster.

Das Muster besteht aus drei Kerzen: einer langen bullischen oder bärischen Kerze, gefolgt von zwei kleineren bullischen Kerzen, die eine Lücke (Gap) zur ersten Kerze aufweisen und dabei nebeneinander auf ähnlichem Preisniveau liegen. Ein Up-Gap-Muster gilt als Fortsetzungssignal in einem Aufwärtstrend, ein Down-Gap-Muster als Fortsetzungssignal in einem Abwärtstrend.

Der Rückgabewert jedes Elements im Ausgabe-Array gibt an, ob das Muster erkannt wurde: 100 für ein bullisches Signal, -100 für ein bärisches Signal und 0 für kein erkanntes Muster. Trader und Quantitative-Analysten verwenden diese Funktion typischerweise in automatisierten Handelssystemen zur Mustererkennung.

Die Funktion erwartet, dass alle vier Eingabe-Arrays die gleiche Anzahl an Elementen enthalten und die Kursdaten chronologisch geordnet sind. Die ersten Elemente des Ausgabe-Arrays können 0 sein, da für die Mustererkennung mehrere vorherige Kerzen benötigt werden (sog. Lookback-Periode).

Parameter

Name Typ Default Beschreibung
$open Pflicht array Array der Eröffnungskurse (Open), chronologisch geordnet.
$high Pflicht array Array der Höchstkurse (High), chronologisch geordnet.
$low Pflicht array Array der Tiefstkurse (Low), chronologisch geordnet.
$close Pflicht array Array der Schlusskurse (Close), chronologisch geordnet.

Rückgabewert

Typ
array
Beschreibung
Gibt ein Array zurück, dessen Elemente den Musterstatus für jeden Datenpunkt angeben: 100 für ein erkanntes bullisches Muster, -100 für ein bärisches Muster und 0 wenn kein Muster erkannt wurde. Das Array hat dieselbe Länge wie die Eingabe-Arrays. Bei einem Fehler (z. B. ungleiche Array-Längen) wird false zurückgegeben.

Beispiele

Grundlegende Mustererkennung mit OHLC-Daten

<?php
// Beispiel-OHLC-Kursdaten (z.B. Tageskerzen)
$open  = [44.0, 45.0, 46.5, 46.5, 47.0];
$high  = [45.5, 46.5, 47.5, 47.5, 48.0];
$low   = [43.5, 44.5, 46.0, 46.0, 46.5];
$close = [45.0, 46.0, 47.0, 47.0, 47.5];

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

if ($result === false) {
    echo 'Fehler bei der Mustererkennung.' . PHP_EOL;
} else {
    foreach ($result as $index => $signal) {
        if ($signal !== 0) {
            $typ = ($signal === 100) ? 'Bullisch (Up-Gap)' : 'Bärisch (Down-Gap)';
            echo "Kerze #{$index}: {$typ}-Muster erkannt (Wert: {$signal})" . PHP_EOL;
        } else {
            echo "Kerze #{$index}: Kein Muster erkannt" . PHP_EOL;
        }
    }
}
Kerze #0: Kein Muster erkannt Kerze #1: Kein Muster erkannt Kerze #2: Kein Muster erkannt Kerze #3: Kein Muster erkannt Kerze #4: Kein Muster erkannt

Kombination mehrerer Candlestick-Muster für eine Handelsstrategie

<?php
// Größerer Datensatz für eine realistische Analyse
$open  = [100, 102, 105, 108, 108, 109, 110];
$high  = [103, 106, 108, 112, 111, 112, 113];
$low   = [ 99, 101, 104, 107, 107, 108, 109];
$close = [102, 105, 107, 111, 110, 111, 112];

$gapSide  = trader_cdlgapsidesidewhite($open, $high, $low, $close);

if ($gapSide === false) {
    echo 'Fehler: Ungültige Eingabedaten.' . PHP_EOL;
} else {
    echo 'Gap-Side-by-Side-White-Lines Signale:' . PHP_EOL;
    foreach ($gapSide as $i => $wert) {
        $label = match(true) {
            $wert > 0  => '↑ Bullisch',
            $wert < 0  => '↓ Bärisch',
            default    => '– Kein Signal',
        };
        echo "  [{$i}] Close={$close[$i]} => {$label}" . PHP_EOL;
    }
}
Gap-Side-by-Side-White-Lines Signale: [0] Close=102 => – Kein Signal [1] Close=105 => – Kein Signal [2] Close=107 => – Kein Signal [3] Close=111 => – Kein Signal [4] Close=110 => – Kein Signal [5] Close=111 => – Kein Signal [6] Close=112 => – Kein Signal

// Wichtig · Fallstricke

Voraussetzung: Die PHP-TRADER-Erweiterung muss installiert und aktiviert sein (extension=trader in der php.ini). Sie ist nicht standardmäßig in PHP enthalten und muss über PECL installiert werden: pecl install trader.

Array-Längen: Alle vier Eingabe-Arrays müssen exakt dieselbe Anzahl an Elementen aufweisen, sonst gibt die Funktion false zurück.

Lookback-Periode: Das Muster benötigt mindestens 3 vorherige Kerzen zur Erkennung. Die ersten Elemente des Ergebnis-Arrays werden daher typischerweise 0 sein, bis ausreichend Daten vorhanden sind.

Signalinterpretation: Das Muster allein sollte nicht als einziges Handelssignal verwendet werden. Es empfiehlt sich, es mit weiteren Indikatoren (z. B. Volumen, Trendstärke) zu kombinieren, um Fehlsignale zu reduzieren.