3 分钟快速生成代码
输入想法,AI 即刻生成可运行代码
在 ptrade 量化交易平台中,获取历史行情数据主要通过 get_history 和 get_price 两个 API 接口。这两个接口支持非常丰富的 K 线周期(频率),能够满足从高频到低频的各种量化策略需求。
根据 ptrade API 文档,frequency 参数支持以下周期:
'1m''5m''15m''30m''60m''120m''1d' 或 'daily''1w' 或 'weekly''mo' 或 'monthly''1q' 或 'quarter''1y' 或 'yearly'以下是如何在策略中获取不同周期历史数据的示例:
def initialize(context):
g.security = '600570.SS'
set_universe(g.security)
def handle_data(context, data):
# 获取过去10分钟的1分钟线数据
history_1m = get_history(10, frequency='1m', field='close', security_list=g.security)
log.info('1分钟线收盘价:\n%s' % history_1m)
# 获取过去5天的日线数据
history_1d = get_history(5, frequency='1d', field='close', security_list=g.security)
log.info('日线收盘价:\n%s' % history_1d)
# 获取过去5周的周线数据
history_1w = get_history(5, frequency='1w', field='close', security_list=g.security)
log.info('周线收盘价:\n%s' % history_1w)
1w)、月线等数据是由日线数据进行合成的。get_price 接口的特殊限制:在使用 get_price 接口时,count 参数只针对上述列出的标准频率有效。并且,'weekly', '1w', 'monthly', 'mo', 'quarter', '1q', 'yearly', '1y' 频率不支持 start_date 和 end_date 组合的入参,只支持 end_date 和 count 组合的入参形式。