用户需要实现的函数:
initialize:初始函数,整个程序运行,初始函数只调用一次,初始函数用来定义一直股票等。
handle_data:每个单位时间调用一次,就像unity中脚本的Update()函数一样,每隔一段时间就调用一次,在由事件触发的量化中,交易条件就放在handle_data中。
before_trading_start:每天交易前调用一次。
after_trading_end:每天结束交易后调用一次。
process_initialize: 回测进程重启时执行(initialize之后)
after_code_change:若代码发生改变,则会执行这个函数(模拟盘)
策略设置函数:
set_benchmark:设置基准,默认选取沪深300指数作为每日价格判断策略的好坏和一系列风险计算的基准,也可以使用set_benchmark指定其他股票/指数/ETF的价格作为基准
set_order_cost:设置佣金/印花税。
set_slippage:设定滑点,回测/模拟时有效,下单后,真实的成交价与下单时预期的价格总有一定偏差,因此我们加入滑点模式来帮助我们更好模拟真实市场,现在只支持固定滑点。
获取数据函数:
get_price:获取历史数据
history:获取历史数据
attribute_history:获取历史数据
get_current_data: 获取当前时间
get_extras:获取基金净值/期货估算结算价
get_fundamentals:查询财务数据
gta.run_query:更多财务及宏观数据
get_index_stocks:获取指数股份
get_industry_stocks:获取概念成分
get_concept_stocks:获取所有标的信息,获取平台支持的所有股票、基金、指数、期货信息
get_security_info:获取单个标的信息
新增了 jqdata 模块用来提供更多数据, 如果要使用下面的 API 请先导入 jqdata 模块,
jqdata.all_trade_days:获取所有交易,获取所有交易日, 不需要传入参数, 返回一个包含所有交易日的 numpy.ndarray, 每个元素为一个 datetime.date 类型.
jqdata.get_trade_days:获取指定范围交易日,获取指定日期范围内的所有交易日, 返回 numpy.ndarray, 包含指定的 start_date 和 end_date, 默认返回至 datatime.date.today() 的所有交易日。
jqdata.get_trade_days:获取资金流信息
下单函数:
order:按股数下单
order_target:目标股数下单
order_value:按价值下单
cancel_order:撤单
get_open_orders:获取未完成订单
get_orders:获取订单信息
get_trades:获取成交信息
作者:CCH陈常鸿
来源:CSDN
原文:https://blog.csdn.net/ILYPL/article/details/73518793