Start · Sprachen · PHP · Referenz · trader_ceil

trader_ceil

Funktion

Rundet alle Werte eines numerischen Arrays auf die nächste ganze Zahl auf (Ceiling-Funktion).

Kategorie: math

Signatur

trader_ceil(array $real): array|false

Beschreibung

trader_ceil ist Teil der PECL-Erweiterung Trader (Technical Analysis for Traders) und wendet die mathematische Ceiling-Funktion elementweise auf jeden Wert eines Eingabe-Arrays an. Das Ergebnis entspricht dem Verhalten von PHPs eingebautem ceil(), jedoch auf einem gesamten Vektor von Gleitkommazahlen.

Die Funktion ist vor allem im Bereich der technischen Finanzanalyse nützlich, wenn Kursreihen, Indikatorwerte oder andere Zeitreihen normiert oder auf ganze Einheiten aufgerundet werden sollen. Sie arbeitet intern mit Double-Werten und gibt ein Array mit denselben Schlüsseln zurück, dessen Werte auf die nächstgrößere ganze Zahl aufgerundet sind.

Die Trader-Erweiterung muss separat über PECL installiert sein (pecl install trader). Alle Trader-Funktionen akzeptieren und liefern Arrays mit numerischen Gleitkommazahlen, wie sie typischerweise von historischen OHLCV-Daten stammen.

Parameter

Name Typ Default Beschreibung
$real Pflicht array Eindimensionales Array mit numerischen Gleitkommazahlen (z. B. Schlusskurse oder Indikatorwerte), auf deren Werte die Ceiling-Funktion angewendet wird.

Rückgabewert

Typ
array|false
Beschreibung
Gibt ein Array zurück, das die aufgerundeten Werte des Eingabe-Arrays enthält. Im Fehlerfall (z. B. ungültige Eingabe oder interner Fehler) wird false zurückgegeben.

Beispiele

Schlusskurse auf ganze Zahlen aufrunden

<?php
// Beispiel-Schlusskurse einer Aktie
$closePrices = [102.3, 98.7, 101.0, 99.1, 103.85];

$result = trader_ceil($closePrices);

if ($result !== false) {
    print_r($result);
} else {
    echo 'Fehler bei der Berechnung.';
}
Array ( [0] => 103 [1] => 99 [2] => 101 [3] => 100 [4] => 104 )

Kombination mit einem anderen Trader-Indikator

<?php
// Simulierte EMA-Werte (z. B. Ergebnis von trader_ema)
$emaValues = [150.12, 151.57, 149.80, 152.03, 153.49];

// Werte auf ganze Zahlen aufrunden, z. B. für Schwellenwert-Vergleiche
$ceiled = trader_ceil($emaValues);

foreach ($ceiled as $index => $value) {
    echo "Index $index: $value\n";
}
Index 0: 151 Index 1: 152 Index 2: 150 Index 3: 153 Index 4: 154

// Wichtig · Fallstricke

Voraussetzung: Die PECL-Erweiterung trader muss installiert und in der php.ini aktiviert sein. Ohne diese Erweiterung steht trader_ceil nicht zur Verfügung.

Das Eingabe-Array sollte ausschließlich numerische Werte enthalten. Nicht-numerische Werte oder null-Einträge können zu false als Rückgabewert oder zu unerwarteten Ergebnissen führen. Für einzelne Werte ist das eingebaute ceil() ausreichend und effizienter.