PHP Conference Japan 2024

trader_adx

(PECL trader >= 0.2.0)

trader_adx平均趨向指標

描述

trader_adx(
    array $high,
    array $low,
    array $close,
    int $timePeriod = ?
): array

參數

high

最高價,實數值的陣列。

low

最低價,實數值的陣列。

close

收盤價,實數值的陣列。

timePeriod

期間數。有效範圍從 2 到 100000。

回傳值

回傳包含計算資料的陣列,失敗則回傳 false。

新增筆記

使用者貢獻筆記 2 筆記

tl4gvx29ku39 at opayq dot com
3 年前
經過數小時的試驗和錯誤,我相當確信 adx 函式的工作方式與許多其他函式類似。插入一個或多個 ohlc 資料區塊,並設定輸出時間週期。

例如,我使用 48 個 30 分鐘區塊的 ohlc 資料(1 天)。但我希望指標符合設計(adx 通常為 14 個週期),因此我會將資料修剪到 14 個週期並設定 timePeriods=14,然後出現錯誤。不需要做那麼多。將整個 48 個週期的陣列放入並將週期設定為 14(或您喜歡的任何值)。輸出結果接近線上來源。該函式將使用最後 14 個週期或您設定的任何值來產生正確的輸出。

我能找到這些函式手冊的最佳/最接近地點是位於 tulipindicators dot org,您可以使用 tulipcell dot org 的免費外掛程式在 Excel 中進行測試。

我能夠提取使用這些函式產生的歷史指標資料,並且能夠重新建立與線上交易平台非常匹配的數字。
geekgirl dot joy at gmail dot com
3 年前
<?php
// 根據維基百科,ADX 是「金融工具價格序列中趨勢強度的指標」。
// 原始實作使用 14 天。

$highs = array(118.99, 119.14, 120.5, 115.23, 115.93, 118.829, 116, 112.2, 110.88, 110.19, 112.86, 112.11, 110.25, 112.44);
$lows = array(112.68, 115.26, 112.5, 110, 112.8, 113.61, 112.04, 108.71, 106.09, 103.1, 109.16, 106.77, 105, 107.67);
$closes = array(112.82, 117.32, 113.49, 112, 115.355, 115.54, 112.13, 110.34, 106.84, 110.08, 111.81, 107.12, 108.22, 112.28);

$time_period = floor(count($highs) / 2); // 根據維基百科關於 ADX 指標的計算:
// UpMove = 今天的高點 − 昨天的高點
// DownMove = 昨天的低點 − 今天的低點
//
// 因此:$time_period 的最大長度
// 是:floor(count($the_number_of_samples) / 2);


var_dump(trader_adx($highs, $lows, $closes, $time_period));
/*
array(1) {
[13]=>
float(48.909)
}
*/
To Top