var records = exchange.GetRecords(PERIOD_M5);.
var macd = TA.MACD(records, 12, 26, 9);
Log("DIF:", macd[0], "DEA:", macd[1], "MACD:", macd[2]);
Utilicé la función TA.MACD (() y el resultado fue un conjunto de todos los datos en 5 minutos.
Cómo obtener el valor exacto de 5 minutos correspondiente a MACD, es tomar el promedio de 5 minutos de la serie, o el último valor de la serie
可以看 这个 KDJ 的 例子 和 MACD 一样 https://zhuanlan.zhihu.com/p/27300549
var records = exchange.GetRecords(PERIOD_M5);.
var macd = TA.MACD(records, 12, 26, 9);
Log("DIF:", macd[0], "DEA:", macd[1], "MACD:", macd[2]);
这个 macd 二维数组 就是 三条指标线, macd[0][0] ,macd[1][0], macd[2][0] 就是这三条 线的第一个 点, 当前的 macd 三条线的数值 就是 对应他们的 macd[0][n], macd[1][n], macd[2][n] 最后一个数据。 在计算MACD 时传入 K线是 5分钟周期 算出来的就是 5分钟 K线 对应的 MACD 指标。
梦大,交易所的K线图中,MACD的小柱子的值取的是 当时刻最后一个数据么,还是一段时间的平均值啊。
比如我看5分钟的K线图,19:00的那根MACD柱子,它的值是18:55 ~ 19:00之间所有数据的平均值,还是19:00该时刻的值呢
梦大,那我用5分钟的macd数组的最后一个值判断金叉死叉,这样写有问题么
var records = exchange.GetRecords(PERIOD_M5);
var macd = TA.MACD(records, 12, 26, 9);
if(macd[0][records.length-1] > macd[1][records.length-1] && macd[0][records.length-1] - macd[1][records.length-1] > 5) {
return "buy";
}
if(macd[0][records.length-1] < macd[1][records.length-1] && macd[0][records.length-1] - macd[1][records.length-1] < -5) {
return "sell";
}
- 1
