如何使用Python获取实时共同基金信息?
在本文中,我们将编写Python脚本来实时获取共同基金信息。今天共同基金在投资者中是一个非常流行的术语,所以让我们为他们做一些帮助。 Mftool 模块将有助于从 AFM(共同基金协会)收集实时数据。
Mftool的特点:
- 使用方案代码从共同基金获取最新报价。
- 获取 AMF 中可用的所有注册方案
- 获取资产净值 (NAV) 跟踪记录
- 获取所有带有 Scheme 代码的 Schemes 列表。
注意:该模块能够从印度共同基金协会收集数据。
在开始之前,我们需要安装这个模块:
将此模块运行到您的终端中。
pip install mftool
让我们逐步了解这些模块:
步骤 1:导入模块并为 Mftool 创建一个对象。
Python3
# import module
from mftool import Mftool
obj = Mftool()
Python3
# pass the scheme code into
# methods
data = obj.get_scheme_quote('119551')
print(data)
Python3
obj.get_scheme_details("119551")
Python3
data = mf.get_scheme_historical_nav("119551")
print(data)
Python3
# dict demonstration
data['fund_house']
Python3
data['data']
Python3
data = obj.get_scheme_codes()
print(data)
Python3
data = obj.get_open_ended_equity_scheme_performance(True)
print(data)
Python3
value = obj.get_open_ended_debt_scheme_performance(True)
print(value)
Python3
data = obj.get_all_amc_profiles(True)
print(data)
第 2 步:使用get_scheme_quote()方法获取方案报价。
注意:此处显示所有方案代码:单击
蟒蛇3
# pass the scheme code into
# methods
data = obj.get_scheme_quote('119551')
print(data)
输出:
第 3 步:使用get_scheme_details()方法获取具有特定 Scheme 代码的 Scheme 详细信息。
蟒蛇3
obj.get_scheme_details("119551")
输出:
第 4 步:使用get_scheme_historical_nav () 方法获取 Scheme 历史 NAV 的数据。
蟒蛇3
data = mf.get_scheme_historical_nav("119551")
print(data)
输出:
注意:此数据采用字典形式。
现在我们可以根据自己的需要操作这些数据。
蟒蛇3
# dict demonstration
data['fund_house']
输出:
'Aditya Birla Sun Life Mutual Fund'
历史资产净值数据列表。
蟒蛇3
data['data']
输出:
[{'date': '25-09-2020', 'nav': '156.32930'},
{'date': '24-09-2020', 'nav': '156.37000'},
{'date': '23-09-2020', 'nav': '156.40260'},
{'date': '22-09-2020', 'nav': '156.34590'},
{'date': '21-09-2020', 'nav': '156.29950'},
{'date': '18-09-2020', 'nav': '156.20390'},
{'date': '17-09-2020', 'nav': '156.16490'},
{'date': '16-09-2020', 'nav': '156.11460'},
{'date': '15-09-2020', 'nav': '156.00040'},
{'date': '14-09-2020', 'nav': '156.12840'},
{'date': '11-09-2020', 'nav': '156.11520'},
....
第 5 步:使用get_scheme_codes()方法列出共同基金计划代码和名称。
蟒蛇3
data = obj.get_scheme_codes()
print(data)
输出:
第 6 步:使用get_open_ended_equity_scheme_performance()模块获取股权计划的每日表现。
蟒蛇3
data = obj.get_open_ended_equity_scheme_performance(True)
print(data)
输出:
{"Large Cap": [{"scheme_name": "Aditya Birla Sun Life Frontline Equity",
"benchmark": "NIFTY 50 Total Return Index",
"latest NAV- Regular": "210.1600",
"latest NAV- Direct": "224.8700",
"1-Year Return(%)- Regular": "-4.65",
"1-Year Return(%)- Direct": "-4.02",
"3-Year Return(%)- Regular": "0.21",
"3-Year Return(%)- Direct": "1.03",
"5-Year Return(%)- Regular": "5.97",
"5-Year Return(%)- Direct": "6.93"},
.........
第 7 步:使用get_open_ended_debt_scheme_performance()模块获取债务计划的每日表现。
蟒蛇3
value = obj.get_open_ended_debt_scheme_performance(True)
print(value)
输出:
{"Long Duration": [{"scheme_name": "ICICI Prudential Long Term Bond Fund",
"benchmark": "NIFTY Long Duration Debt Total Return Index",
"latest NAV- Regular": "70.0523",
"latest NAV- Direct": "74.6568",
"1-Year Return(%)- Regular": "11.13",
"1-Year Return(%)- Direct": "11.68",
"3-Year Return(%)- Regular": "8.52",
............
步骤 7:具有get_all_amc_profiles()模块的所有 AMC 配置文件。
蟒蛇3
data = obj.get_all_amc_profiles(True)
print(data)
输出: