定时撤单
// 回测环境 /*backtest start: 2018-01-01 00:00:00 end: 2018-08-01 11:00:00 period: 1m exchanges: [{"eid":"Bitfinex","currency":"BTC_USD"}] */ // 撤单函数 function CancelPendingOrders() { Sleep(1000); // 休眠 1秒 var ret = false; while (true) { var orders = null; // 持续获取未成交订单数组,如果返回异常,则继续获取 while (!(orders = exchange.GetOrders())) { Sleep(1000); // 休眠 1秒 } if (orders.length == 0) { // 如果订单数组为空 return ret; // 返回撤单状态 } for (var j = 0; j < orders.length; j++) { // 遍历未成交订单数组 exchange.CancelOrder(orders[j].Id); // 依次取消未成交订单 ret = true; if (j < (orders.length - 1)) { Sleep(1000); // 休眠 1秒 } } } } // 主函数 function main() { while (true) { // 轮询模式 CancelPendingOrders(); // 取消未成交的挂单 Log(_C(exchange.GetAccount)); // 打印当前账户信息 Sleep(LoopInterval * 60000); // 休眠 } }