एफएमजेड प्लेटफॉर्म और समुदाय के साथ प्रतिक्रिया के लिए रणनीतियों और कोड, विचारों और टेम्पलेट्स को साझा करें
संक्षिप्त विवरणः एटीआर उदाहरण के साथ औसत गणना के लिए विस्तृत कदम। सूचकांक कॉल, डेटा पॉइंट अपर्याप्तता, आकस्मिक डेटा त्रुटि, आदि विवरण शामिल हैं इस तरह की रणनीति के लिए महत्वपूर्ण है विवरणों का पता लगाना।
आप सभी का स्वागत है, सहयोग करें, एक साथ सीखें और आगे बढ़ें। v:haiyanyydss
var arecords = _C(exchange.GetRecords, 300); var time = arecords[arecords.length - 1].Time var nowtime = time; var atremaarr = []; var Onoff = 0; function main() { while (true) { //这里开始 把这段放循环里 var Num = 50; //可以改,几根的平均值 var records = _C(exchange.GetRecords, 300); var atr = TA.EMA(records, 9) nowtime = records[records.length - 1].Time if (nowtime > time || Onoff == 0) { atr = atr.slice(atr.length - (20 + Num)); for (var i = 0; i < (atr.length - Num); i++) { //(atr.length-Num) 长度减掉周期 比如500根 前50根是不准的平均值 这里就取450 var atremTEMP = 0; //计算求和的,初始设置为0 for (var j = 0; j < Num; j++) { //求和 atrTEMP = atr[i + j] > 0 ? atr[i + j] : 0; //剔除意外数据 ,大于O 取值,小于O 或者其他情况取值O atremTEMP += atrTEMP; } atremaarr.push(atremTEMP / Num); //把平均值P到数组 } time = nowtime; Onoff += 1; Log("计算第:", Onoff, "次。"); } //这里结算 把这段放循环里 Sleep(3000) Log("最后一根:", _N(atremaarr[atremaarr.length - 1], 2)) //拿值 //Log("最后第二根:", _N(atremaarr[atremaarr.length-2],2)) } }