exchange.Buy

exchange.Buy()函数用于下买单。Buy()函数是交易所对象{@var/EXCHANGE exchange}的成员函数。

Buy()函数操作交易所对象exchange绑定的交易所账户,exchange对象的成员函数(方法)的用途仅与exchange相关,文档后续不再赘述。

下单成功返回订单ID,下单失败返回空值。 string / 空值

exchange.Buy(price, amount) exchange.Buy(price, amount, …args)

price参数用于设置订单价格。 price true number amount参数用于设置订单数量。 amount true number 扩展参数,可以将附加信息输出到此条下单日志中,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(“buy”)

// 注意,这里的下单价格100仅为示例,具体测试时可自行设置、修改
var id = exchange.Buy(100, 1)
Log("id:", id)

} python def main(): while not exchange.IO(“status”): Sleep(1000) exchange.SetContractType(“rb888”) exchange.SetDirection(“buy”)

id = exchange.Buy(100, 1)
Log("id:", id)```

”`cpp void main() { while (exchange.IO(“status”) == 0) { Sleep(1000); } exchange.SetContractType(“rb888”); exchange.SetDirection(“buy”);

auto id = exchange.Buy(100, 1);
Log("id:", id);

} exchange.Buy()返回的订单编号,可用于查询订单信息和取消订单。 javascript function main() { // 鉴于测试代码,不使用商品期货策略一般架构,这里仅判断exchange.IO(“status”)函数,判断连接期货公司前置机成功后立即执行测试代码。股票证券无需使用exchange.IO(“status”)判断连接状态 while (!exchange.IO(“status”)) { Sleep(1000) } // 设置合约代码 exchange.SetContractType(“rb888”) // 设置下单方向 exchange.SetDirection(“buy”)

// 下单价格参数传-1即为市价单
var id = exchange.Buy(-1, 1)
Log("id:", id)

} python def main(): while not exchange.IO(“status”): Sleep(1000) exchange.SetContractType(“rb888”) exchange.SetDirection(“buy”)

id = exchange.Buy(-1, 1)
Log("id:", id)```

”`cpp void main() { while (exchange.IO(“status”) == 0) { Sleep(1000); } exchange.SetContractType(“rb888”); exchange.SetDirection(“buy”);

auto id = exchange.Buy(-1, 1);
Log("id:", id);

} 商品期货、股票证券除了使用市价单(价格参数传-1,实际上是系统使用了一个较高的买入价或较低的卖出价来确保成交),还可以使用限价单方式下单。可以使用较大的滑点来确保与对手盘成交,请参考exchange.Sell”`中的示例。

期货合约下单时必须注意交易方向是否设置正确,如果交易方向与交易函数不匹配将会报错。参考:{@fun/Futures/exchange.SetDirection exchange.SetDirection} 参数price设置为-1用于下市价单,回测系统、实盘环境均支持市价单。 股票证券下单:

下单量为股票股数,而非股票手数(在股票证券交易所对象中如无特殊说明,相关的量均为股票股数)。下单量需要符合股票信息中的每手股数要求。例如,02333.HK港股长城汽车,每手500股,下单量必须是500的整数倍。601633.SH为A股长城汽车,每手100股,下单量必须是100的整数倍。每手股数可以从SetContractType函数返回的数据结构中获取(VolumeMultiple字段),也可以从GetTicker()函数返回的数据结构中的Info属性中获取(LotSize字段)。

{@fun/Trade/exchange.Sell exchange.Sell}, {@fun/Futures/exchange.SetContractType exchange.SetContractType}, {@fun/Futures/exchange.SetDirection exchange.SetDirection}