get_individual_entrust - 获取逐笔委托行情

get_individual_entrust 是 PTrade 中用于获取逐笔委托行情的接口。

提示

  • level2
  • live-or-trading-module-only
  • permission-dependent

原型

get_individual_entrust(stocks=None, data_count=50, start_pos=0, search_direction=1, is_dict=False)

释义

get_individual_entrust 是 PTrade 中用于获取逐笔委托行情的接口。

研究:不支持;回测:不支持;模拟:官方目录未明确;实盘:支持。

参数

参数 是否必填 官方原始定义
stocks stocks=None
data_count data_count=50
start_pos start_pos=0
search_direction search_direction=1
is_dict is_dict=False

返回值

dict类型

正常返回dict类型数据,异常时返回None(NoneType)。

返回的数据格式如下:

{股票代码(str): [[时间戳毫秒级(int), 价格(float), 委托数量(int), 委托编号(int), 委托方向(int)], ...], "fields": ["business_time", "hq_px", "business_amount", "order_no", "business_direction", "trans_kind"]}

{"600570.SS": [[20220913105747848, 36.16, 700, 5383145, 0, 4], ...], "fields": ["business_time", "hq_px", "business_amount", "order_no", "business_direction", "trans_kind"]}

非dict类型

默认返回(python3.11版本支持)DataFrame,(python3.5版本支持)Panel类型,入参is_dict为True时返回dict类型。

1.(仅python3.11版本支持)DataFrame类型类型,异常时返回None(NoneType)

输出字段如下所示:

code: 代码(str);

business_time: 时间戳毫秒级(int);

hq_px: 价格(float);

business_amount: 委托数量(int);

order_no: 委托编号(int);

business_direction: 成交方向(int);

示例

def initialize(context):

g.security = "000001.SZ"

set_universe(g.security)

def before_trading_start(context, data):

g.flag = False

def handle_data(context, data):

if not g.flag:

# 获取当前股票池逐笔委托数据

entrust = get_individual_entrust()

log.info(entrust)

# 获取指定股票列表逐笔委托数据

entrust = get_individual_entrust(["000002.SZ", "000032.SZ"])

log.info(entrust)

# 获取委托量

if entrust is not None:

business_amount = entrust.query('code in ["000002.SZ"]')["business_amount"]

log.info("逐笔数据的委托量为:%s" % business_amount)

# 返回字典类型数据

entrust = get_individual_entrust([g.security], is_dict=True)

log.info("逐笔委托数据为:%s" % entrust)

g.flag = True

详细说明

get_individual_entrust(stocks=None, data_count=50, start_pos=0, search_direction=1, is_dict=False)

使用场景

该函数在交易模块可用

接口说明

该接口用于获取当日逐笔委托行情数据。

注意事项

沪深市场都有逐笔委托数据。

逐笔委托,逐笔成交数据需开通level2行情才能获取到数据,否则无数据返回。

当策略入参is_dict为True时返回的数据类型为dict,返回dict类型数据的速度比(python3.11版本支持)DataFrame,(python3.5版本支持)Panel类型数据有大幅提升。

参数详细说明

stocks: 默认为当前股票池中代码列表(list[str]);

data_count: 数据条数,默认为50,最大为200(int);

start_pos: 起始位置,默认为0(int);

search_direction: 搜索方向(1向前,2向后),默认为1(int);

is_dict: 返回类型(False-(python3.11版本支持)DataFrame,(python3.5版本支持)Panel; True-dict),默认为False;

返回值

dict类型

正常返回dict类型数据,异常时返回None(NoneType)。

返回的数据格式如下:

{股票代码(str): [[时间戳毫秒级(int), 价格(float), 委托数量(int), 委托编号(int), 委托方向(int)], ...], "fields": ["business_time", "hq_px", "business_amount", "order_no", "business_direction", "trans_kind"]}

{"600570.SS": [[20220913105747848, 36.16, 700, 5383145, 0, 4], ...], "fields": ["business_time", "hq_px", "business_amount", "order_no", "business_direction", "trans_kind"]}

非dict类型

默认返回(python3.11版本支持)DataFrame,(python3.5版本支持)Panel类型,入参is_dict为True时返回dict类型。

1.(仅python3.11版本支持)DataFrame类型类型,异常时返回None(NoneType)

输出字段如下所示:

code: 代码(str);

business_time: 时间戳毫秒级(int);

hq_px: 价格(float);

business_amount: 委托数量(int);

order_no: 委托编号(int);

business_direction: 成交方向(int);

trans_kind: 委托类型(int);

2.(仅python3.5版本支持)正常返回Pandas.panel对象,异常时返回None(NoneType)

Items axis: 股票代码列表(str);

Major_axis axis: 数据索引为自然数列(DataFrame);

Minor_axis axis: 包含以下信息:

business_time: 时间戳毫秒级(str:numpy.int64);

hq_px: 价格(str:numpy.int64);

business_amount: 委托数量(str:numpy.int64);

order_no: 委托编号(str:numpy.int64);

business_direction: 成交方向(str:numpy.int64);

trans_kind: 委托类型(str:numpy.int64);