网易首页 > 网易号 > 正文 申请入驻

手把手教你调用5个公共API获取数字货币市场数据(内附详细源码)

0
分享至

获取数字货币的历史行情数据可以通过一些专门的数字货币数据API或者第三方数据服务来实现。以下是一些获取数字货币历史行情数据的方法:

1 CoinGecko API

CoinGecko是一个数字货币市场数据服务提供商,提供历史和实时的数字货币数据。它的API可以通过HTTP请求方式获取数字货币的历史行情数据。例如,以下代码可以获取比特币在2022年1月的价格数据:


import requests
url = 'https://api.coingecko.com/api/v3/coins/bitcoin/history'params = {'date': '01-01-2022', 'localization': 'false'}response = requests.get(url, params=params)
data = response.json()print(data)

在这个示例中,我们使用requests库发送HTTP请求并获取CoinGecko API的响应。我们在API请求URL中设置了正确的参数,即货币对和时间间隔。我们使用params参数将API请求URL和参数传递给get()方法,并使用response.json()将响应转换为Python对象。我们使用Python中的for循环遍历数据,并使用列表索引访问价格数据和时间戳。然后,我们将时间戳转换为datetime对象,并打印时间戳和价格数据。


import requestsimport datetime
url = "https://api.coingecko.com/api/v3/coins/bitcoin/market_chart/range"params = {"vs_currency": "usd","from": "1392577232","to": "1617288232"
response = requests.get(url, params=params)data = response.json()
prices = data["prices"]for price in prices:timestamp = datetime.datetime.fromtimestamp(price[0]/1000.0)price = price[1]print(timestamp, price)

2 CryptoCompare API

CryptoCompare是另一个数字货币市场数据服务提供商,也提供历史和实时的数字货币数据。它的API可以通过HTTP请求方式获取数字货币的历史行情数据。例如,以下代码可以获取比特币在2022年1月的价格数据:‍


import requests
url = 'https://min-api.cryptocompare.com/data/v2/histoday'params = {'fsym': 'BTC', 'tsym': 'USD', 'limit': '31', 'toTs': '1641024000'}response = requests.get(url, params=params)
data = response.json()print(data)

3 Alpha Vantage

除了API外,还可以通过一些第三方数据服务提供商来获取数字货币的历史行情数据。例如,Alpha Vantage提供了一些免费的数字货币历史行情数据,可以通过HTTP请求方式获取。以下代码可以获取比特币在2022年1月的价格数据:‍


import requests
url = 'https://www.alphavantage.co/query'params = {'function': 'DIGITAL_CURRENCY_DAILY', 'symbol': 'BTC', 'market': 'USD', 'apikey': 'your_api_key'}response = requests.get(url, params=params)
data = response.json()print(data)

请注意:以上示例中的API和服务可能需要注册并获取API Key或者令牌,具体使用方式需要查看对应的API文档。此外,获取历史行情数据的请求需要提供对应的数字货币代码、市场类型、日期范围等参数,具体参数需要根据API文档来设置。

4 CoinCap API

CoinCap API是一个提供加密货币市场数据的API,可以获取多个加密货币的历史价格、实时价格、市值、交易量等信息。CoinCap API提供了RESTful API和WebSocket API两种访问方式。

CoinCap API提供了免费和付费两种访问方式。免费访问方式有一些限制,例如每分钟最多只能发出10个请求,每个请求最多返回2000个数据点等。如果需要更多数据和更高的访问速度,可以考虑使用付费访问方式。

  1. 导入必要的库和模块。

  2. 设置API请求参数,包括URL和请求参数。API的文档应该包含有关可用参数和其值的信息。在这个例子中,我们使用CoinCap API和CoinGecko API来获取比特币历史价格数据。我们在API请求URL中设置了正确的参数,即时间间隔、开始时间和结束时间。

  3. 发送API请求。使用Python中的requests库可以轻松发送HTTP请求并获取响应。发送请求的方式通常是调用requests库中的get()方法并将API请求URL和参数作为参数传递。对于一些需要认证的API,还需要将API密钥作为参数传递。

  4. 解析JSON响应。API响应通常以JSON格式返回,因此需要使用json模块将响应转换为Python对象。使用Python中的json.loads()函数可以将JSON字符串转换为Python字典。

  5. 提取所需的数据。解析JSON响应后,我们可以从Python字典中提取所需的数据。提取数据的方法因API而异,通常需要检查API文档以查看可用的数据字段和其格式。

  6. 处理和可视化数据。一旦提取了所需的数据,我们可以使用Python中的其他库和模块进行进一步处理和可视化,例如使用Matplotlib库绘制图表或使用Pandas库进行数据分析。

在这个示例中,我们使用requests库发送HTTP请求并获取CoinCap API的响应。我们使用params参数将API请求URL和参数传递给get()方法,并使用response.json()将响应转换为Python对象。我们使用Python中的for循环遍历数据,并使用字典键访问价格数据和时间戳。然后,我们将时间戳转换为datetime对象,并打印时间戳和价格数据。


import requests
# 设置API请求参数url = "https://api.coincap.io/v2/assets/bitcoin/history"params = {"interval": "d1","start": "1483228800000", # 2017-01-01 的时间戳"end": "1649193600000" # 2022-04-05 的时间戳
# 发送API请求response = requests.get(url, params=params)
# 解析JSON响应data = response.json()
# 提取价格数据prices = data["data"]for price in prices:time = price["time"] # 时间戳price_usd = price["priceUsd"] # 价格(美元)print(f"{time}: {price_usd}")

5 直接调用交易所API

此处我们调用的是某安的rest API,获取btc的K线数据,并对数据框做一些基本处理后,用K线图形的形式将其可视化出来。


import requestsimport pandas as pdimport mplfinance as mpf
# 获取比特币K线数据url = 'https://api.binance.com/api/v3/klines'params = {'symbol': 'BTCUSDT','interval': '1d','limit': 1000res = requests.get(url, params=params)data = res.json()df = pd.DataFrame(data, columns=['timestamp', 'open', 'high', 'low', 'close', 'volume', 'close_time', 'quote_asset_volume', 'number_of_trades', 'taker_buy_base_asset_volume', 'taker_buy_quote_asset_volume', 'ignore'])df['timestamp'] = pd.to_datetime(df['timestamp'], unit='ms')df.set_index('timestamp', inplace=True)
df = df.apply(pd.to_numeric, errors='ignore')
# 画K线图mpf.plot(df, type='candle', volume=True,

程序运行后的K线图可视化结果:

以上是用5种不同方式调用API获取数字货币公开数据的方法及详细源码,你Get到了吗?

更多策略干货,欢迎加入数量技术宅的知识星球,每周一期超实用干货策略,欢迎添加技术宅的个人微信sljsz01、sljsz05获取星球优惠名额。

限时优惠特价

优惠请扫描上方二维码

特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“网易号”用户上传并发布,本平台仅提供信息存储服务。

Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.

相关推荐
热点推荐
53 岁任泉近况曝光!被曝与黄绮雯隐婚 17 年,婚姻幸福成人生赢家

53 岁任泉近况曝光!被曝与黄绮雯隐婚 17 年,婚姻幸福成人生赢家

混沌录
2026-06-01 21:47:12
今日最惨股,闪崩暴跌91%,从上一个交易日4.08跌到了0.35!

今日最惨股,闪崩暴跌91%,从上一个交易日4.08跌到了0.35!

丁丁鲤史纪
2026-06-01 11:30:42
发现没有?还有七天高考!社会上这5个反常现象,跟往年大不相同

发现没有?还有七天高考!社会上这5个反常现象,跟往年大不相同

神牛
2026-05-30 17:00:31
辱骂国人的俄乌网被暂时禁言,但真正的问题还未解决

辱骂国人的俄乌网被暂时禁言,但真正的问题还未解决

作家加野
2026-06-01 13:57:57
商业航天独角兽,利润飙升13000%!

商业航天独角兽,利润飙升13000%!

飞鲸投研
2026-06-01 19:15:16
武汉,跑出一个600亿光纤新贵

武汉,跑出一个600亿光纤新贵

财天COVER
2026-06-01 17:54:23
官网5大专家预测总决赛:3人看好马刺夺冠 文班布伦森争FMVP

官网5大专家预测总决赛:3人看好马刺夺冠 文班布伦森争FMVP

罗说NBA
2026-06-01 06:23:45
沈阳12小时出现576次闪电!怎么形成的?

沈阳12小时出现576次闪电!怎么形成的?

极目新闻
2026-06-01 20:32:06
他曾担任中央办公厅代主任,大肆迫害年迈的彭老总,后被判刑18年

他曾担任中央办公厅代主任,大肆迫害年迈的彭老总,后被判刑18年

大运河时空
2026-06-01 20:45:03
32岁白举纲喜为人父,1岁女儿白胖可爱,妻子非圈内人

32岁白举纲喜为人父,1岁女儿白胖可爱,妻子非圈内人

书慧我心
2026-06-01 14:13:33
广厦VS上海G4时间确定,卢伟采访被杨鸣调侃,孙铭徽不再想当绿叶

广厦VS上海G4时间确定,卢伟采访被杨鸣调侃,孙铭徽不再想当绿叶

体育大学僧
2026-06-01 12:37:29
亚历山大直言这是失败赛季:没能完成卫冕目标 文班的实力独一档

亚历山大直言这是失败赛季:没能完成卫冕目标 文班的实力独一档

罗说NBA
2026-06-01 06:40:03
排面拉满!半个娱乐圈齐聚谢霆锋演唱会,台下明星阵容堪比颁奖礼

排面拉满!半个娱乐圈齐聚谢霆锋演唱会,台下明星阵容堪比颁奖礼

乡野小珥
2026-06-01 18:24:21
军事 | 普京将此残骸交于美方,到底什么意思?

军事 | 普京将此残骸交于美方,到底什么意思?

新民周刊
2026-06-01 09:08:31
看完CBA总决赛G3,才发现值得入选国家队的三人,张镇麟攻守兼备

看完CBA总决赛G3,才发现值得入选国家队的三人,张镇麟攻守兼备

阿纂看事
2026-06-01 16:23:53
你不知道的民国,一段了不起的传奇,一个被雪藏的高光时代

你不知道的民国,一段了不起的传奇,一个被雪藏的高光时代

史政先锋
2026-06-01 11:41:21
老婆出轨后,我去找对方老婆,谁料他老婆:给你套房,但有个条件

老婆出轨后,我去找对方老婆,谁料他老婆:给你套房,但有个条件

千秋文化
2026-05-29 19:56:40
97年东北独生女被杭州男友父母断崖式分手,还要求退回7万花销

97年东北独生女被杭州男友父母断崖式分手,还要求退回7万花销

九方鱼论
2026-05-31 21:07:10
中国龙脉上只埋了3个人:一个挖不开,一个不敢挖,一个不能挖

中国龙脉上只埋了3个人:一个挖不开,一个不敢挖,一个不能挖

抽象派大师
2026-06-01 01:59:05
7年败光2个亿,邹市明冉莹颖共同发文,终究还是踏出了这一步

7年败光2个亿,邹市明冉莹颖共同发文,终究还是踏出了这一步

林轻吟
2026-02-11 11:29:40
2026-06-01 22:35:00
数量技术宅 incentive-icons
数量技术宅
爱好数据分析量化投资的技术宅
276文章数 212关注度
往期回顾 全部

科技要闻

黄仁勋演讲实录|40年来PC首次重设计!

头条要闻

媒体:郑丽文"两手空空"访美 被指有望见到特朗普

头条要闻

媒体:郑丽文"两手空空"访美 被指有望见到特朗普

体育要闻

杰威:如果我没受伤,我们能击败马刺

娱乐要闻

奚梦瑶婚礼现场图!一双儿女当花童

财经要闻

宇树过会,杭州赢麻了

汽车要闻

奇瑞集团5月销量24.8万辆 同比增长20.5% 出口18.2万辆再创新高

态度原创

数码
本地
房产
手机
公开课

数码要闻

我国玻璃硬盘实现量产 单盘最大容量360TB

本地新闻

用剪纸的方式,打开江苏扬州

房产要闻

100亿!1371亩!海口城市更新,再爆超级项目!

手机要闻

旅行拍照手机评测:Reno16如何成为兼顾续航与影像的性价比神机?

公开课

李玫瑾:为什么性格比能力更重要?

无障碍浏览 进入关怀版