akshare 1.15.9__py3-none-any.whl → 1.15.11__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of akshare might be problematic. Click here for more details.
- akshare/__init__.py +9 -1
- akshare/cal/__init__.py +0 -0
- akshare/cal/rv.py +168 -0
- akshare/index/index_research_sw.py +1 -1
- akshare/stock/stock_xq.py +1 -1
- akshare/stock_fundamental/stock_finance_ths.py +45 -21
- {akshare-1.15.9.dist-info → akshare-1.15.11.dist-info}/METADATA +1 -1
- {akshare-1.15.9.dist-info → akshare-1.15.11.dist-info}/RECORD +11 -9
- {akshare-1.15.9.dist-info → akshare-1.15.11.dist-info}/WHEEL +1 -1
- {akshare-1.15.9.dist-info → akshare-1.15.11.dist-info}/LICENSE +0 -0
- {akshare-1.15.9.dist-info → akshare-1.15.11.dist-info}/top_level.txt +0 -0
akshare/__init__.py
CHANGED
|
@@ -2919,9 +2919,11 @@ amac_manager_cancelled_info # 中国证券投资基金业协会-信息公示-诚
|
|
|
2919
2919
|
1.15.7 fix: fix index_hist_sw interface
|
|
2920
2920
|
1.15.8 fix: fix fund_individual_basic_info_xq interface
|
|
2921
2921
|
1.15.9 fix: fix index_analysis_weekly_sw interface
|
|
2922
|
+
1.15.10 add: add volatility_yz_rv indicator
|
|
2923
|
+
1.15.11 fix: fix stock_individual_spot_xq indicator
|
|
2922
2924
|
"""
|
|
2923
2925
|
|
|
2924
|
-
__version__ = "1.15.
|
|
2926
|
+
__version__ = "1.15.11"
|
|
2925
2927
|
__author__ = "AKFamily"
|
|
2926
2928
|
|
|
2927
2929
|
import sys
|
|
@@ -2943,6 +2945,11 @@ if sys.version_info < (3, 9):
|
|
|
2943
2945
|
|
|
2944
2946
|
del sys
|
|
2945
2947
|
|
|
2948
|
+
"""
|
|
2949
|
+
已实现波动率
|
|
2950
|
+
"""
|
|
2951
|
+
from akshare.cal.rv import volatility_yz_rv, rv_from_futures_zh_minute_sina, rv_from_stock_zh_a_hist_min_em
|
|
2952
|
+
|
|
2946
2953
|
"""
|
|
2947
2954
|
QDII
|
|
2948
2955
|
"""
|
|
@@ -3198,6 +3205,7 @@ from akshare.stock_fundamental.stock_finance_ths import (
|
|
|
3198
3205
|
stock_financial_debt_ths,
|
|
3199
3206
|
stock_financial_benefit_ths,
|
|
3200
3207
|
stock_financial_cash_ths,
|
|
3208
|
+
stock_shareholder_change_ths,
|
|
3201
3209
|
)
|
|
3202
3210
|
|
|
3203
3211
|
"""
|
akshare/cal/__init__.py
ADDED
|
File without changes
|
akshare/cal/rv.py
ADDED
|
@@ -0,0 +1,168 @@
|
|
|
1
|
+
"""
|
|
2
|
+
Yang-Zhang-s-Realized-Volatility-Automated-Estimation-in-Python
|
|
3
|
+
https://github.com/hugogobato/Yang-Zhang-s-Realized-Volatility-Automated-Estimation-in-Python
|
|
4
|
+
"""
|
|
5
|
+
|
|
6
|
+
import warnings
|
|
7
|
+
|
|
8
|
+
import numpy as np
|
|
9
|
+
import pandas as pd
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
def rv_from_stock_zh_a_hist_min_em(
|
|
13
|
+
symbol="000001",
|
|
14
|
+
start_date="2021-10-20 09:30:00",
|
|
15
|
+
end_date="2024-11-01 15:00:00",
|
|
16
|
+
period="1",
|
|
17
|
+
adjust="hfq",
|
|
18
|
+
) -> pd.DataFrame:
|
|
19
|
+
"""
|
|
20
|
+
从东方财富网获取股票的分钟级历史行情数据,并进行数据清洗和格式化为计算 yz 已实现波动率所需的数据格式
|
|
21
|
+
https://quote.eastmoney.com/concept/sh603777.html?from=classic
|
|
22
|
+
:param symbol: 股票代码,如"000001"
|
|
23
|
+
:type symbol: str
|
|
24
|
+
:param start_date: 开始日期时间,格式"YYYY-MM-DD HH:MM:SS"
|
|
25
|
+
:type start_date: str
|
|
26
|
+
:param end_date: 结束日期时间,格式"YYYY-MM-DD HH:MM:SS"
|
|
27
|
+
:type end_date: str
|
|
28
|
+
:param period: 时间周期,可选{'1','5','15','30','60'}分钟
|
|
29
|
+
:type period: str
|
|
30
|
+
:param adjust: 复权方式,可选{'','qfq'(前复权),'hfq'(后复权)}
|
|
31
|
+
:type adjust: str
|
|
32
|
+
:return: 整理后的分钟行情数据,包含Date(索引),Open,High,Low,Close列
|
|
33
|
+
:rtype: pandas.DataFrame
|
|
34
|
+
"""
|
|
35
|
+
from akshare.stock_feature.stock_hist_em import stock_zh_a_hist_min_em
|
|
36
|
+
|
|
37
|
+
temp_df = stock_zh_a_hist_min_em(
|
|
38
|
+
symbol=symbol,
|
|
39
|
+
start_date=start_date,
|
|
40
|
+
end_date=end_date,
|
|
41
|
+
period=period,
|
|
42
|
+
adjust=adjust,
|
|
43
|
+
)
|
|
44
|
+
temp_df.rename(
|
|
45
|
+
columns={
|
|
46
|
+
"时间": "Date",
|
|
47
|
+
"开盘": "Open",
|
|
48
|
+
"最高": "High",
|
|
49
|
+
"最低": "Low",
|
|
50
|
+
"收盘": "Close",
|
|
51
|
+
},
|
|
52
|
+
inplace=True,
|
|
53
|
+
)
|
|
54
|
+
temp_df = temp_df[temp_df["Open"] != 0]
|
|
55
|
+
temp_df["Date"] = pd.to_datetime(temp_df["Date"])
|
|
56
|
+
temp_df.set_index(keys="Date", inplace=True)
|
|
57
|
+
return temp_df
|
|
58
|
+
|
|
59
|
+
|
|
60
|
+
def rv_from_futures_zh_minute_sina(
|
|
61
|
+
symbol: str = "IF2008", period: str = "5"
|
|
62
|
+
) -> pd.DataFrame:
|
|
63
|
+
"""
|
|
64
|
+
从新浪财经获取期货的分钟级历史行情数据,并进行数据清洗和格式化
|
|
65
|
+
https://vip.stock.finance.sina.com.cn/quotes_service/view/qihuohangqing.html#titlePos_3
|
|
66
|
+
:param symbol: 期货合约代码,如"IF2008"代表沪深300期货2020年8月合约
|
|
67
|
+
:type symbol: str
|
|
68
|
+
:param period: 时间周期,可选{'1','5','15','30','60'}分钟
|
|
69
|
+
:type period: str
|
|
70
|
+
:return: 整理后的分钟行情数据,包含Date(索引),Open,High,Low,Close列
|
|
71
|
+
:rtype: pandas.DataFrame
|
|
72
|
+
"""
|
|
73
|
+
from akshare.futures.futures_zh_sina import futures_zh_minute_sina
|
|
74
|
+
|
|
75
|
+
temp_df = futures_zh_minute_sina(symbol=symbol, period=period)
|
|
76
|
+
temp_df.rename(
|
|
77
|
+
columns={
|
|
78
|
+
"datetime": "Date",
|
|
79
|
+
"open": "Open",
|
|
80
|
+
"high": "High",
|
|
81
|
+
"low": "Low",
|
|
82
|
+
"close": "Close",
|
|
83
|
+
},
|
|
84
|
+
inplace=True,
|
|
85
|
+
)
|
|
86
|
+
temp_df["Date"] = pd.to_datetime(temp_df["Date"])
|
|
87
|
+
temp_df.set_index(keys="Date", inplace=True)
|
|
88
|
+
return temp_df
|
|
89
|
+
|
|
90
|
+
|
|
91
|
+
def volatility_yz_rv(data: pd.DataFrame) -> pd.DataFrame:
|
|
92
|
+
"""
|
|
93
|
+
波动率-已实现波动率-Yang-Zhang 已实现波动率(Yang-Zhang Realized Volatility)
|
|
94
|
+
https://github.com/hugogobato/Yang-Zhang-s-Realized-Volatility-Automated-Estimation-in-Python
|
|
95
|
+
基于以下公式计算:
|
|
96
|
+
RV^2 = Vo + k*Vc + (1-k)*Vrs
|
|
97
|
+
其中:
|
|
98
|
+
- Vo: 隔夜波动率, Vo = 1/(n-1)*sum(Oi-Obar)^2
|
|
99
|
+
Oi为标准化开盘价, Obar为标准化开盘价均值
|
|
100
|
+
- Vc: 收盘波动率, Vc = 1/(n-1)*sum(ci-Cbar)^2
|
|
101
|
+
ci为标准化收盘价, Cbar为标准化收盘价均值
|
|
102
|
+
- k: 权重系数, k = 0.34/(1.34+(n+1)/(n-1))
|
|
103
|
+
n为样本数量
|
|
104
|
+
- Vrs: Rogers-Satchell波动率代理, Vrs = ui(ui-ci)+di(di-ci)
|
|
105
|
+
ui = ln(Hi/Oi), ci = ln(Ci/Oi), di = ln(Li/Oi), oi = ln(Oi/Ci-1)
|
|
106
|
+
Hi/Li/Ci/Oi分别为最高价/最低价/收盘价/开盘价
|
|
107
|
+
|
|
108
|
+
:param data: 包含 OHLC(开高低收) 价格的 pandas.DataFrame
|
|
109
|
+
:type data: pandas.DataFrame
|
|
110
|
+
:return: 包含 Yang-Zhang 实现波动率的 pandas.DataFrame
|
|
111
|
+
:rtype: pandas.DataFrame
|
|
112
|
+
|
|
113
|
+
要求输入数据包含以下列:
|
|
114
|
+
- Open: 开盘价
|
|
115
|
+
- High: 最高价
|
|
116
|
+
- Low: 最低价
|
|
117
|
+
- Close: 收盘价
|
|
118
|
+
# yang_zhang_rv formula is give as:
|
|
119
|
+
# RV^2 = Vo + k*Vc + (1-k)*Vrs
|
|
120
|
+
# where Vo = 1/(n-1)*sum(Oi-Obar)^2
|
|
121
|
+
# with oi = normalized opening price at time t and Obar = mean of normalized opening prices
|
|
122
|
+
# Vc = = 1/(n-1)*sum(ci-Cbar)^2
|
|
123
|
+
# with ci = normalized close price at time t and Cbar = mean of normalized close prices
|
|
124
|
+
# k = 0.34/(1.34+(n+1)/(n-1))
|
|
125
|
+
# with n = total number of days or time periods considered
|
|
126
|
+
# Vrs (Rogers & Satchell RV proxy) = ui(ui-ci)+di(di-ci)
|
|
127
|
+
# with ui = ln(Hi/Oi), ci = ln(Ci/Oi), di=(Li/Oi), oi = ln(Oi/Ci-1)
|
|
128
|
+
# where Hi = high price at time t and Li = low price at time t
|
|
129
|
+
""" ""
|
|
130
|
+
warnings.filterwarnings("ignore")
|
|
131
|
+
|
|
132
|
+
data["ui"] = np.log(np.divide(data["High"][1:], data["Open"][1:]))
|
|
133
|
+
data["ci"] = np.log(np.divide(data["Close"][1:], data["Open"][1:]))
|
|
134
|
+
data["di"] = np.log(np.divide(data["Low"][1:], data["Open"][1:]))
|
|
135
|
+
data["oi"] = np.log(np.divide(data["Open"][1:], data["Close"][: len(data) - 1]))
|
|
136
|
+
data = data[1:]
|
|
137
|
+
data["RS"] = data["ui"] * (data["ui"] - data["ci"]) + data["di"] * (
|
|
138
|
+
data["di"] - data["ci"]
|
|
139
|
+
)
|
|
140
|
+
rs_var = data["RS"].groupby(pd.Grouper(freq="1D")).mean().dropna()
|
|
141
|
+
vc_and_vo = data[["oi", "ci"]].groupby(pd.Grouper(freq="1D")).var().dropna()
|
|
142
|
+
n = int(len(data) / len(rs_var))
|
|
143
|
+
k = 0.34 / (1.34 + (n + 1) / (n - 1))
|
|
144
|
+
yang_zhang_rv = np.sqrt((1 - k) * rs_var + vc_and_vo["oi"] + vc_and_vo["ci"] * k)
|
|
145
|
+
yang_zhang_rv_df = pd.DataFrame(yang_zhang_rv)
|
|
146
|
+
yang_zhang_rv_df.rename(columns={0: "yz_rv"}, inplace=True)
|
|
147
|
+
yang_zhang_rv_df.reset_index(inplace=True)
|
|
148
|
+
yang_zhang_rv_df.columns = ["date", "rv"]
|
|
149
|
+
yang_zhang_rv_df["date"] = pd.to_datetime(
|
|
150
|
+
yang_zhang_rv_df["date"], errors="coerce"
|
|
151
|
+
).dt.date
|
|
152
|
+
return yang_zhang_rv_df
|
|
153
|
+
|
|
154
|
+
|
|
155
|
+
if __name__ == "__main__":
|
|
156
|
+
futures_df = rv_from_futures_zh_minute_sina(symbol="IF2008", period="1")
|
|
157
|
+
volatility_yz_rv_df = volatility_yz_rv(data=futures_df)
|
|
158
|
+
print(volatility_yz_rv_df)
|
|
159
|
+
|
|
160
|
+
stock_df = rv_from_stock_zh_a_hist_min_em(
|
|
161
|
+
symbol="000001",
|
|
162
|
+
start_date="2021-10-20 09:30:00",
|
|
163
|
+
end_date="2024-11-01 15:00:00",
|
|
164
|
+
period="5",
|
|
165
|
+
adjust="",
|
|
166
|
+
)
|
|
167
|
+
volatility_yz_rv_df = volatility_yz_rv(data=stock_df)
|
|
168
|
+
print(volatility_yz_rv_df)
|
akshare/stock/stock_xq.py
CHANGED
|
@@ -44,7 +44,7 @@ def stock_individual_spot_xq(
|
|
|
44
44
|
"""
|
|
45
45
|
session = requests.Session()
|
|
46
46
|
headers = {
|
|
47
|
-
"cookie": "xq_a_token=
|
|
47
|
+
"cookie": "xq_a_token=7716f523735d1e47a3dd5ec748923068ab8198a8;",
|
|
48
48
|
"User-Agent": "Mozilla/5.0 (iPhone; CPU iPhone OS 16_6 like Mac OS X) AppleWebKit/605.1.15 "
|
|
49
49
|
"(KHTML, like Gecko) Version/16.6 Mobile/15E148 Safari/604.1",
|
|
50
50
|
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
#!/usr/bin/env python
|
|
2
2
|
# -*- coding:utf-8 -*-
|
|
3
3
|
"""
|
|
4
|
-
Date: 2024/
|
|
4
|
+
Date: 2024/11/2 15:20
|
|
5
5
|
Desc: 同花顺-财务指标-主要指标
|
|
6
6
|
https://basic.10jqka.com.cn/new/000063/finance.html
|
|
7
7
|
"""
|
|
@@ -11,6 +11,7 @@ import json
|
|
|
11
11
|
import pandas as pd
|
|
12
12
|
import requests
|
|
13
13
|
from bs4 import BeautifulSoup
|
|
14
|
+
from akshare.utils.cons import headers
|
|
14
15
|
|
|
15
16
|
|
|
16
17
|
def stock_financial_abstract_ths(
|
|
@@ -27,11 +28,6 @@ def stock_financial_abstract_ths(
|
|
|
27
28
|
:rtype: pandas.DataFrame
|
|
28
29
|
"""
|
|
29
30
|
url = f"https://basic.10jqka.com.cn/new/{symbol}/finance.html"
|
|
30
|
-
headers = {
|
|
31
|
-
"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) "
|
|
32
|
-
"AppleWebKit/537.36 (KHTML, like Gecko) "
|
|
33
|
-
"Chrome/89.0.4389.90 Safari/537.36",
|
|
34
|
-
}
|
|
35
31
|
r = requests.get(url, headers=headers)
|
|
36
32
|
soup = BeautifulSoup(r.text, features="lxml")
|
|
37
33
|
data_text = soup.find(name="p", attrs={"id": "main"}).string
|
|
@@ -72,11 +68,6 @@ def stock_financial_debt_ths(
|
|
|
72
68
|
:rtype: pandas.DataFrame
|
|
73
69
|
"""
|
|
74
70
|
url = f"https://basic.10jqka.com.cn/api/stock/finance/{symbol}_debt.json"
|
|
75
|
-
headers = {
|
|
76
|
-
"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) "
|
|
77
|
-
"AppleWebKit/537.36 (KHTML, like Gecko) "
|
|
78
|
-
"Chrome/89.0.4389.90 Safari/537.36",
|
|
79
|
-
}
|
|
80
71
|
r = requests.get(url, headers=headers)
|
|
81
72
|
data_json = json.loads(json.loads(r.text)["flashData"])
|
|
82
73
|
df_index = [
|
|
@@ -111,11 +102,6 @@ def stock_financial_benefit_ths(
|
|
|
111
102
|
:rtype: pandas.DataFrame
|
|
112
103
|
"""
|
|
113
104
|
url = f"https://basic.10jqka.com.cn/api/stock/finance/{symbol}_benefit.json"
|
|
114
|
-
headers = {
|
|
115
|
-
"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) "
|
|
116
|
-
"AppleWebKit/537.36 (KHTML, like Gecko) "
|
|
117
|
-
"Chrome/89.0.4389.90 Safari/537.36",
|
|
118
|
-
}
|
|
119
105
|
r = requests.get(url, headers=headers)
|
|
120
106
|
data_json = json.loads(json.loads(r.text)["flashData"])
|
|
121
107
|
df_index = [
|
|
@@ -154,11 +140,6 @@ def stock_financial_cash_ths(
|
|
|
154
140
|
:rtype: pandas.DataFrame
|
|
155
141
|
"""
|
|
156
142
|
url = f"https://basic.10jqka.com.cn/api/stock/finance/{symbol}_cash.json"
|
|
157
|
-
headers = {
|
|
158
|
-
"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) "
|
|
159
|
-
"AppleWebKit/537.36 (KHTML, like Gecko) "
|
|
160
|
-
"Chrome/89.0.4389.90 Safari/537.36",
|
|
161
|
-
}
|
|
162
143
|
r = requests.get(url, headers=headers)
|
|
163
144
|
data_json = json.loads(json.loads(r.text)["flashData"])
|
|
164
145
|
df_index = [
|
|
@@ -182,6 +163,46 @@ def stock_financial_cash_ths(
|
|
|
182
163
|
return temp_df
|
|
183
164
|
|
|
184
165
|
|
|
166
|
+
def stock_shareholder_change_ths(symbol: str = "688981") -> pd.DataFrame:
|
|
167
|
+
"""
|
|
168
|
+
同花顺-公司大事-股东持股变动
|
|
169
|
+
https://basic.10jqka.com.cn/new/688981/event.html
|
|
170
|
+
:param symbol: 股票代码
|
|
171
|
+
:type symbol: str
|
|
172
|
+
:return: 同花顺-财务指标-主要指标
|
|
173
|
+
:rtype: pandas.DataFrame
|
|
174
|
+
"""
|
|
175
|
+
url = f"https://basic.10jqka.com.cn/new/{symbol}/event.html"
|
|
176
|
+
r = requests.get(url, headers=headers)
|
|
177
|
+
r.encoding = "gb2312"
|
|
178
|
+
soup = BeautifulSoup(r.text, features="lxml")
|
|
179
|
+
soup_find = soup.find(name="table", attrs={"class": "m_table data_table_1 m_hl"})
|
|
180
|
+
if soup_find is not None:
|
|
181
|
+
content_list = [item.text.strip() for item in soup_find]
|
|
182
|
+
column_names = content_list[1].split("\n")
|
|
183
|
+
row = (
|
|
184
|
+
content_list[3]
|
|
185
|
+
.replace("\t", "")
|
|
186
|
+
.replace("\n\n", "")
|
|
187
|
+
.replace(" ", "\n")
|
|
188
|
+
.replace(" ", "")
|
|
189
|
+
.replace("\n\n", "\n")
|
|
190
|
+
.split("\n")
|
|
191
|
+
)
|
|
192
|
+
row = [item for item in row if item != ""]
|
|
193
|
+
new_rows = []
|
|
194
|
+
step = len(column_names)
|
|
195
|
+
for i in range(0, len(row), step):
|
|
196
|
+
new_rows.append(row[i : i + step])
|
|
197
|
+
temp_df = pd.DataFrame(new_rows, columns=column_names)
|
|
198
|
+
temp_df.sort_values(by="公告日期", ignore_index=True, inplace=True)
|
|
199
|
+
temp_df["公告日期"] = pd.to_datetime(
|
|
200
|
+
temp_df["公告日期"], errors="coerce"
|
|
201
|
+
).dt.date
|
|
202
|
+
return temp_df
|
|
203
|
+
return pd.DataFrame()
|
|
204
|
+
|
|
205
|
+
|
|
185
206
|
if __name__ == "__main__":
|
|
186
207
|
stock_financial_abstract_ths_df = stock_financial_abstract_ths(
|
|
187
208
|
symbol="000063", indicator="按报告期"
|
|
@@ -237,3 +258,6 @@ if __name__ == "__main__":
|
|
|
237
258
|
symbol="000063", indicator="按单季度"
|
|
238
259
|
)
|
|
239
260
|
print(stock_financial_cash_ths_df)
|
|
261
|
+
|
|
262
|
+
stock_shareholder_change_ths_df = stock_shareholder_change_ths(symbol="688981")
|
|
263
|
+
print(stock_shareholder_change_ths_df)
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
akshare/__init__.py,sha256=
|
|
1
|
+
akshare/__init__.py,sha256=FpUT09ybZknJPxtlZ0p5MCqC-kaGAmcXZ8nCKBuMUfQ,183135
|
|
2
2
|
akshare/datasets.py,sha256=-qdwaQjgBlftX84uM74KJqCYJYkQ50PV416_neA4uls,995
|
|
3
3
|
akshare/exceptions.py,sha256=WEJjIhSmJ_xXNW6grwV4nufE_cfmmyuhmueVGiN1VAg,878
|
|
4
4
|
akshare/request.py,sha256=HtFFf9MhfEibR-ETWe-1Tts6ELU4VKSqA-ghaXjegQM,4252
|
|
@@ -34,6 +34,8 @@ akshare/bond/bond_summary.py,sha256=ECwCRcs5YMIro4I1Yayf6SZ8nz1Hr97RhmKT6aGaQDg,
|
|
|
34
34
|
akshare/bond/bond_zh_cov.py,sha256=yL77itRK0rFCeQP_M524lW1740D5Q1IZW6eLvjXf2H4,23750
|
|
35
35
|
akshare/bond/bond_zh_sina.py,sha256=msj7upgqaCTzC_MxzhUm7hVKtzHeWRUjlcjvZn2zlbw,4654
|
|
36
36
|
akshare/bond/cons.py,sha256=SGqjMqRYwJlEb8UczxdcrtcD7I2SAVULXARGEedEQfE,1792
|
|
37
|
+
akshare/cal/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
38
|
+
akshare/cal/rv.py,sha256=Pv0ymH_RlwLsVqmKJvrJHxIr5CvgUt7jN-kzYneRKok,6402
|
|
37
39
|
akshare/cost/__init__.py,sha256=x1R9hH6E0M7C86XhHFzbPiipUWz9IknuhVZrk4gZus4,82
|
|
38
40
|
akshare/cost/cost_living.py,sha256=_yoGEW4jBfpjhgMxCXvMtBbrCx2PEuOngV3laEoEOvk,2078
|
|
39
41
|
akshare/crypto/__init__.py,sha256=lbmNMPPLGkW9AgGL4ZnCwoQvPjOFPDNUz6P3arSkNI0,83
|
|
@@ -165,7 +167,7 @@ akshare/index/index_kq_fz.py,sha256=Y-cbxWLpRyGcFcMSDxZZQXdAuD85IuQH5xC2rhtGbRc,
|
|
|
165
167
|
akshare/index/index_kq_ss.py,sha256=m4hAMNnzHk8JNAnKjkYYVeyG4zUC5zR5i0-u-OxmaGU,3333
|
|
166
168
|
akshare/index/index_option_qvix.py,sha256=sCx0iiIetkp5ELE9sDwesVFgJNfa_1tAEWVCJI-I2u4,3270
|
|
167
169
|
akshare/index/index_research_fund_sw.py,sha256=kVYjBl3vZg6CyYBCrxZiSv8taHMnqmG7PQ-LVmMNd3I,4603
|
|
168
|
-
akshare/index/index_research_sw.py,sha256=
|
|
170
|
+
akshare/index/index_research_sw.py,sha256=Mm1YtiP-PXhDysJwmFidX3RZSZZ92AyXpjl_tVrjdwA,21758
|
|
169
171
|
akshare/index/index_spot.py,sha256=HrXt2QC9i1pYEh7wyJPKjtexctzSIUyMjEzk5BQq_K8,1696
|
|
170
172
|
akshare/index/index_stock_hk.py,sha256=nPFzRrjyiUpRK-OSDsdi5AFCKHNKqOVji6WJcQxOvNo,9781
|
|
171
173
|
akshare/index/index_stock_us_sina.py,sha256=IxOk4G49oasv7EfEQenL9-GLuelyUus6c4JPyRlaOzY,1551
|
|
@@ -276,7 +278,7 @@ akshare/stock/stock_us_js.py,sha256=wwZpRvVHqjxwd0cb2O5vtRW8Zw90Kdl5O4XNwoevN64,
|
|
|
276
278
|
akshare/stock/stock_us_pink.py,sha256=jgkEjPm_qa4zSN1MH0unHJopSkcF-8Rqlp5Kus2KaQ8,3062
|
|
277
279
|
akshare/stock/stock_us_sina.py,sha256=3bD41Y5GqDTv52bx5jbjrt0psaHZS10UL_e7E2B6wW8,8146
|
|
278
280
|
akshare/stock/stock_weibo_nlp.py,sha256=eM7ofsNSrKiYeS0g38Qj9CxT6dkJZrn_pmziIiTqp4U,3286
|
|
279
|
-
akshare/stock/stock_xq.py,sha256=
|
|
281
|
+
akshare/stock/stock_xq.py,sha256=QB6kZeoAY-O64-Lfu51a0tuROoTt3hIQO5K-yNhoXyM,4619
|
|
280
282
|
akshare/stock/stock_zh_a_sina.py,sha256=gryRmUwqF9PyNl-fPhD72y5nfNmLVEnvzjZDhAe-cpg,18862
|
|
281
283
|
akshare/stock/stock_zh_a_special.py,sha256=RRXkeZtRWm_maIPWgxvhBdX6eNybECjhSuEesZHRFJI,10294
|
|
282
284
|
akshare/stock/stock_zh_a_tick_tx.py,sha256=TJUAWLKAeoLEaVVJQlj0t-1smZGoAO0X0rPsUPVhZZ4,2131
|
|
@@ -355,7 +357,7 @@ akshare/stock_feature/ths.js,sha256=AWPkHf3L2Il1UUL0F5qDqNn1dfU0OlZBNUbMf8AmI3Y,
|
|
|
355
357
|
akshare/stock_fundamental/__init__.py,sha256=jiXoO9OXiMxB0wHaPQkuxNckYuoFKtzuhZL1ytnE2nQ,82
|
|
356
358
|
akshare/stock_fundamental/stock_finance.py,sha256=WuYvLo8xZxH-VS-6P-S31yzsKA1ojrwegcLXP2byle4,30676
|
|
357
359
|
akshare/stock_fundamental/stock_finance_hk.py,sha256=Tn_vhGqxdnNDaY6Rd_M6rDvYOYpWMKGGiHudcJkShq8,6917
|
|
358
|
-
akshare/stock_fundamental/stock_finance_ths.py,sha256=
|
|
360
|
+
akshare/stock_fundamental/stock_finance_ths.py,sha256=LuTcPowiSK8_N3J7ivvTp9CwB4mvffQBmxZZUC8tIqY,9291
|
|
359
361
|
akshare/stock_fundamental/stock_hold.py,sha256=h8V5v_0YOi3FJPc1w95WBaO0v3n87lcufcUlu-i6XXk,5394
|
|
360
362
|
akshare/stock_fundamental/stock_ipo_declare.py,sha256=18j2542TT2nCJ1HWBcT6-HupRbXvesA30qqejknn-kM,1809
|
|
361
363
|
akshare/stock_fundamental/stock_kcb_detail_sse.py,sha256=MBanq3sDvb0OTbUl_gg7avDUQg_3Ugzqr43cB43fp60,940
|
|
@@ -381,8 +383,8 @@ akshare/utils/token_process.py,sha256=K4rGXjh_tgugbRcyOK2h2x0jP3PT65IIK7nxhUKhOe
|
|
|
381
383
|
akshare/utils/tqdm.py,sha256=MuPNwcswkOGjwWQOMWXi9ZvQ_RmW4obCWRj2i7HM7FE,847
|
|
382
384
|
tests/__init__.py,sha256=gNzhlO0UPjFq6Ieb38kaVIODXv4cTDByrdohAZnDYt4,82
|
|
383
385
|
tests/test_func.py,sha256=j1MGYbZI2if2j_LY1S4FLsf4qfq4NwVqD5wmRlv5Log,832
|
|
384
|
-
akshare-1.15.
|
|
385
|
-
akshare-1.15.
|
|
386
|
-
akshare-1.15.
|
|
387
|
-
akshare-1.15.
|
|
388
|
-
akshare-1.15.
|
|
386
|
+
akshare-1.15.11.dist-info/LICENSE,sha256=mmSZCPgfHiVw34LXuFArd-SUgQtBJ_QsIlh-kWlDHfs,1073
|
|
387
|
+
akshare-1.15.11.dist-info/METADATA,sha256=-kr4pVIwLP53LYfDbRrUSf-yCpODQwyoGiwXCMvmvQU,14152
|
|
388
|
+
akshare-1.15.11.dist-info/WHEEL,sha256=P9jw-gEje8ByB7_hXoICnHtVCrEwMQh-630tKvQWehc,91
|
|
389
|
+
akshare-1.15.11.dist-info/top_level.txt,sha256=jsf9ZzZPmHaISTVumQPsAw7vv7Yv-PdEVW70SMEelQQ,14
|
|
390
|
+
akshare-1.15.11.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|