我正在使用php的traderlibrary
我使用trader_bbands()函数

$bBand = trader_bbands( $NumberArray,
                        25,
                        TRADER_REAL_MIN,
                        TRADER_REAL_MIN,
                        TRADER_MA_TYPE_EMA
                        );

它返回三个数组。
$bBand[0]; // upper-edge of the Bollinger Band           ( an upline )
$bBand[1]; //  central line the Bollinger Bands surround ( a moving average )
$bBand[2]; // lower-edge of the Bollinger Band           ( a downline )

我原来的$NumberArray值都在2000.0
$bBand[1]是简单的移动平均数,所以它返回2000左右的数字。
但是$bBand[0]$bBand[2]返回值
如下所示(引用自var_dump()的示例)
  double(3.1325286910105E+38)
  [105] =>
  double(3.1907365920756E+38)
  [106] =>
  double(3.1907365920756E+38)
  [107] =>
  double(3.1740850650235E+38)
  [108] =>
  double(3.1498571396175E+38)

问题1:这个数组是什么意思?
我对布林格带的期望是在2000+α或2000-α左右排列。

最佳答案

1:1。作为第一步,查看trader_bbands()上的php库文档。发布MCVE-与-a-DataSET一起发布,以允许对公共DataSET3进行验证。比较引用实现以证明Trader php-library实现的{pass fail}-状态。
广告步骤1.:array trader_bbands ( array $real [, integer $timePeriod [, float $nbDevUp [, float $nbDevDn [, integer $mAType ]]]] )
让我们同意设置$nbDevUp = 1.0,而不是技术上最小的float TRADER_REAL_MIN让我们同意设置$nbDevDn = 1.0
让我们同意设置$timePeriod = 7
让我们同意设置$real

$real = array(
               0 => 2000.0,
               1 => 2001.0,
               2 => 2002.0,
               3 => 2003.0,
               4 => 2004.0,
               5 => 2005.0,
               6 => 2006.0,
               );

期望:
.std()-sigma相关的值应该成为一种公平的方式,而不是不知道关于Trader微积分的trader_bbands() php-library模型的所有实现细节,特别是在TRADER_MA_TYPE_EMA模式中,缺少模型中使用的指数加权细节。
php - trader_bbands()返回的值是什么意思?-LMLPHP
尽管如此
a)应该确定$bBand[0][i] - $bBand[1][i]=$bBand[1][i] - $bBand[2][i]之间的所有差异
b)在2.0方法中使用的指数值应该有一个值,记录在.ewma() php-library的某个地方。
好吧,当然,如果没有这样的值,可以使用暴力反向搜索所使用的匹配值,但是证明Trader值是在$bBand[1] php-library中以与使用Trader的常见量化实践兼容的方式计算的,这可能是一种相当低效的方法。

10-05 21:02