Signatur
Beschreibung
trader_cdldragonflydoji() gehört zur PECL-Erweiterung Trader, die auf der TA-Lib (Technical Analysis Library) basiert. Die Funktion analysiert Kerzen-Kursdaten (Open, High, Low, Close) und erkennt darin das Dragonfly-Doji-Muster.
Ein Dragonfly-Doji ist eine einzelne Kerze, bei der der Eröffnungs- und Schlusskurs nahezu identisch und beide sehr nahe am Tageshoch liegen, während ein langer unterer Docht existiert. Dieses Muster gilt technisch als potenzielles Umkehrsignal – insbesondere nach einem Abwärtstrend deutet es auf eine mögliche Trendwende nach oben hin.
Das Rückgabe-Array enthält für jede Kerze einen Integerwert: 100 signalisiert ein erkanntes bullisches Muster, -100 ein bärisches, und 0 bedeutet, dass kein Muster erkannt wurde. Die ersten Einträge des Arrays sind häufig 0, da TA-Lib eine gewisse Anlaufphase (Look-back-Periode) benötigt.
Die Funktion ist besonders in der algorithmischen Chartanalyse und bei der Entwicklung von Handelssystemen nützlich, wenn Candlestick-Muster automatisch in historischen Kursdaten erkannt werden sollen.
Parameter
| Name | Typ | Default | Beschreibung |
|---|---|---|---|
| $open Pflicht | array | Array mit den Eröffnungskursen (Open) der Kerzen, indiziert von 0 bis n-1. |
|
| $high Pflicht | array | Array mit den Tageshöchstkursen (High) der Kerzen. | |
| $low Pflicht | array | Array mit den Tagestiefkursen (Low) der Kerzen. | |
| $close Pflicht | array | Array mit den Schlusskursen (Close) der Kerzen. |
Rückgabewert
100 = bullisches Dragonfly-Doji erkannt, -100 = bärisches Dragonfly-Doji erkannt, 0 = kein Muster. Gibt false zurück, wenn ein Fehler auftritt oder die Arrays ungültig sind.Beispiele
Dragonfly-Doji in historischen Kursdaten erkennen
<?php
// Beispielhafte OHLC-Kursdaten (z. B. Tageskerzen einer Aktie)
$open = [100.0, 98.5, 97.0, 96.5, 96.0];
$high = [101.0, 99.0, 97.5, 97.0, 96.1];
$low = [ 95.0, 93.0, 92.0, 91.5, 91.0];
$close = [100.8, 98.6, 97.1, 96.6, 96.05];
$result = trader_cdldragonflydoji($open, $high, $low, $close);
if ($result === false) {
echo 'Fehler bei der Berechnung.';
} else {
foreach ($result as $index => $signal) {
if ($signal !== 0) {
echo "Kerze #{$index}: Dragonfly-Doji erkannt (Signal: {$signal})\n";
} else {
echo "Kerze #{$index}: Kein Muster\n";
}
}
}
Integration in eine Handelsstrategie mit Trendfilter
<?php
// Simulierte OHLC-Daten mit einem eindeutigen Dragonfly-Doji-Muster
$open = [110.0, 108.0, 105.0, 102.0, 100.0, 100.05];
$high = [111.0, 109.0, 106.0, 103.0, 100.1, 100.10];
$low = [105.0, 103.0, 100.0, 97.0, 94.0, 94.50];
$close = [108.0, 105.0, 102.0, 100.0, 100.0, 100.08];
$signals = trader_cdldragonflydoji($open, $high, $low, $close);
if (is_array($signals)) {
$lastIndex = count($signals) - 1;
$lastSignal = $signals[$lastIndex];
if ($lastSignal === 100) {
echo 'Kaufsignal: Dragonfly-Doji nach Abwärtstrend – mögliche Trendwende nach oben.';
} elseif ($lastSignal === -100) {
echo 'Verkaufssignal: Dragonfly-Doji nach Aufwärtstrend erkannt.';
} else {
echo 'Keine Dragonfly-Doji-Kerze an der letzten Position.';
}
}
// Wichtig · Fallstricke
Voraussetzung: Die PECL-Erweiterung trader muss installiert und in der php.ini aktiviert sein (extension=trader). Sie ist nicht Teil der PHP-Standardinstallation.
Array-Längen: Alle vier Arrays (open, high, low, close) müssen exakt dieselbe Länge haben, da sonst false zurückgegeben wird.
Look-back-Periode: TA-Lib benötigt intern eine gewisse Mindestanzahl an Datenpunkten, um das Muster sicher zu erkennen. Die ersten Einträge des Rückgabe-Arrays können daher immer 0 sein, selbst wenn ein Muster vorläge.
Interpretation: Das Dragonfly-Doji sollte nie isoliert betrachtet werden. Erst in Kombination mit dem übergeordneten Trend und weiteren Indikatoren liefert das Muster zuverlässige Handelssignale.