exchange.CancelOrder()函数用于取消订单。
exchange.CancelOrder()函数返回真值(例如true)表示取消订单请求发送成功,返回假值(例如false)表示取消订单请求发送失败。返回值仅代表请求发送成功或失败,若要判断交易所是否已取消订单,可调用exchange.GetOrders()进行确认。
bool
exchange.CancelOrder(orderId) exchange.CancelOrder(orderId, …args)
orderId参数用于指定要取消的订单。
orderId
true
string
扩展参数,可以将附带信息输出到该撤单日志中,arg参数支持传入多个。
arg
false
string / number / bool / object / array / any (系统支持的所有类型)
”`javascript function main(){ // 鉴于测试代码,不使用商品期货策略一般架构,这里仅仅判断exchange.IO(“status”)函数,判断连接期货公司前置机成功后立即执行测试代码。股票证券无需使用exchange.IO(“status”)判断连接状态 while (!exchange.IO(“status”)) { Sleep(1000) } // 设置合约代码 exchange.SetContractType(“rb888”) // 设置下单方向 exchange.SetDirection(“sell”)
// 下单价格只是举例,较大的价格不会成交,订单会处于订单薄中待成交状态,具体测试可以自行调整价格
var id = exchange.Sell(99999, 1)
exchange.CancelOrder(id)
}
python
def main():
while not exchange.IO(“status”):
Sleep(1000)
exchange.SetContractType(“rb888”)
exchange.SetDirection(“sell”)
id = exchange.Sell(99999, 1)
exchange.CancelOrder(id)```
”`cpp void main() { while (exchange.IO(“status”) == 0) { Sleep(1000); } exchange.SetContractType(“rb888”); exchange.SetDirection(“sell”);
auto id = exchange.Sell(99999, 1);
exchange.CancelOrder(id);
}
撤销订单。
javascript
function main() {
// 鉴于测试代码,不使用商品期货策略一般架构,这里仅仅判断exchange.IO(“status”)函数,判断连接期货公司前置机成功后立即执行测试代码。股票证券无需使用exchange.IO(“status”)判断连接状态
while (!exchange.IO(“status”)) {
Sleep(1000)
}
// 设置合约代码
exchange.SetContractType(“rb888”)
// 设置下单方向
exchange.SetDirection(“sell”)
Log("数据1", "数据2", "数据3", "...")
var data2 = 200
// 下单价格只是举例,较大的价格不会成交,订单会处于订单薄中待成交状态,具体测试可以自行调整价格
var id = exchange.Sell(100000, 0.1, "附带数据1", data2, "...")
exchange.CancelOrder(id, "附带数据1", data2, "...")
LogProfit(100, "附带数据1", data2, "...")
}
python
def main():
while not exchange.IO(“status”):
Sleep(1000)
exchange.SetContractType(“rb888”)
exchange.SetDirection(“sell”)
Log("数据1", "数据2", "数据3", "...")
data2 = 200
id = exchange.Sell(100000, 0.1, "附带数据1", data2, "...")
exchange.CancelOrder(id, "附带数据1", data2, "...")
LogProfit(100, "附带数据1", data2, "...")```
”`cpp void main() { while (exchange.IO(“status”) == 0) { Sleep(1000); } exchange.SetContractType(“rb888”); exchange.SetDirection(“sell”);
Log("数据1", "数据2", "数据3", "...");
int data2 = 200;
auto id = exchange.Sell(100000, 0.1, "附带数据1", data2, "...");
exchange.CancelOrder(id, "附带数据1", data2, "...");
LogProfit(100, "附带数据1", data2, "...");
}
优宽量化的API函数中可以产生日志输出的函数,例如:Log(…)、exchange.Buy(Price, Amount)、exchange.CancelOrder(Id)“`等,都可以在必要参数后附加额外的输出参数。
例如:exchange.CancelOrder(orders[j].Id, orders[j]),这样在取消Id为orders[j].Id的订单时,会附带输出该订单的信息,即orders[j]这个Order结构。
参数orderId的类型为字符串类型。
{@fun/Trade/exchange.Buy exchange.Buy}, {@fun/Trade/exchange.Sell exchange.Sell}, {@fun/Trade/exchange.GetOrders exchange.GetOrders}, {@fun/Trade/exchange.IO exchange.IO}(API 限流控制)