Start · Sprachen · PHP · Referenz · trader_cdlbreakaway

trader_cdlbreakaway

Funktion

Erkennt das Breakaway-Candlestick-Muster in OHLC-Kursdaten und gibt ein Array mit Signalwerten zurück.

Kategorie: math

Signatur

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

Beschreibung

Die Funktion trader_cdlbreakaway() ist Teil der PECL-Erweiterung Trader und basiert auf der TA-Lib-Bibliothek. Sie analysiert Kerzendiagramm-Daten (Open, High, Low, Close) und erkennt das sogenannte Breakaway-Muster – ein fünf-Kerzen-Umkehrmuster, das in bullischer oder bärischer Ausprägung auftreten kann.

Das Breakaway-Muster signalisiert eine mögliche Trendwende: Eine lange erste Kerze in Trendrichtung, gefolgt von einer Lücke (Gap) und drei weiteren Kerzen, wobei die fünfte Kerze die entgegengesetzte Richtung einschlägt und die Lücke zur zweiten Kerze schließt. Ein positiver Rückgabewert (100) zeigt ein bullisches Muster, ein negativer Wert (-100) ein bärisches Muster an.

Die Eingabe-Arrays müssen dieselbe Länge haben und die Kurswerte in chronologischer Reihenfolge enthalten. Das zurückgegebene Array hat denselben Index-Bereich wie die Eingabe, wobei die ersten Elemente (Look-back-Periode) auf 0 gesetzt sind, da für das Muster mindestens fünf Kerzen benötigt werden.

Diese Funktion eignet sich besonders für automatisierte technische Analysen im Bereich der Kursvorhersage und des algorithmischen Handels.

Parameter

Name Typ Default Beschreibung
$open Pflicht array Array mit den Eröffnungskursen der Kerzen in chronologischer Reihenfolge.
$high Pflicht array Array mit den Höchstkursen der Kerzen in chronologischer Reihenfolge.
$low Pflicht array Array mit den Tiefstkursen der Kerzen in chronologischer Reihenfolge.
$close Pflicht array Array mit den Schlusskursen der Kerzen in chronologischer Reihenfolge.

Rückgabewert

Typ
array|false
Beschreibung
Gibt ein Array mit ganzzahligen Signalwerten zurück: 100 für ein bullisches Breakaway-Muster, -100 für ein bärisches Muster und 0 für keine Erkennung. Gibt false zurück, wenn ein Fehler auftritt (z. B. ungültige oder unterschiedlich lange Eingabe-Arrays).

Beispiele

Einfache Erkennung des Breakaway-Musters

<?php
// Beispiel-OHLC-Daten (mind. 5 Kerzen erforderlich)
$open  = [44.0, 43.5, 43.0, 43.2, 43.8];
$high  = [45.0, 44.0, 43.5, 43.8, 44.5];
$low   = [43.0, 43.0, 42.5, 42.8, 43.0];
$close = [43.5, 43.2, 43.0, 43.5, 44.2];

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

if ($result === false) {
    echo 'Fehler bei der Berechnung.';
} else {
    foreach ($result as $index => $signal) {
        if ($signal !== 0) {
            $type = $signal > 0 ? 'Bullisch' : 'Bärisch';
            echo "Kerze {$index}: Breakaway-Muster erkannt ({$type})\n";
        }
    }
    if (!in_array(true, array_map(fn($v) => $v !== 0, $result))) {
        echo "Kein Breakaway-Muster in den Daten gefunden.\n";
    }
}
Kein Breakaway-Muster in den Daten gefunden.

Analyse einer längeren Kursreihe mit Ausgabe aller Signale

<?php
// Längere Kursdaten aus einer Datenbank oder API
$open  = [100, 102, 105, 104, 103, 101, 99, 97, 98, 100];
$high  = [103, 106, 107, 106, 105, 103, 101, 99, 101, 104];
$low   = [ 99, 101, 103, 102, 101,  99,  97, 95,  96,  98];
$close = [102, 105, 104, 103, 101,  99,  97, 98, 100, 103];

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

if ($signals !== false) {
    echo "Index | Signal\n";
    echo "------+-------\n";
    foreach ($signals as $i => $val) {
        $label = match(true) {
            $val > 0 => 'Bullisches Breakaway',
            $val < 0 => 'Bärisches Breakaway',
            default  => 'Kein Muster'
        };
        echo sprintf("%5d | %s\n", $i, $label);
    }
}
Index | Signal ------+------- 0 | Kein Muster 1 | Kein Muster 2 | Kein Muster 3 | Kein Muster 4 | Kein Muster 5 | Kein Muster 6 | Kein Muster 7 | Kein Muster 8 | Kein Muster 9 | Kein Muster

// Wichtig · Fallstricke

Voraussetzung: Die PECL-Erweiterung trader muss installiert und aktiviert sein (pecl install trader). Sie ist nicht Teil der Standard-PHP-Distribution.

Array-Länge: Alle vier Eingabe-Arrays müssen exakt dieselbe Anzahl an Elementen enthalten, andernfalls gibt die Funktion false zurück. Die minimale sinnvolle Datenmenge beträgt 5 Kerzen (Look-back-Periode des Musters).

Indexversatz: Die ersten Elemente des Ergebnis-Arrays (Look-back-Periode) werden automatisch auf 0 gesetzt. Der genaue Versatz kann über trader_cdlbreakaway implizit aus der Ausgabelänge abgeleitet werden.

Keine Finanzberatung: Die Ergebnisse dieser Funktion stellen keine Handelsempfehlungen dar. Candlestick-Muster sollten stets mit weiteren Indikatoren kombiniert werden.