(PECL trader >= 0.2.0)
trader_cci — Вычисляет индекс товарного канала
highМаксимальная цена, массив реальных значений.
lowМинимальная цена, массив реальных значений.
closeЦена закрытия, массив реальных значений.
timePeriodНомер периода. Допустимы значения от 2 до 100 000.
Функция возвращает массив с данными вычисления или false, если возникла ошибка.
<?php
// The CCI (Commodity Channel Index) is an oscillator that
// relies on historical price momentum to determine if it is "overbought" or "oversold".
// When greater than zero the price is "above" the historic average.
// When less than zero the price is "below" the historic average.
// Investopedia claims:
// "The CCI is an unbounded oscillator, meaning it can go higher or lower indefinitely. For this reason, overbought and oversold levels are typically determined for each individual asset by looking at historical extreme CCI levels where the price reversed from."
$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 = 7;
var_dump(trader_cci ($highs, $lows, $closes, $time_period));
/*
array(8) {
[6]=>
float(-83.234)
[7]=>
float(-137.329)
[8]=>
float(-145.78)
[9]=>
float(-101.047)
[10]=>
float(-9.331)
[11]=>
float(-59.339)
[12]=>
float(-66.964)
[13]=>
float(76.143)
}
*/