3 分钟快速生成代码
输入想法,AI 即刻生成可运行代码
在 JoinQuant(聚宽)量化平台中,进行基金策略回测和分析时,获取准确的基金净值(如单位净值、累计净值和复权净值)至关重要。聚宽提供了 get_extras 函数,专门用于高效查询场内及场外基金的净值数据。
get_extras 函数可以用来获取股票、基金、期货等标的的额外数据,针对基金,主要支持以下字段:
unit_net_value:基金单位净值acc_net_value:基金累计净值adj_net_value:场外基金的复权净值get_extras(info, security_list, start_date='2015-01-01', end_date='2015-12-31', df=True, count=None)
'unit_net_value'、'acc_net_value'、'adj_net_value' 等。['510300.XSHG', '519671.OF'])。'YYYY-MM-DD'。pandas.DataFrame 格式。默认为 True。start_date 二选一。以下示例展示了如何在研究环境或策略中获取场内 ETF(如华泰柏瑞沪深300ETF 510300.XSHG)和场外开放式基金(如银河沪深300价值指数 519671.OF)的单位净值与累计净值:
from jqdata import *
# 设定要查询的基金列表(包含场内与场外基金)
funds = ['510300.XSHG', '519671.OF']
# 1. 获取单位净值 (unit_net_value)
df_unit = get_extras('unit_net_value', funds, start_date='2023-01-01', end_date='2023-01-10')
print("=== 基金单位净值 ===")
print(df_unit)
# 2. 获取累计净值 (acc_net_value)
df_acc = get_extras('acc_net_value', funds, start_date='2023-01-01', end_date='2023-01-10')
print("\n=== 基金累计净值 ===")
print(df_acc)
# 3. 获取场外基金复权净值 (adj_net_value)
df_adj = get_extras('adj_net_value', ['519671.OF'], start_date='2023-01-01', end_date='2023-01-10')
print("\n=== 场外基金复权净值 ===")
print(df_adj)
.XSHG,深圳后缀为 .XSHE(例如 '510050.XSHG')。.OF(例如 '110003.OF')。get_price 获取盘中实时二级市场交易价格,也可以通过 get_extras 获取基金公司公布的每日一级市场净值。get_extras 的净值数据。