自动化获取,中证指数成份股技术数据——python量化
同样,下面 Python 程序是用于处理麦蕊数据的,其中包含三个自定义函数:处理 JSON 数据、获取中证指数成分股和获取麦蕊的技术数据。
程序的流程如下:首先在“获取中证指数成分股”函数中输入中证指数代码,然后该函数会返回该指数的成分股代码列表。接着,程序会使用循环来遍历每个成分股,并获取该成分股的麦蕊技术指标数据。最后,程序会对获取的 JSON 数据进行处理,并将其导出为 CSV 文件。
需要注意的是,这段程序使用的是麦蕊数据,因此需要获得相关的许可证才能运行。如果您想要使用这段程序,请确保已经获得了相关的许可证。
代码
import akshare as ak
import requests
import csv
import json
import pandas as pd
licence = '修改成你的licence'
# 读取json对象的自定义函数,index=[0],行内拼接
def json_to_index_df(url):
"""
读取json对象的自定义函数,使用requests库获取url的json数据,并将其转换成pandas的DataFrame格式
:param url: 传入url地址
:return: 返回DataFrame格式的数据
"""
response = requests.get(url)
data = response.json()
df = pd.DataFrame(data, index=[0])
return df
# 获取中证指数成份股代码
def get_component_codes(symbol):
"""
获取中证指数成份股代码的函数
:param symbol: 传入指数代码
:return: 返回成份股代码的列表
"""
index_stock_cons_csindex = ak.index_stock_cons_csindex(symbol=symbol)
codes = index_stock_cons_csindex['成分券代码']
return codes
# 用中证指数的成分股去获取json对象的自定义函数,包括分时交易、kdj、macd、ma和boll
def get_stock_data(symbol):
"""
用中证指数的成分股去获取json对象的自定义函数,包括分时交易、kdj、macd、ma和boll
:param symbol: 传入指数代码
:return: 返回成份股的交易数据csv文件
"""
codes = get_component_codes(symbol) # 调取自定义函数——获取中证指数成份股代码
dfs = []
for code in codes:
url_fs = f'http://api.mairui.club/hszb/fsjy/{code}/dq/{licence}'
url_kdj = f'http://api.mairui.club/hszb/kdj/{code}/dq/{licence}'
url_macd = f'http://api.mairui.club/hszb/macd/{code}/dq/{licence}'
url_ma = f'http://api.mairui.club/hszb/ma/{code}/dq/{licence}'
url_boll = f'http://api.mairui.club/hszb/boll/{code}/dq/{licence}'
df_fs = json_to_index_df(url_fs)
df_kdj = json_to_index_df(url_kdj)
df_macd = json_to_index_df(url_macd)
df_ma = json_to_index_df(url_ma)
df_boll = json_to_index_df(url_boll)
df = pd.concat([df_fs, df_kdj, df_macd, df_ma, df_boll], axis=1)
df.insert(0, '代码', code)
dfs.append(df)
result = pd.concat(dfs)
result.to_csv(f'{symbol}_成分股交易数据.csv', index=False, encoding='utf-8-sig')
get_stock_data('000016') #参数为中证指数代码
代码说明
该代码主要是获取中证指数成份股的分时交易、kdj、macd、ma 和 boll 数据,并将其保存为 csv 文件。其中,代码注释清晰明了,方便阅读和理解。主要函数包括三个:
-
json_to_index_df(url)
:读取 json 对象的自定义函数,使用 requests 库获取 url 的 json 数据,并将其转换成 pandas 的 DataFrame 格式。 -
get_component_codes(symbol)
:获取中证指数成份股代码的函数。 -
get_stock_data(symbol)
:用中证指数的成分股去获取 json 对象的自定义函数,包括分时交易、kdj、macd、ma 和 boll,并将结果保存为 csv 文件。
其中,get_stock_data(symbol)
函数中包含一个循环,用于遍历中证指数的所有成份股,并调用 json_to_index_df(url)
函数获取数据,并将其放入列表中。最后,将所有列表中的数据合并为一个 DataFrame,并保存为 csv 文件。
该代码对于有一定编程能力的人来说,可读性较高,易于理解。同时,使用了 pandas 库,对数据进行了处理和分析,能够更好地满足用户需求。
- 中证指数成份股技术数据获取程序
- 用Python获取中证指数成份股数据
- 自动化获取中证指数成份股交易数据
- 麦蕊数据处理:Python程序实现中证指数成份股技术数据获取
- 基于Python的中证指数成份股技术分析工具
#金融 #数据处理 #投资 #Python #中证指数