calDPODatas method

dynamic calDPODatas(
  1. dynamic close,
  2. dynamic p1,
  3. dynamic p2,
  4. dynamic p3,
)

计算DPO指标 @param close 收盘点 @param p1 = 20 回溯周期(1 <= p1 <= 300) @param p2 = 10 回溯周期(1 <= p2 <= 300) @param p3 = 6 回溯周期(1 <= p3 <= 300)

Implementation

calDPODatas(close, p1, p2, p3) {
  var resultObj = {};
  var size = close.length;
  var i = 0;
  var maArr = MA(close, p1);
  var refArr = REF(maArr, p2);
  var dpoArr = [];
  for (i = 0; i < size; i++) {
    if (Tools.isNaN(refArr[i])) {
      dpoArr.add(0.0);
    } else {
      dpoArr.add(close[i] - refArr[i]);
    }
  }
  var madpoArr = MA(dpoArr, p3);
  resultObj['DPO'] = dpoArr;
  resultObj['MADPO'] = madpoArr;
  return resultObj;
}