calMICDDatas method

dynamic calMICDDatas(
  1. dynamic close,
  2. dynamic p0,
  3. dynamic p1,
  4. dynamic p2,
)

计算MICD指标 @param close 收盘点 @param p0 = 3 SMA参数 (1 <= p0 <= 100) @param p1 = 10 MA的回溯周期 (1 <= p1 <= 100) @param p2 = 20 MA的回溯周期 (1 <= p2 <= 100)

Implementation

calMICDDatas(close, p0, p1, p2) {
  var obj = {};
  var i = 0;
  var mt1 = [];
  var ami = [];
  var dif = [];
  var micd = [];
  var len = close.length;
  var tm = REF(close, 1);
  for (i = 0; i < len; i++) {
    mt1.add(close[i] - tm[i]);
  }
  ami = SMA(mt1, p0, 1);
  var paramMa = REF(ami, 1);
  var maLeft = MA(paramMa, p1);
  var maRight = MA(paramMa, p2);
  var len2 = maLeft.length;
  var maxp = Tools.max(p2, p1);
  for (i = 0; i < len2; i++) {
    if (i >= maxp - 1) {
      dif.add(maLeft[i] - maRight[i]);
    } else {
      dif.add("-");
    }
  }
  micd = SMA(dif, 10, 1);
  //			obj['MI1'] = mt1;
  obj['DIF'] = dif;
  obj['MICD'] = micd;
  return obj;
}