Start · Sprachen · PHP · Referenz · trader_cdlhikkake

trader_cdlhikkake

Funktion

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

Kategorie: math

Signatur

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

Beschreibung

trader_cdlhikkake() ist Teil der PECL-Erweiterung Trader, die auf der TA-Lib-Bibliothek basiert. Die Funktion analysiert Kerzen-Chart-Daten (Open, High, Low, Close) und identifiziert das sogenannte Hikkake-Muster — ein technisches Candlestick-Muster, das mögliche Trendumkehrungen oder Fehlausbrüche signalisiert.

Das Hikkake-Muster entsteht, wenn ein Inside-Bar-Muster (eine Kerze, deren Hoch und Tief vollständig innerhalb der vorherigen Kerze liegt) von einer anschließenden Kerze "gebrochen" wird, die jedoch einen falschen Ausbruch darstellt. Es ist ein Indikator dafür, dass der Markt einen kurzzeitigen Fehlausbruch vollzogen hat und sich in die entgegengesetzte Richtung bewegen könnte.

Der Rückgabewert ist ein numerisches Array mit den gleichen Indizes wie die Eingabedaten. Ein Wert von 100 signalisiert ein bullishes Hikkake-Muster, -100 ein bearishes, und 0 bedeutet, dass an dieser Stelle kein Muster erkannt wurde. Anfangselemente des Arrays können fehlen (sog. Lookback-Periode), da das Muster eine Mindestanzahl vorheriger Kerzen benötigt.

Die Funktion ist besonders nützlich in der algorithmischen Handelsanalyse, wenn Fehlausbrüche automatisch erkannt und als Einstiegssignale für gegenläufige Positionen genutzt werden sollen.

Parameter

Name Typ Default Beschreibung
$open Pflicht array Array mit den Eröffnungskursen (Open) der Kerzen, in chronologischer Reihenfolge.
$high Pflicht array Array mit den Höchstkursen (High) der Kerzen, in chronologischer Reihenfolge.
$low Pflicht array Array mit den Tiefstkursen (Low) der Kerzen, in chronologischer Reihenfolge.
$close Pflicht array Array mit den Schlusskursen (Close) der Kerzen, in chronologischer Reihenfolge.

Rückgabewert

Typ
array
Beschreibung
Gibt ein Array mit ganzzahligen Werten zurück. 100 steht für ein erkanntes bullishes Hikkake-Muster, -100 für ein bearishes Muster und 0 für kein Muster an diesem Index. Die ersten Elemente (Lookback-Periode) sind möglicherweise nicht im Ergebnis-Array enthalten. Bei einem Fehler wird false zurückgegeben.

Beispiele

Hikkake-Muster in historischen Kursdaten erkennen

<?php
// Beispiel-OHLC-Daten (z. B. Tageskerzen)
$open  = [44.34, 44.09, 44.15, 43.61, 44.33, 44.83, 45.10, 45.15, 43.61, 44.33];
$high  = [44.84, 44.74, 44.31, 44.33, 44.83, 45.10, 45.15, 45.50, 44.33, 44.83];
$low   = [44.09, 43.61, 43.61, 43.09, 43.61, 44.28, 44.83, 44.50, 43.09, 43.61];
$close = [44.09, 44.15, 43.61, 44.33, 44.83, 45.10, 44.83, 45.00, 44.33, 44.83];

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

if ($result === false) {
    echo "Fehler bei der Berechnung.\n";
} else {
    foreach ($result as $index => $signal) {
        if ($signal !== 0) {
            $richtung = $signal > 0 ? 'Bullish' : 'Bearish';
            echo "Index $index: $richtung Hikkake-Muster erkannt (Wert: $signal)\n";
        }
    }
    if (array_sum(array_map('abs', $result)) === 0) {
        echo "Kein Hikkake-Muster in den Daten gefunden.\n";
    }
}
Kein Hikkake-Muster in den Daten gefunden.

Integration in eine einfache Handelsstrategie

<?php
// Simulierte Kursdaten mit mehr Einträgen
$open  = [10, 10.5, 10.2, 10.1, 10.3, 10.6, 10.4, 10.2, 10.1, 9.9, 10.0, 10.3];
$high  = [10.6, 10.8, 10.5, 10.4, 10.7, 10.9, 10.7, 10.5, 10.4, 10.2, 10.4, 10.7];
$low   = [9.9,  10.2, 10.0, 9.9,  10.1, 10.4, 10.1, 9.9,  9.8,  9.6,  9.8,  10.0];
$close = [10.5, 10.3, 10.1, 10.3, 10.6, 10.5, 10.2, 10.1, 9.9,  10.0, 10.3, 10.5];

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

echo "Ergebnisse der Hikkake-Erkennung:\n";
foreach ($result as $i => $val) {
    echo "Kerze $i: Signal = $val\n";
}

// Einfache Strategie: Kaufsignal bei bullishem Hikkake
foreach ($result as $i => $val) {
    if ($val === 100) {
        echo "=> Kaufsignal bei Kerze $i (Close: {$close[$i]})\n";
    } elseif ($val === -100) {
        echo "=> Verkaufssignal bei Kerze $i (Close: {$close[$i]})\n";
    }
}

// Wichtig · Fallstricke

Voraussetzung: Die Funktion ist nur verfügbar, wenn die PECL trader-Erweiterung installiert und aktiviert ist. Ohne diese Erweiterung führt der Aufruf zu einem fatalen Fehler.

Lookback-Periode: Das Hikkake-Muster benötigt mindestens einige vorangegangene Kerzen für die Berechnung. Die ersten Indizes des Ergebnis-Arrays können fehlen oder unvollständig sein — daher sollten Eingabe- und Ausgabe-Array nicht ohne Weiteres index-synchron behandelt werden.

Datenkonsistenz: Alle vier Eingabe-Arrays (open, high, low, close) müssen dieselbe Länge haben und korrekte OHLC-Beziehungen aufweisen (high >= open, high >= close, low <= open, low <= close). Fehlerhafte Daten können zu falschen Erkennungen führen.