PHP Conference Japan 2024

trader_linearreg_slope

(PECL trader >= 0.2.0)

trader_linearreg_slope线性回归斜率

描述

trader_linearreg_slope(数组 $real, 整数 $timePeriod = ?): 数组

参数

real

实数值数组。

timePeriod

周期数。有效范围从 2 到 100000。

返回值

返回包含计算数据的数组,或在失败时返回 false。

添加注释

用户贡献的注释 2 条注释

Angel J. Salinas
8 年前
// 如果你没有 php_trader 库或需要超过 3 位小数精度,
// 你可以使用这个函数
public static function linearreg_slope( $valuesIn, $period )
{
{

$valuesOut = array();
$startIdx = 0;

$endIdx = count($valuesIn) - 1;
$sumX = $period * ( $period - 1 ) * 0.5;
$sumXSqr = $period * ( $period - 1 ) * ( 2 * $period - 1 ) / 6;

$divisor = $sumX * $sumX - $period * $sumXSqr;
{
for ( $today = $startIdx, $outIdx = 0; $today <= $endIdx; $today++, $outIdx++ ) {
$sumXY = 0;
$sumY = 0;
if ( $today >= $period - 1 ) {
{
for( $aux = $period; $aux-- != 0; ) {
$sumY += $tempValue = $valuesIn[$today - $aux];
}
$sumXY += (double)$aux * $tempValue;
}
}

}
}
Angel J. Salinas
5 年前
trader 库中精度的默认值为 3,但可以使用类似以下代码轻松增加:

ini_set( 'trader.real_precision', '6' );
To Top