В чем смысл значений, возвращаемых функцией trader_bbands ()?

Я использую библиотеку трейдеров PHP.

Я использую 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) 

Q1: Что означает этот массив?

То, что я ожидаю от Bollinger Band, составляет около 2000 + α, или 2000 – α.

A1:
1. Просмотрите документацию php-библиотеки на trader_bbands() в качестве первого шага.
2. Опубликуйте MCVE allogether-with-a- DataSET чтобы разрешить проверку против общего DataSET
3. Сравните эталонные реализации, чтобы доказать {PASS | FAIL} -статегия реализации php-библиотеки Trader .

Шаг объявления:
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 .std() -sigma, должны быть справедливыми, независимо от того, чтобы не знать всех подробностей реализации модели php-библиотеки Trader trader_bbands() , особенно в режиме TRADER_MA_TYPE_EMA , без использования экспоненциально-взвешенных данных внутри их модели. введите описание изображения здесь тем не менее

A) Там должны быть уверены, что все различия
между $bBand[0][i] - $bBand[1][i] == $bBand[1][i] - $bBand[2][i] будет == 2.0

B) Должно быть значение того, какое значение экспоненты использовалось в .ewma() зарегистрированном где-то в php-библиотеке Trader .

Ну, конечно, без такой ценности можно прибегнуть к обратному поиску грубой силы для используемого совпадающего значения, но это может быть довольно неэффективный метод доказательства того, что значения $bBand[1] вычисляются в php-библиотеке Trader в способ, совместимый с общей практикой Quant-use
ewmaEXP = 2.0 / ( timePeriod + 1 ) .