oracle-fx trader,【API解析】| 关于order/trader对象及订

在这里进行对order对象以及部分交易函数api的描述

1,order对象

每天17:00会对今天产生的order对象全部进行归类,往后调用get_orders获取的order对象归属于第二天(get_orders仅可以获取当天的order对象)。所以保存起来的orderID不要在17:00之后或第二天通过get_orders调用,可能引起异常。如果需要在交易日结束后获取这些对象,请在17:00之前对这些对象使用全局变量保存

注意这是一个对象,获取对象中的各种属性可以用UserOrder.order_id等方法,order对象的表示形式类似于(标识UserOrder):

(注意获取的order对象是否是如下形式,有时由于大家的获取方式会获得一个列表/字典,再读取对象时就会报错)UserOrder({'status': open, 'style': LimitOrderStyle: _limit_price=7.58, 'order_id': 1536135521, 'price': 0.0, 'pindex': 0, 'amount': 100, 'action': u'open', 'security': '000001.XSHE', 'side': u'long', 'filled': 0, 'add_time': datetime.datetime(2016, 6, 1, 9, 30)})

ps:一般我们用的都是order对象,注意和trade对象进行区分

2,订单处理

非交易时间下单会等待交易时间再进行撮合,每天16:00对所有未完成订单信息进行撤销(期货交易所将夜盘归于下一个交易日)

当撮合完成时有一个类似于以下的 info(标识order StockOrder,order FutureOrder等等)  :order StockOrder(entrust_id=1536139611 security=600741.XSHG mode=OrderAmount: _amount=100 style=MarketOrderStyle side=long margin=False entrust_time=2016-06-01 09:30:00 error=) trade price: 12.78, amount:100, commission: 5.0

3,交易函数

下限价单指定style=LimitOrderStyle(目标价位) 即可, 买入时不能高于目标价位, 卖出时不能低于目标价位, 如果不满足, 则等待满足后再交易,注意股票的交易单位为每手100股。

下单失败可以查看日志中对应时间点的warning,有详细说明

下单可能的失败原因:

1.标的数量经调整后变成0 (请看下面的说明)

2.标的停牌

3.标的成交量不足以交易(涨停,跌停等)

4.标的未上市或者退市

5.标的不存在

6.为股票、基金开了空单

7.选择了不存在的仓位号,如没有建立多个仓位,而设定pindex的数大于0

当订单直接变为废单时,下单函数会返回None而不是order对象,此时直接调用order对象的属性会引发报错NoneType' object has no attribute XXX

解决方法:Order = order('000001.XSHE',1000) if not Order:     print('下单失败') if Order:     print(Order.filled)  #打印已成交数量

注意:

?因为下列原因, 有时候实际买入或者卖出的股票数量跟您设置的不一样,这个时候我们会在您的log中添加警告信息。

1.卖出时会根据您持有股票的数量来限制您卖出的数量

2.我们会遵守A股交易规则: 每次交易数量只能是100的整数倍, 但是卖光所有股票时不受这个限制

3.在下单时会根据您当前的可用资金,成交量等对下单股数进行调整。

4.您在触发下单信息时自己打印的成交记录(信息)并不是特别可靠,请以实际结果及日志信息为准

? 系统会在每天16:00取消所有未完成交易

下单失败可以查看日志中对应时间点的warning,有详细说明

关于下单函数的说明请查看API或者 【API解析】| 关于下单函数的说明

ps:(图片显示有点迷糊,右键点击图片,选择'在新标签页中打开图片'即可浏览高清图片)

0e77d7613a7b235e4c56302f6eb4a991.png

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值