调用方法:
get_extras(security_list, start_date, end_date, fields, count=None)
释义:
get_extras函数的主要功能获取基金的单位净值、累积净值、复权净值数据.
参数:
|
参数 |
含义 |
详细内容 |
|
security_list |
基金代码列表 |
列表格式,例如:['510300.OF','510500.OF'].基金代码可查看基金列表 |
|
start_date |
起始时间 |
格式:'%Y%m%d'.与count参数二选一,只能且必须填其中一个. |
|
end_date |
结束时间 |
格式:'%Y%m%d'.必须填写结束日期. |
|
fields |
数据字段 |
支持以下字段:> 'unit_net_value':单位净值(元/份)> 'acc_net_value':累计净值(元/份)> 'pre_net_value':复权净值(元/份) |
|
count |
历史长度 |
填数值,例如count=1,则代表以结束时间为起点向前取一天的历史数据.与start_date参数二选一,只能且必须填其中一个. |
注意事项:
1.该函数的symbol与fields两个参数都必须是列表格式.例如:['510300.OF']是对的,'510300.OF'是错的.
2.bar_count参数与start_date参数两个参数,如果选bar_count参数,start_date参数应输入None。如果选start_date参数,bar_count参数允许不输入。
3.该函数支持场外基金净值查询.
返回格式:
返回dict格式.其key是股票代码,值是pandas.Dataframe(索引是时间).
示例:
def init(context):
pass
def handle_bar(context,bar_dict):
# 获取沪深300ETF、中证500ETF2016-06-01到2016-06-05的单位净值、累计净值、复权净值
value1 = get_extras(['510300.OF', '510500.OF'], '20160601', '20160605', ['unit_net_value','acc_net_value','pre_net_value'])
# 获取沪深300ETF、中证500ETF2016-06-05前5个交易日的单位净值、累计净值、复权净值
value2 = get_extras(['510300.OF', '510500.OF'], None, '20160605', ['unit_net_value','acc_net_value','pre_net_value'], 5)
log.info(value1)
log.info(value2)
示例返回结果:
log.info(value1):
{'510300.OF': unit_net_value acc_net_value pre_net_value
2016-05-31 3.17 1.24 1.25
2016-06-01 3.16 1.23 1.25
2016-06-02 3.17 1.24 1.25
2016-06-03 3.19 1.25 1.26,
'510500.OF': unit_net_value acc_net_value pre_net_value
2016-05-31 6.20 1.74 1.74
2016-06-01 6.23 1.75 1.75
2016-06-02 6.27 1.76 1.76
2016-06-03 6.29 1.76 1.76}
log.info(value2):
{'510300.OF': unit_net_value acc_net_value pre_net_value
2016-05-30 3.07 1.20 1.21
2016-05-31 3.17 1.24 1.25
2016-06-01 3.16 1.23 1.25
2016-06-02 3.17 1.24 1.25
2016-06-03 3.19 1.25 1.26,
'510500.OF': unit_net_value acc_net_value pre_net_value
2016-05-30 5.95 1.67 1.67
2016-05-31 6.20 1.74 1.74
2016-06-01 6.23 1.75 1.75
2016-06-02 6.27 1.76 1.76
2016-06-03 6.29 1.76 1.76}