एफएमजेड प्लेटफॉर्म और समुदाय के साथ प्रतिक्रिया के लिए रणनीतियों और कोड, विचारों और टेम्पलेट्स को साझा करें
संक्षिप्त विवरणः कुछ शर्तों को पूरा करने के लिए एडीएक्स संकेतक का उपयोग करके एफएमजेड संचार सूचना आप कई लेन-देन के लिए क्रमबद्ध कर सकते हैं
आप सभी का स्वागत है, सहयोग करें, एक साथ सीखें और आगे बढ़ें। v:haiyanyydss
/*backtest start: 2020-01-01 00:00:00 end: 2021-02-02 00:00:00 period: 1h basePeriod: 1h exchanges: [{"eid":"Futures_OKCoin","currency":"ETH_USD"},{"eid":"Futures_OKCoin","currency":"BTC_USD"}] args: [["P_contract","quarter|quarter"],["P_contract_value","10|100"]] */ /* 为回馈FMZ平台与社区,进行策略&代码&思路&模板的分享 简介: 调用ADX指标,达到一定条件进行FMZ通讯通知 可以顺序轮询多交易对 欢迎合作交流,共同学习进步~ v:haiyanyydss */ function getPara(val, i){ val = ""+val; var ret = val.split("|").length>i?val.split("|")[i]:val.split("|")[val.split("|").length-1]; return ret.trim(); } function Trade(e){ this.e = e; this.last_alert_time = 0; this.ontick = function(){ var records = _C(this.e.GetRecords); var last_record = records[records.length-1]; var adx = talib.ADX(records, this.adx_len); if(this.last_alert_time < last_record.Time && adx[adx.length-1] > this.adx_val){ this.last_alert_time = last_record.Time; Log(this.e.GetCurrency(), this.contract, "adx值超过"+this.adx_val , new Date(), "@"); } } } function main() { LogReset(); var tradeArr = []; for(var i in exchanges){ var trade = new Trade(exchanges[i]); trade.adx_len = 1*getPara(P_adx_len, i); trade.adx_val = 1*getPara(P_adx_val, i); trade.contract = getPara(P_contract, i); trade.e.SetContractType(trade.contract); tradeArr.push(trade) } while (true) { for(var i in tradeArr){ Sleep(P_interval_time); tradeArr[i].ontick(); } } }
हल्के बादलयह वीवीसी नोटिफिकेशन अब काम नहीं कर रहा है?
लेखक ट्रेडमैनओह, लेकिन ईमेल के माध्यम से सूचित किया जा सकता है।