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}