Signatur
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
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";
}
}
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.