Files
MoFin/venv/lib/python3.12/site-packages/akshare/crypto/crypto_bitcoin_cme.py
T
知微 fa45d8aa5f fix: 小果地址统一node122(兼容LAN+EasyTier)
- health_checklist.json: 192.168.1.122→node122
- ocr_client.py: docstring IP→node122
- docs/market-data-requirements.md: IP→node122
- 所有API调用通过ProxyHandler({})绕过系统代理
  Privoxy对node122:18003返回500,直连正常
2026-06-30 02:56:35 +08:00

64 lines
2.4 KiB
Python

#!/usr/bin/env python
# -*- coding:utf-8 -*-
"""
Date: 2023/9/5 15:41
Desc: 芝加哥商业交易所-比特币成交量报告
https://datacenter.jin10.com/reportType/dc_cme_btc_report
"""
import pandas as pd
import requests
def crypto_bitcoin_cme(date: str = "20230830") -> pd.DataFrame:
"""
芝加哥商业交易所-比特币成交量报告
https://datacenter.jin10.com/reportType/dc_cme_btc_report
:param date: Specific date, e.g., "20230830"
:type date: str
:return: 比特币成交量报告
:rtype: pandas.DataFrame
"""
url = "https://datacenter-api.jin10.com/reports/list"
params = {
"category": "cme",
"date": "-".join([date[:4], date[4:6], date[6:]]),
"attr_id": "4",
}
headers = {
"accept": "*/*",
"accept-encoding": "gzip, deflate, br",
"accept-language": "zh-CN,zh;q=0.9,en;q=0.8",
"cache-control": "no-cache",
"origin": "https://datacenter.jin10.com",
"pragma": "no-cache",
"referer": "https://datacenter.jin10.com/",
"sec-ch-ua": '" Not;A Brand";v="99", "Google Chrome";v="91", "Chromium";v="91"',
"sec-ch-ua-mobile": "?0",
"sec-fetch-dest": "empty",
"sec-fetch-mode": "cors",
"sec-fetch-site": "same-site",
"user-agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.106 Safari/537.36",
"x-app-id": "rU6QIu7JHe2gOUeR",
"x-csrf-token": "",
"x-version": "1.0.0",
}
r = requests.get(url, params=params, headers=headers)
data_json = r.json()
temp_df = pd.DataFrame(
[item for item in data_json["data"]["values"]],
columns=[item["name"] for item in data_json["data"]["keys"]],
)
temp_df["电子交易合约"] = pd.to_numeric(temp_df["电子交易合约"], errors="coerce")
temp_df["场内成交合约"] = pd.to_numeric(temp_df["场内成交合约"], errors="coerce")
temp_df["场外成交合约"] = pd.to_numeric(temp_df["场外成交合约"], errors="coerce")
temp_df["成交量"] = pd.to_numeric(temp_df["成交量"], errors="coerce")
temp_df["未平仓合约"] = pd.to_numeric(temp_df["未平仓合约"], errors="coerce")
temp_df["持仓变化"] = pd.to_numeric(temp_df["持仓变化"], errors="coerce")
return temp_df
if __name__ == "__main__":
crypto_bitcoin_cme_df = crypto_bitcoin_cme(date="20230830")
print(crypto_bitcoin_cme_df)