3 分钟快速生成代码
输入想法,AI 即刻生成可运行代码
在 ptrade 量化交易平台中,使用 get_tick_direction 接口获取分时成交数据时,关于数据条数限制和返回数据异常的原因如下:
get_tick_direction 最多能获取多少条分时成交数据?根据 ptrade API 文档规定,get_tick_direction 接口的 data_count 参数最大值为 200。默认值为 50。因此,单次调用该接口最多只能获取 200 条分时成交数据。
data_count=300 但只返回了很少的数据?如果您设置了 data_count=300,但实际返回的数据很少,通常由以下几个原因导致:
data_count 的系统硬性上限是 200。即使您传入 300,系统最多也只会尝试返回 200 条数据。start_pos 附近)实际发生的逐笔成交本来就很少,那么返回的数据自然达不到您设定的上限。query_date=0 或当日日期),无法获取历史分时成交。如果您需要获取最新的分时成交,请确保您的账户已开通 Level2 行情,并将 data_count 设置在合法范围内(<=200)。
def initialize(context):
g.security = '000001.SZ'
set_universe(g.security)
def handle_data(context, data):
# 合法调用:获取最大允许的 200 条分时成交数据
direction_data = get_tick_direction(g.security, data_count=200)
if direction_data and g.security in direction_data:
# 获取实际返回的数据条数
actual_count = len(direction_data[g.security]['business_amount'])
log.info(f"成功获取 {actual_count} 条分时成交数据")
else:
log.warning("未获取到数据,请检查是否开通 Level2 行情!")