当前位置: 首页 > news >正文

做网站必须开厂吗主流媒体网站建设

做网站必须开厂吗,主流媒体网站建设,网站建设年度汇报,做网站的工作轻松吗本文介绍如何使用 akshare 下载国内期货、股票和指数的历史行情数据。 Akshare 是一个丰富的金融数据查询的 Python 库,提供了大量的金融数据接口。本文将详细介绍如何使用 Akshare 下载期货、股票和指数数据,并提供完整的代码示例,以求大家…

本文介绍如何使用 akshare 下载国内期货、股票和指数的历史行情数据。

Akshare 是一个丰富的金融数据查询的 Python 库,提供了大量的金融数据接口。本文将详细介绍如何使用 Akshare 下载期货、股票和指数数据,并提供完整的代码示例,以求大家能快速拿到数据少走弯路。

期货合约主要是主力连续合约的历史行情数据下载,并于进行回测分析使用。

安装 Akshare

请确保已安装 Akshare,如下命令安装:

pip install akshare

了解它的更多数据,可查看它的文档:akshare documentation

下载期货数据

我使用 akshare 的重要原因就是它提供了下载期货的主力或连续合约的历史数据。开始我想 tushare 实现,映射每天的主力合约并对应获取其历史数据和拼接,这个过程本身就比较繁琐。再就是 tushare 的频率限制严重,测试几次就没有额度了。

akshare 中的主力和连续合约的数据是从新浪财经下载的,它的 symbol 名称与标准的是不一致的,不过可以通过函数 futures_display_main_sina 拿到映射关系。具体我不演示了,我搞了一份表格,便于我平时查看。

如需查看,可访问 新浪期货名称关系表格。

有了主力和连续合约的 symbol 名称,就可以使用 futures_main_sina 函数下载历史数据。

data = aks.futures_main_sina(symbol="C0",start_date="20230101"
)

如上的 C0 表示的是玉米主力合约。

我们可以定义一个函数,参数接受 symbol 名称和长度,输出结果其转换为易读的格式。

def future_history_bar(symbol, length=100):start_date = datetime.now() - timedelta(days=length * 2)data = aks.futures_main_sina(symbol=symbol, start_date=start_date.strftime("%Y%m%d"))data = data.rename(columns={"日期": "date","开盘价": "open","最高价": "high","最低价": "low","收盘价": "close","成交量": "volume","持仓量": "open_interest","动态结算价": "settle_price",})data["open"] = data["open"].astype(float)data["high"] = data["high"].astype(float)data["low"] = data["low"].astype(float)data["close"] = data["close"].astype(float)return data.iloc[-length:]

上面的参数和输出的定义看个人习惯,我比较习惯这样的使用方式,便于我计算指标。

下载股票数据

A 股股票数据可使用 stock_zh_a_hist 下载,它的输入参数包括股票代码、周期、复权方式和起始日期等参数。

data = aks.stock_zh_a_hist(symbol="000001",period="daily",adjust="qfq",start_date="20230101"
)

我们的习惯,一般默认前复权即可。

为了使用方便,同样可定义一个函数,易于使用:

def stock_history_bar(symbol, length=100):start_date = datetime.now() - timedelta(days=length * 2)data = aks.stock_zh_a_hist(symbol=symbol,period="daily",adjust="qfq",start_date=start_date.strftime("%Y%m%d"),)return data.rename(columns={"日期": "date","股票代码": "symbol","开盘": "open","最高": "high","最低": "low","收盘": "close","成交量": "volume",})[["date","symbol","open","high","low","close","volume",]].iloc[-length:]

我们可以定义一个函数,下载特定指数的历史数据,并将其转换为更易读的格式:

下载指数数据

A 股指数数据可通过 index_zh_a_hist 函数实现。输入参数包括指数代码、周期和起始日期等参数。

data = aks.index_zh_a_hist(symbol="000001",period="daily",start_date="20230101",end_date="20231231"
)

将其实现为 history_bar 函数的形式,便于我的使用。如下所示:

def index_history_bar(symbol, length=100):start_date = (datetime.now() - timedelta(days=length * 2)).strftime("%Y%m%d")end_date = datetime.now().strftime("%Y%m%d")data = aks.index_zh_a_hist(symbol=symbol,period="daily",start_date=start_date,end_date=end_date,)return data.rename(columns={"日期": "date","开盘": "open","最高": "high","最低": "low","收盘": "close","成交量": "volume",})[["date","open","high","low","close","volume",]].iloc[-length:]

现在,我们就已经有了三种不同交易品种的历史数据获取方法。

主函数

最后,还可以定义一个主函数,根据输入的类型下载相应的历史数据:

def history_bar(symbol, length=100, equity_type="stock"):if equity_type == "stock":return stock_history_bar(symbol, length=length)elif equity_type == "future":return future_history_bar(symbol, length=length)elif equity_type == "index":return index_history_bar(symbol, length=length)else:raise ValueError(f"Unsupported equity type: {equity_type}")

现在,是不是使用起来就非常方便了。

示例使用

通过以下示例演示如何调用这些函数来获取不同品种的历史行情数据:

获取上证数据数据:

symbol = "000001"  # 上证指数
length = 100
equity_type = "index"
data = history_bar(symbol, length, equity_type)
print(data)

获取平安银行数据:

symbol = "000001"  # 平安银行
length = 100
equity_type = "stock"
data = history_bar(symbol, length, equity_type)
print(data)

获取甲醇行情数据:

symbol = "MA0"  # 甲醇主连
length = 100
equity_type = "stock"
data = history_bar(symbol, length, equity_type)
print(data)

通过以上代码,现在就有了轻松下载股票、指数和期货历史数据的能力。这为数据分析提供了有力的支持。

完成代码请查看 hist_data.py。

希望本文对您有所帮助。如果有任何问题或建议,欢迎随时联系我。

http://www.15wanjia.com/news/181916.html

相关文章:

  • 江宁网站建设要多少钱毕设 做网站
  • 泉州建行 网站wordpress文章样式出错
  • 盖州网站优化电子商务网站建设课后作业
  • 网站备案个人信息泄露运营工资一般多少
  • 响应式潍坊网站建设网站app开发
  • 襄阳市做网站的公司定制购物平台
  • 连云港网站建设价位网络营销促销策略有哪些
  • 会计做帐模板网站世界做诡异的地方网站
  • 建个网站需要多少钱? 知乎郑州中航软件开发有限公司
  • 网站开发教程H5可以自己做网站吗
  • 企业网站优化公司哪家好微商分销模式有哪些
  • 网站数据库有什么用企业建站套餐
  • 网站换服务器后备案填写网站名称可以改么胶南网站建设公司
  • 菏泽网站建设信息帝国cms官方网站
  • 百度云电脑版网站入口企业网站设计方案书
  • 铜仁建设公司网站网站建设教程纯正苏州久远网络
  • 网站基本常识拼多多代运营
  • 资深的教育行业网站开发思帽西宁网站建设
  • 网站下拉菜单代码在线支付 网站模板
  • 广州网站开发广州亦客网络解答金城武重庆森林经典台词
  • 网上做调查问卷赚钱的网站广州企业建站系统模板
  • 浦口区网站建站公司注册核名流程
  • 在百度怎么建自己的网站免费给人做网站的
  • 织梦网站站标zf厂手表网站
  • 自己怎么做团购网站首页明月wordpress
  • 办网站需要多少费用南京制作网页学校
  • 从化网站设计怀化seo
  • 有哪几种语言做的网站云南网招聘
  • 淘客怎样做自己的网站云南个旧建设局网站
  • 店铺网站平台建设方案六安网站建设培训