akshare 1.15.28__tar.gz → 1.15.30__tar.gz

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.

Files changed (396) hide show
  1. {akshare-1.15.28 → akshare-1.15.30}/PKG-INFO +2 -20
  2. {akshare-1.15.28 → akshare-1.15.30}/README.md +1 -19
  3. {akshare-1.15.28 → akshare-1.15.30}/akshare/__init__.py +3 -1
  4. {akshare-1.15.28 → akshare-1.15.30}/akshare/fund/fund_etf_sina.py +26 -23
  5. {akshare-1.15.28 → akshare-1.15.30}/akshare/option/option_commodity.py +95 -22
  6. {akshare-1.15.28 → akshare-1.15.30}/akshare/stock/stock_zh_a_sina.py +1 -1
  7. {akshare-1.15.28 → akshare-1.15.30}/akshare/stock/stock_zh_b_sina.py +1 -1
  8. {akshare-1.15.28 → akshare-1.15.30}/akshare/stock/stock_zh_kcb_sina.py +67 -64
  9. {akshare-1.15.28 → akshare-1.15.30}/akshare.egg-info/PKG-INFO +2 -20
  10. {akshare-1.15.28 → akshare-1.15.30}/LICENSE +0 -0
  11. {akshare-1.15.28 → akshare-1.15.30}/akshare/air/__init__.py +0 -0
  12. {akshare-1.15.28 → akshare-1.15.30}/akshare/air/air_hebei.py +0 -0
  13. {akshare-1.15.28 → akshare-1.15.30}/akshare/air/air_zhenqi.py +0 -0
  14. {akshare-1.15.28 → akshare-1.15.30}/akshare/air/cons.py +0 -0
  15. {akshare-1.15.28 → akshare-1.15.30}/akshare/air/crypto.js +0 -0
  16. {akshare-1.15.28 → akshare-1.15.30}/akshare/air/outcrypto.js +0 -0
  17. {akshare-1.15.28 → akshare-1.15.30}/akshare/air/sunrise_tad.py +0 -0
  18. {akshare-1.15.28 → akshare-1.15.30}/akshare/article/__init__.py +0 -0
  19. {akshare-1.15.28 → akshare-1.15.30}/akshare/article/cons.py +0 -0
  20. {akshare-1.15.28 → akshare-1.15.30}/akshare/article/epu_index.py +0 -0
  21. {akshare-1.15.28 → akshare-1.15.30}/akshare/article/ff_factor.py +0 -0
  22. {akshare-1.15.28 → akshare-1.15.30}/akshare/article/fred_md.py +0 -0
  23. {akshare-1.15.28 → akshare-1.15.30}/akshare/article/risk_rv.py +0 -0
  24. {akshare-1.15.28 → akshare-1.15.30}/akshare/bank/__init__.py +0 -0
  25. {akshare-1.15.28 → akshare-1.15.30}/akshare/bank/bank_cbirc_2020.py +0 -0
  26. {akshare-1.15.28 → akshare-1.15.30}/akshare/bank/cons.py +0 -0
  27. {akshare-1.15.28 → akshare-1.15.30}/akshare/bond/__init__.py +0 -0
  28. {akshare-1.15.28 → akshare-1.15.30}/akshare/bond/bond_cb_sina.py +0 -0
  29. {akshare-1.15.28 → akshare-1.15.30}/akshare/bond/bond_cb_ths.py +0 -0
  30. {akshare-1.15.28 → akshare-1.15.30}/akshare/bond/bond_cbond.py +0 -0
  31. {akshare-1.15.28 → akshare-1.15.30}/akshare/bond/bond_china.py +0 -0
  32. {akshare-1.15.28 → akshare-1.15.30}/akshare/bond/bond_china_money.py +0 -0
  33. {akshare-1.15.28 → akshare-1.15.30}/akshare/bond/bond_convert.py +0 -0
  34. {akshare-1.15.28 → akshare-1.15.30}/akshare/bond/bond_em.py +0 -0
  35. {akshare-1.15.28 → akshare-1.15.30}/akshare/bond/bond_info_cm.py +0 -0
  36. {akshare-1.15.28 → akshare-1.15.30}/akshare/bond/bond_investing.py +0 -0
  37. {akshare-1.15.28 → akshare-1.15.30}/akshare/bond/bond_issue_cninfo.py +0 -0
  38. {akshare-1.15.28 → akshare-1.15.30}/akshare/bond/bond_nafmii.py +0 -0
  39. {akshare-1.15.28 → akshare-1.15.30}/akshare/bond/bond_summary.py +0 -0
  40. {akshare-1.15.28 → akshare-1.15.30}/akshare/bond/bond_zh_cov.py +0 -0
  41. {akshare-1.15.28 → akshare-1.15.30}/akshare/bond/bond_zh_sina.py +0 -0
  42. {akshare-1.15.28 → akshare-1.15.30}/akshare/bond/cons.py +0 -0
  43. {akshare-1.15.28 → akshare-1.15.30}/akshare/cal/__init__.py +0 -0
  44. {akshare-1.15.28 → akshare-1.15.30}/akshare/cal/rv.py +0 -0
  45. {akshare-1.15.28 → akshare-1.15.30}/akshare/cost/__init__.py +0 -0
  46. {akshare-1.15.28 → akshare-1.15.30}/akshare/cost/cost_living.py +0 -0
  47. {akshare-1.15.28 → akshare-1.15.30}/akshare/crypto/__init__.py +0 -0
  48. {akshare-1.15.28 → akshare-1.15.30}/akshare/crypto/crypto_bitcoin_cme.py +0 -0
  49. {akshare-1.15.28 → akshare-1.15.30}/akshare/crypto/crypto_hist_investing.py +0 -0
  50. {akshare-1.15.28 → akshare-1.15.30}/akshare/crypto/crypto_hold.py +0 -0
  51. {akshare-1.15.28 → akshare-1.15.30}/akshare/currency/__init__.py +0 -0
  52. {akshare-1.15.28 → akshare-1.15.30}/akshare/currency/currency.py +0 -0
  53. {akshare-1.15.28 → akshare-1.15.30}/akshare/currency/currency_china_bank_sina.py +0 -0
  54. {akshare-1.15.28 → akshare-1.15.30}/akshare/currency/currency_safe.py +0 -0
  55. {akshare-1.15.28 → akshare-1.15.30}/akshare/data/__init__.py +0 -0
  56. {akshare-1.15.28 → akshare-1.15.30}/akshare/data/cninfo.js +0 -0
  57. {akshare-1.15.28 → akshare-1.15.30}/akshare/data/crypto_info.zip +0 -0
  58. {akshare-1.15.28 → akshare-1.15.30}/akshare/data/ths.js +0 -0
  59. {akshare-1.15.28 → akshare-1.15.30}/akshare/datasets.py +0 -0
  60. {akshare-1.15.28 → akshare-1.15.30}/akshare/economic/__init__.py +0 -0
  61. {akshare-1.15.28 → akshare-1.15.30}/akshare/economic/cons.py +0 -0
  62. {akshare-1.15.28 → akshare-1.15.30}/akshare/economic/macro_australia.py +0 -0
  63. {akshare-1.15.28 → akshare-1.15.30}/akshare/economic/macro_bank.py +0 -0
  64. {akshare-1.15.28 → akshare-1.15.30}/akshare/economic/macro_canada.py +0 -0
  65. {akshare-1.15.28 → akshare-1.15.30}/akshare/economic/macro_china.py +0 -0
  66. {akshare-1.15.28 → akshare-1.15.30}/akshare/economic/macro_china_hk.py +0 -0
  67. {akshare-1.15.28 → akshare-1.15.30}/akshare/economic/macro_china_nbs.py +0 -0
  68. {akshare-1.15.28 → akshare-1.15.30}/akshare/economic/macro_constitute.py +0 -0
  69. {akshare-1.15.28 → akshare-1.15.30}/akshare/economic/macro_euro.py +0 -0
  70. {akshare-1.15.28 → akshare-1.15.30}/akshare/economic/macro_finance_ths.py +0 -0
  71. {akshare-1.15.28 → akshare-1.15.30}/akshare/economic/macro_germany.py +0 -0
  72. {akshare-1.15.28 → akshare-1.15.30}/akshare/economic/macro_info_ws.py +0 -0
  73. {akshare-1.15.28 → akshare-1.15.30}/akshare/economic/macro_japan.py +0 -0
  74. {akshare-1.15.28 → akshare-1.15.30}/akshare/economic/macro_other.py +0 -0
  75. {akshare-1.15.28 → akshare-1.15.30}/akshare/economic/macro_swiss.py +0 -0
  76. {akshare-1.15.28 → akshare-1.15.30}/akshare/economic/macro_uk.py +0 -0
  77. {akshare-1.15.28 → akshare-1.15.30}/akshare/economic/macro_usa.py +0 -0
  78. {akshare-1.15.28 → akshare-1.15.30}/akshare/economic/marco_cnbs.py +0 -0
  79. {akshare-1.15.28 → akshare-1.15.30}/akshare/energy/__init__.py +0 -0
  80. {akshare-1.15.28 → akshare-1.15.30}/akshare/energy/energy_carbon.py +0 -0
  81. {akshare-1.15.28 → akshare-1.15.30}/akshare/energy/energy_oil_em.py +0 -0
  82. {akshare-1.15.28 → akshare-1.15.30}/akshare/event/__init__.py +0 -0
  83. {akshare-1.15.28 → akshare-1.15.30}/akshare/event/cons.py +0 -0
  84. {akshare-1.15.28 → akshare-1.15.30}/akshare/event/migration.py +0 -0
  85. {akshare-1.15.28 → akshare-1.15.30}/akshare/exceptions.py +0 -0
  86. {akshare-1.15.28 → akshare-1.15.30}/akshare/file_fold/__init__.py +0 -0
  87. {akshare-1.15.28 → akshare-1.15.30}/akshare/file_fold/calendar.json +0 -0
  88. {akshare-1.15.28 → akshare-1.15.30}/akshare/fortune/__init__.py +0 -0
  89. {akshare-1.15.28 → akshare-1.15.30}/akshare/fortune/fortune_500.py +0 -0
  90. {akshare-1.15.28 → akshare-1.15.30}/akshare/fortune/fortune_bloomberg.py +0 -0
  91. {akshare-1.15.28 → akshare-1.15.30}/akshare/fortune/fortune_forbes_500.py +0 -0
  92. {akshare-1.15.28 → akshare-1.15.30}/akshare/fortune/fortune_hurun.py +0 -0
  93. {akshare-1.15.28 → akshare-1.15.30}/akshare/fortune/fortune_xincaifu_500.py +0 -0
  94. {akshare-1.15.28 → akshare-1.15.30}/akshare/fund/__init__.py +0 -0
  95. {akshare-1.15.28 → akshare-1.15.30}/akshare/fund/fund_amac.py +0 -0
  96. {akshare-1.15.28 → akshare-1.15.30}/akshare/fund/fund_announcement.py +0 -0
  97. {akshare-1.15.28 → akshare-1.15.30}/akshare/fund/fund_aum_em.py +0 -0
  98. {akshare-1.15.28 → akshare-1.15.30}/akshare/fund/fund_em.py +0 -0
  99. {akshare-1.15.28 → akshare-1.15.30}/akshare/fund/fund_etf_em.py +0 -0
  100. {akshare-1.15.28 → akshare-1.15.30}/akshare/fund/fund_etf_ths.py +0 -0
  101. {akshare-1.15.28 → akshare-1.15.30}/akshare/fund/fund_fhsp_em.py +0 -0
  102. {akshare-1.15.28 → akshare-1.15.30}/akshare/fund/fund_init_em.py +0 -0
  103. {akshare-1.15.28 → akshare-1.15.30}/akshare/fund/fund_lof_em.py +0 -0
  104. {akshare-1.15.28 → akshare-1.15.30}/akshare/fund/fund_manager.py +0 -0
  105. {akshare-1.15.28 → akshare-1.15.30}/akshare/fund/fund_portfolio_em.py +0 -0
  106. {akshare-1.15.28 → akshare-1.15.30}/akshare/fund/fund_position_lg.py +0 -0
  107. {akshare-1.15.28 → akshare-1.15.30}/akshare/fund/fund_rank_em.py +0 -0
  108. {akshare-1.15.28 → akshare-1.15.30}/akshare/fund/fund_rating.py +0 -0
  109. {akshare-1.15.28 → akshare-1.15.30}/akshare/fund/fund_report_cninfo.py +0 -0
  110. {akshare-1.15.28 → akshare-1.15.30}/akshare/fund/fund_scale_em.py +0 -0
  111. {akshare-1.15.28 → akshare-1.15.30}/akshare/fund/fund_scale_sina.py +0 -0
  112. {akshare-1.15.28 → akshare-1.15.30}/akshare/fund/fund_xq.py +0 -0
  113. {akshare-1.15.28 → akshare-1.15.30}/akshare/futures/__init__.py +0 -0
  114. {akshare-1.15.28 → akshare-1.15.30}/akshare/futures/cons.py +0 -0
  115. {akshare-1.15.28 → akshare-1.15.30}/akshare/futures/cot.py +0 -0
  116. {akshare-1.15.28 → akshare-1.15.30}/akshare/futures/futures_basis.py +0 -0
  117. {akshare-1.15.28 → akshare-1.15.30}/akshare/futures/futures_comex_em.py +0 -0
  118. {akshare-1.15.28 → akshare-1.15.30}/akshare/futures/futures_comm_ctp.py +0 -0
  119. {akshare-1.15.28 → akshare-1.15.30}/akshare/futures/futures_comm_qihuo.py +0 -0
  120. {akshare-1.15.28 → akshare-1.15.30}/akshare/futures/futures_contract_detail.py +0 -0
  121. {akshare-1.15.28 → akshare-1.15.30}/akshare/futures/futures_daily_bar.py +0 -0
  122. {akshare-1.15.28 → akshare-1.15.30}/akshare/futures/futures_foreign.py +0 -0
  123. {akshare-1.15.28 → akshare-1.15.30}/akshare/futures/futures_hf_em.py +0 -0
  124. {akshare-1.15.28 → akshare-1.15.30}/akshare/futures/futures_hq_sina.py +0 -0
  125. {akshare-1.15.28 → akshare-1.15.30}/akshare/futures/futures_index_ccidx.py +0 -0
  126. {akshare-1.15.28 → akshare-1.15.30}/akshare/futures/futures_international.py +0 -0
  127. {akshare-1.15.28 → akshare-1.15.30}/akshare/futures/futures_inventory_99.py +0 -0
  128. {akshare-1.15.28 → akshare-1.15.30}/akshare/futures/futures_inventory_em.py +0 -0
  129. {akshare-1.15.28 → akshare-1.15.30}/akshare/futures/futures_news_baidu.py +0 -0
  130. {akshare-1.15.28 → akshare-1.15.30}/akshare/futures/futures_news_shmet.py +0 -0
  131. {akshare-1.15.28 → akshare-1.15.30}/akshare/futures/futures_roll_yield.py +0 -0
  132. {akshare-1.15.28 → akshare-1.15.30}/akshare/futures/futures_rule.py +0 -0
  133. {akshare-1.15.28 → akshare-1.15.30}/akshare/futures/futures_settlement_price_sgx.py +0 -0
  134. {akshare-1.15.28 → akshare-1.15.30}/akshare/futures/futures_spot_stock_em.py +0 -0
  135. {akshare-1.15.28 → akshare-1.15.30}/akshare/futures/futures_stock_js.py +0 -0
  136. {akshare-1.15.28 → akshare-1.15.30}/akshare/futures/futures_to_spot.py +0 -0
  137. {akshare-1.15.28 → akshare-1.15.30}/akshare/futures/futures_warehouse_receipt.py +0 -0
  138. {akshare-1.15.28 → akshare-1.15.30}/akshare/futures/futures_zh_sina.py +0 -0
  139. {akshare-1.15.28 → akshare-1.15.30}/akshare/futures/inventory_data.py +0 -0
  140. {akshare-1.15.28 → akshare-1.15.30}/akshare/futures/receipt.py +0 -0
  141. {akshare-1.15.28 → akshare-1.15.30}/akshare/futures/requests_fun.py +0 -0
  142. {akshare-1.15.28 → akshare-1.15.30}/akshare/futures/symbol_var.py +0 -0
  143. {akshare-1.15.28 → akshare-1.15.30}/akshare/futures_derivative/__init__.py +0 -0
  144. {akshare-1.15.28 → akshare-1.15.30}/akshare/futures_derivative/cons.py +0 -0
  145. {akshare-1.15.28 → akshare-1.15.30}/akshare/futures_derivative/futures_contract_info_cffex.py +0 -0
  146. {akshare-1.15.28 → akshare-1.15.30}/akshare/futures_derivative/futures_contract_info_czce.py +0 -0
  147. {akshare-1.15.28 → akshare-1.15.30}/akshare/futures_derivative/futures_contract_info_dce.py +0 -0
  148. {akshare-1.15.28 → akshare-1.15.30}/akshare/futures_derivative/futures_contract_info_gfex.py +0 -0
  149. {akshare-1.15.28 → akshare-1.15.30}/akshare/futures_derivative/futures_contract_info_ine.py +0 -0
  150. {akshare-1.15.28 → akshare-1.15.30}/akshare/futures_derivative/futures_contract_info_shfe.py +0 -0
  151. {akshare-1.15.28 → akshare-1.15.30}/akshare/futures_derivative/futures_cot_sina.py +0 -0
  152. {akshare-1.15.28 → akshare-1.15.30}/akshare/futures_derivative/futures_hog.py +0 -0
  153. {akshare-1.15.28 → akshare-1.15.30}/akshare/futures_derivative/futures_index_sina.py +0 -0
  154. {akshare-1.15.28 → akshare-1.15.30}/akshare/futures_derivative/futures_spot_sys.py +0 -0
  155. {akshare-1.15.28 → akshare-1.15.30}/akshare/fx/__init__.py +0 -0
  156. {akshare-1.15.28 → akshare-1.15.30}/akshare/fx/cons.py +0 -0
  157. {akshare-1.15.28 → akshare-1.15.30}/akshare/fx/currency_investing.py +0 -0
  158. {akshare-1.15.28 → akshare-1.15.30}/akshare/fx/fx_quote.py +0 -0
  159. {akshare-1.15.28 → akshare-1.15.30}/akshare/fx/fx_quote_baidu.py +0 -0
  160. {akshare-1.15.28 → akshare-1.15.30}/akshare/hf/__init__.py +0 -0
  161. {akshare-1.15.28 → akshare-1.15.30}/akshare/hf/hf_sp500.py +0 -0
  162. {akshare-1.15.28 → akshare-1.15.30}/akshare/index/__init__.py +0 -0
  163. {akshare-1.15.28 → akshare-1.15.30}/akshare/index/cons.py +0 -0
  164. {akshare-1.15.28 → akshare-1.15.30}/akshare/index/index_cflp.py +0 -0
  165. {akshare-1.15.28 → akshare-1.15.30}/akshare/index/index_cni.py +0 -0
  166. {akshare-1.15.28 → akshare-1.15.30}/akshare/index/index_cons.py +0 -0
  167. {akshare-1.15.28 → akshare-1.15.30}/akshare/index/index_cx.py +0 -0
  168. {akshare-1.15.28 → akshare-1.15.30}/akshare/index/index_drewry.py +0 -0
  169. {akshare-1.15.28 → akshare-1.15.30}/akshare/index/index_eri.py +0 -0
  170. {akshare-1.15.28 → akshare-1.15.30}/akshare/index/index_fear_greed_funddb.py +0 -0
  171. {akshare-1.15.28 → akshare-1.15.30}/akshare/index/index_hog.py +0 -0
  172. {akshare-1.15.28 → akshare-1.15.30}/akshare/index/index_investing.py +0 -0
  173. {akshare-1.15.28 → akshare-1.15.30}/akshare/index/index_kq_fz.py +0 -0
  174. {akshare-1.15.28 → akshare-1.15.30}/akshare/index/index_kq_ss.py +0 -0
  175. {akshare-1.15.28 → akshare-1.15.30}/akshare/index/index_option_qvix.py +0 -0
  176. {akshare-1.15.28 → akshare-1.15.30}/akshare/index/index_research_fund_sw.py +0 -0
  177. {akshare-1.15.28 → akshare-1.15.30}/akshare/index/index_research_sw.py +0 -0
  178. {akshare-1.15.28 → akshare-1.15.30}/akshare/index/index_spot.py +0 -0
  179. {akshare-1.15.28 → akshare-1.15.30}/akshare/index/index_stock_hk.py +0 -0
  180. {akshare-1.15.28 → akshare-1.15.30}/akshare/index/index_stock_us_sina.py +0 -0
  181. {akshare-1.15.28 → akshare-1.15.30}/akshare/index/index_stock_zh.py +0 -0
  182. {akshare-1.15.28 → akshare-1.15.30}/akshare/index/index_stock_zh_csindex.py +0 -0
  183. {akshare-1.15.28 → akshare-1.15.30}/akshare/index/index_sugar.py +0 -0
  184. {akshare-1.15.28 → akshare-1.15.30}/akshare/index/index_sw.py +0 -0
  185. {akshare-1.15.28 → akshare-1.15.30}/akshare/index/index_yw.py +0 -0
  186. {akshare-1.15.28 → akshare-1.15.30}/akshare/index/index_zh_a_scope.py +0 -0
  187. {akshare-1.15.28 → akshare-1.15.30}/akshare/index/index_zh_em.py +0 -0
  188. {akshare-1.15.28 → akshare-1.15.30}/akshare/interest_rate/__init__.py +0 -0
  189. {akshare-1.15.28 → akshare-1.15.30}/akshare/interest_rate/interbank_rate_em.py +0 -0
  190. {akshare-1.15.28 → akshare-1.15.30}/akshare/movie/__init__.py +0 -0
  191. {akshare-1.15.28 → akshare-1.15.30}/akshare/movie/artist_yien.py +0 -0
  192. {akshare-1.15.28 → akshare-1.15.30}/akshare/movie/jm.js +0 -0
  193. {akshare-1.15.28 → akshare-1.15.30}/akshare/movie/movie_yien.py +0 -0
  194. {akshare-1.15.28 → akshare-1.15.30}/akshare/movie/video_yien.py +0 -0
  195. {akshare-1.15.28 → akshare-1.15.30}/akshare/news/__init__.py +0 -0
  196. {akshare-1.15.28 → akshare-1.15.30}/akshare/news/news_baidu.py +0 -0
  197. {akshare-1.15.28 → akshare-1.15.30}/akshare/news/news_cctv.py +0 -0
  198. {akshare-1.15.28 → akshare-1.15.30}/akshare/news/news_stock.py +0 -0
  199. {akshare-1.15.28 → akshare-1.15.30}/akshare/nlp/__init__.py +0 -0
  200. {akshare-1.15.28 → akshare-1.15.30}/akshare/nlp/nlp_interface.py +0 -0
  201. {akshare-1.15.28 → akshare-1.15.30}/akshare/option/__init__.py +0 -0
  202. {akshare-1.15.28 → akshare-1.15.30}/akshare/option/cons.py +0 -0
  203. {akshare-1.15.28 → akshare-1.15.30}/akshare/option/option_comm_qihuo.py +0 -0
  204. {akshare-1.15.28 → akshare-1.15.30}/akshare/option/option_commodity_sina.py +0 -0
  205. {akshare-1.15.28 → akshare-1.15.30}/akshare/option/option_czce.py +0 -0
  206. {akshare-1.15.28 → akshare-1.15.30}/akshare/option/option_daily_stats_sse_szse.py +0 -0
  207. {akshare-1.15.28 → akshare-1.15.30}/akshare/option/option_em.py +0 -0
  208. {akshare-1.15.28 → akshare-1.15.30}/akshare/option/option_finance.py +0 -0
  209. {akshare-1.15.28 → akshare-1.15.30}/akshare/option/option_finance_sina.py +0 -0
  210. {akshare-1.15.28 → akshare-1.15.30}/akshare/option/option_lhb_em.py +0 -0
  211. {akshare-1.15.28 → akshare-1.15.30}/akshare/option/option_premium_analysis_em.py +0 -0
  212. {akshare-1.15.28 → akshare-1.15.30}/akshare/option/option_risk_analysis_em.py +0 -0
  213. {akshare-1.15.28 → akshare-1.15.30}/akshare/option/option_risk_indicator_sse.py +0 -0
  214. {akshare-1.15.28 → akshare-1.15.30}/akshare/option/option_value_analysis_em.py +0 -0
  215. {akshare-1.15.28 → akshare-1.15.30}/akshare/other/__init__.py +0 -0
  216. {akshare-1.15.28 → akshare-1.15.30}/akshare/other/other_car_cpca.py +0 -0
  217. {akshare-1.15.28 → akshare-1.15.30}/akshare/other/other_car_gasgoo.py +0 -0
  218. {akshare-1.15.28 → akshare-1.15.30}/akshare/pro/__init__.py +0 -0
  219. {akshare-1.15.28 → akshare-1.15.30}/akshare/pro/client.py +0 -0
  220. {akshare-1.15.28 → akshare-1.15.30}/akshare/pro/cons.py +0 -0
  221. {akshare-1.15.28 → akshare-1.15.30}/akshare/pro/data_pro.py +0 -0
  222. {akshare-1.15.28 → akshare-1.15.30}/akshare/qdii/__init__.py +0 -0
  223. {akshare-1.15.28 → akshare-1.15.30}/akshare/qdii/qdii_jsl.py +0 -0
  224. {akshare-1.15.28 → akshare-1.15.30}/akshare/qhkc/__init__.py +0 -0
  225. {akshare-1.15.28 → akshare-1.15.30}/akshare/qhkc/qhkc_api.py +0 -0
  226. {akshare-1.15.28 → akshare-1.15.30}/akshare/qhkc_web/__init__.py +0 -0
  227. {akshare-1.15.28 → akshare-1.15.30}/akshare/qhkc_web/qhkc_fund.py +0 -0
  228. {akshare-1.15.28 → akshare-1.15.30}/akshare/qhkc_web/qhkc_index.py +0 -0
  229. {akshare-1.15.28 → akshare-1.15.30}/akshare/qhkc_web/qhkc_tool.py +0 -0
  230. {akshare-1.15.28 → akshare-1.15.30}/akshare/rate/__init__.py +0 -0
  231. {akshare-1.15.28 → akshare-1.15.30}/akshare/rate/repo_rate.py +0 -0
  232. {akshare-1.15.28 → akshare-1.15.30}/akshare/reits/__init__.py +0 -0
  233. {akshare-1.15.28 → akshare-1.15.30}/akshare/reits/reits_basic.py +0 -0
  234. {akshare-1.15.28 → akshare-1.15.30}/akshare/request.py +0 -0
  235. {akshare-1.15.28 → akshare-1.15.30}/akshare/sport/__init__.py +0 -0
  236. {akshare-1.15.28 → akshare-1.15.30}/akshare/sport/sport_olympic.py +0 -0
  237. {akshare-1.15.28 → akshare-1.15.30}/akshare/spot/__init__.py +0 -0
  238. {akshare-1.15.28 → akshare-1.15.30}/akshare/spot/spot_hog_soozhu.py +0 -0
  239. {akshare-1.15.28 → akshare-1.15.30}/akshare/spot/spot_price_qh.py +0 -0
  240. {akshare-1.15.28 → akshare-1.15.30}/akshare/spot/spot_sge.py +0 -0
  241. {akshare-1.15.28 → akshare-1.15.30}/akshare/stock/__init__.py +0 -0
  242. {akshare-1.15.28 → akshare-1.15.30}/akshare/stock/cons.py +0 -0
  243. {akshare-1.15.28 → akshare-1.15.30}/akshare/stock/stock_allotment_cninfo.py +0 -0
  244. {akshare-1.15.28 → akshare-1.15.30}/akshare/stock/stock_ask_bid_em.py +0 -0
  245. {akshare-1.15.28 → akshare-1.15.30}/akshare/stock/stock_board_concept_em.py +0 -0
  246. {akshare-1.15.28 → akshare-1.15.30}/akshare/stock/stock_board_industry_em.py +0 -0
  247. {akshare-1.15.28 → akshare-1.15.30}/akshare/stock/stock_cg_equity_mortgage.py +0 -0
  248. {akshare-1.15.28 → akshare-1.15.30}/akshare/stock/stock_cg_guarantee.py +0 -0
  249. {akshare-1.15.28 → akshare-1.15.30}/akshare/stock/stock_cg_lawsuit.py +0 -0
  250. {akshare-1.15.28 → akshare-1.15.30}/akshare/stock/stock_dividend_cninfo.py +0 -0
  251. {akshare-1.15.28 → akshare-1.15.30}/akshare/stock/stock_dzjy_em.py +0 -0
  252. {akshare-1.15.28 → akshare-1.15.30}/akshare/stock/stock_fund_em.py +0 -0
  253. {akshare-1.15.28 → akshare-1.15.30}/akshare/stock/stock_fund_hold.py +0 -0
  254. {akshare-1.15.28 → akshare-1.15.30}/akshare/stock/stock_gsrl_em.py +0 -0
  255. {akshare-1.15.28 → akshare-1.15.30}/akshare/stock/stock_hk_famous.py +0 -0
  256. {akshare-1.15.28 → akshare-1.15.30}/akshare/stock/stock_hk_fhpx_ths.py +0 -0
  257. {akshare-1.15.28 → akshare-1.15.30}/akshare/stock/stock_hk_hot_rank_em.py +0 -0
  258. {akshare-1.15.28 → akshare-1.15.30}/akshare/stock/stock_hk_sina.py +0 -0
  259. {akshare-1.15.28 → akshare-1.15.30}/akshare/stock/stock_hold_control_cninfo.py +0 -0
  260. {akshare-1.15.28 → akshare-1.15.30}/akshare/stock/stock_hold_control_em.py +0 -0
  261. {akshare-1.15.28 → akshare-1.15.30}/akshare/stock/stock_hold_num_cninfo.py +0 -0
  262. {akshare-1.15.28 → akshare-1.15.30}/akshare/stock/stock_hot_rank_em.py +0 -0
  263. {akshare-1.15.28 → akshare-1.15.30}/akshare/stock/stock_hot_search_baidu.py +0 -0
  264. {akshare-1.15.28 → akshare-1.15.30}/akshare/stock/stock_hot_up_em.py +0 -0
  265. {akshare-1.15.28 → akshare-1.15.30}/akshare/stock/stock_industry.py +0 -0
  266. {akshare-1.15.28 → akshare-1.15.30}/akshare/stock/stock_industry_cninfo.py +0 -0
  267. {akshare-1.15.28 → akshare-1.15.30}/akshare/stock/stock_industry_pe_cninfo.py +0 -0
  268. {akshare-1.15.28 → akshare-1.15.30}/akshare/stock/stock_industry_sw.py +0 -0
  269. {akshare-1.15.28 → akshare-1.15.30}/akshare/stock/stock_info.py +0 -0
  270. {akshare-1.15.28 → akshare-1.15.30}/akshare/stock/stock_info_em.py +0 -0
  271. {akshare-1.15.28 → akshare-1.15.30}/akshare/stock/stock_intraday_em.py +0 -0
  272. {akshare-1.15.28 → akshare-1.15.30}/akshare/stock/stock_intraday_sina.py +0 -0
  273. {akshare-1.15.28 → akshare-1.15.30}/akshare/stock/stock_ipo_summary_cninfo.py +0 -0
  274. {akshare-1.15.28 → akshare-1.15.30}/akshare/stock/stock_new_cninfo.py +0 -0
  275. {akshare-1.15.28 → akshare-1.15.30}/akshare/stock/stock_news_cx.py +0 -0
  276. {akshare-1.15.28 → akshare-1.15.30}/akshare/stock/stock_profile_cninfo.py +0 -0
  277. {akshare-1.15.28 → akshare-1.15.30}/akshare/stock/stock_rank_forecast.py +0 -0
  278. {akshare-1.15.28 → akshare-1.15.30}/akshare/stock/stock_repurchase_em.py +0 -0
  279. {akshare-1.15.28 → akshare-1.15.30}/akshare/stock/stock_share_changes_cninfo.py +0 -0
  280. {akshare-1.15.28 → akshare-1.15.30}/akshare/stock/stock_share_hold.py +0 -0
  281. {akshare-1.15.28 → akshare-1.15.30}/akshare/stock/stock_stop.py +0 -0
  282. {akshare-1.15.28 → akshare-1.15.30}/akshare/stock/stock_summary.py +0 -0
  283. {akshare-1.15.28 → akshare-1.15.30}/akshare/stock/stock_us_famous.py +0 -0
  284. {akshare-1.15.28 → akshare-1.15.30}/akshare/stock/stock_us_js.py +0 -0
  285. {akshare-1.15.28 → akshare-1.15.30}/akshare/stock/stock_us_pink.py +0 -0
  286. {akshare-1.15.28 → akshare-1.15.30}/akshare/stock/stock_us_sina.py +0 -0
  287. {akshare-1.15.28 → akshare-1.15.30}/akshare/stock/stock_weibo_nlp.py +0 -0
  288. {akshare-1.15.28 → akshare-1.15.30}/akshare/stock/stock_xq.py +0 -0
  289. {akshare-1.15.28 → akshare-1.15.30}/akshare/stock/stock_zh_a_special.py +0 -0
  290. {akshare-1.15.28 → akshare-1.15.30}/akshare/stock/stock_zh_a_tick_tx.py +0 -0
  291. {akshare-1.15.28 → akshare-1.15.30}/akshare/stock/stock_zh_ah_tx.py +0 -0
  292. {akshare-1.15.28 → akshare-1.15.30}/akshare/stock/stock_zh_kcb_report.py +0 -0
  293. {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_feature/__init__.py +0 -0
  294. {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_feature/cons.py +0 -0
  295. {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_feature/stock_a_below_net_asset_statistics.py +0 -0
  296. {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_feature/stock_a_high_low.py +0 -0
  297. {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_feature/stock_a_indicator.py +0 -0
  298. {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_feature/stock_a_pe_and_pb.py +0 -0
  299. {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_feature/stock_account_em.py +0 -0
  300. {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_feature/stock_all_pb.py +0 -0
  301. {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_feature/stock_analyst_em.py +0 -0
  302. {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_feature/stock_board_industry_ths.py +0 -0
  303. {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_feature/stock_buffett_index_lg.py +0 -0
  304. {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_feature/stock_classify_sina.py +0 -0
  305. {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_feature/stock_comment_em.py +0 -0
  306. {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_feature/stock_concept_futu.py +0 -0
  307. {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_feature/stock_congestion_lg.py +0 -0
  308. {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_feature/stock_cyq_em.py +0 -0
  309. {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_feature/stock_disclosure_cninfo.py +0 -0
  310. {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_feature/stock_dxsyl_em.py +0 -0
  311. {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_feature/stock_ebs_lg.py +0 -0
  312. {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_feature/stock_esg_sina.py +0 -0
  313. {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_feature/stock_fhps_em.py +0 -0
  314. {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_feature/stock_fhps_ths.py +0 -0
  315. {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_feature/stock_fund_flow.py +0 -0
  316. {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_feature/stock_gddh_em.py +0 -0
  317. {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_feature/stock_gdfx_em.py +0 -0
  318. {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_feature/stock_gdhs.py +0 -0
  319. {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_feature/stock_gdzjc_em.py +0 -0
  320. {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_feature/stock_gpzy_em.py +0 -0
  321. {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_feature/stock_gxl_lg.py +0 -0
  322. {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_feature/stock_hist_em.py +0 -0
  323. {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_feature/stock_hist_tx.py +0 -0
  324. {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_feature/stock_hk_valuation_baidu.py +0 -0
  325. {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_feature/stock_hot_xq.py +0 -0
  326. {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_feature/stock_hsgt_em.py +0 -0
  327. {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_feature/stock_hsgt_exchange_rate.py +0 -0
  328. {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_feature/stock_hsgt_min_em.py +0 -0
  329. {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_feature/stock_info.py +0 -0
  330. {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_feature/stock_inner_trade_xq.py +0 -0
  331. {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_feature/stock_irm_cninfo.py +0 -0
  332. {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_feature/stock_jgdy_em.py +0 -0
  333. {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_feature/stock_lh_yybpm.py +0 -0
  334. {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_feature/stock_lhb_em.py +0 -0
  335. {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_feature/stock_lhb_sina.py +0 -0
  336. {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_feature/stock_margin_em.py +0 -0
  337. {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_feature/stock_margin_sse.py +0 -0
  338. {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_feature/stock_margin_szse.py +0 -0
  339. {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_feature/stock_market_legu.py +0 -0
  340. {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_feature/stock_pankou_em.py +0 -0
  341. {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_feature/stock_qsjy_em.py +0 -0
  342. {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_feature/stock_report_em.py +0 -0
  343. {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_feature/stock_research_report_em.py +0 -0
  344. {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_feature/stock_sns_sseinfo.py +0 -0
  345. {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_feature/stock_sy_em.py +0 -0
  346. {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_feature/stock_technology_ths.py +0 -0
  347. {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_feature/stock_tfp_em.py +0 -0
  348. {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_feature/stock_three_report_em.py +0 -0
  349. {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_feature/stock_ttm_lyr.py +0 -0
  350. {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_feature/stock_wencai.py +0 -0
  351. {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_feature/stock_yjbb_em.py +0 -0
  352. {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_feature/stock_yjyg_cninfo.py +0 -0
  353. {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_feature/stock_yjyg_em.py +0 -0
  354. {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_feature/stock_yzxdr_em.py +0 -0
  355. {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_feature/stock_zdhtmx_em.py +0 -0
  356. {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_feature/stock_zf_pg.py +0 -0
  357. {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_feature/stock_zh_valuation_baidu.py +0 -0
  358. {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_feature/stock_zh_vote_baidu.py +0 -0
  359. {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_feature/stock_ztb_em.py +0 -0
  360. {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_feature/ths.js +0 -0
  361. {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_fundamental/__init__.py +0 -0
  362. {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_fundamental/stock_finance.py +0 -0
  363. {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_fundamental/stock_finance_hk.py +0 -0
  364. {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_fundamental/stock_finance_ths.py +0 -0
  365. {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_fundamental/stock_hold.py +0 -0
  366. {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_fundamental/stock_ipo_declare.py +0 -0
  367. {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_fundamental/stock_kcb_detail_sse.py +0 -0
  368. {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_fundamental/stock_kcb_sse.py +0 -0
  369. {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_fundamental/stock_mda_ym.py +0 -0
  370. {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_fundamental/stock_notice.py +0 -0
  371. {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_fundamental/stock_profit_forecast_em.py +0 -0
  372. {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_fundamental/stock_profit_forecast_hk_etnet.py +0 -0
  373. {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_fundamental/stock_profit_forecast_ths.py +0 -0
  374. {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_fundamental/stock_recommend.py +0 -0
  375. {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_fundamental/stock_register_em.py +0 -0
  376. {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_fundamental/stock_restricted_em.py +0 -0
  377. {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_fundamental/stock_zygc.py +0 -0
  378. {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_fundamental/stock_zyjs_ths.py +0 -0
  379. {akshare-1.15.28 → akshare-1.15.30}/akshare/tool/__init__.py +0 -0
  380. {akshare-1.15.28 → akshare-1.15.30}/akshare/tool/trade_date_hist.py +0 -0
  381. {akshare-1.15.28 → akshare-1.15.30}/akshare/utils/__init__.py +0 -0
  382. {akshare-1.15.28 → akshare-1.15.30}/akshare/utils/cons.py +0 -0
  383. {akshare-1.15.28 → akshare-1.15.30}/akshare/utils/context.py +0 -0
  384. {akshare-1.15.28 → akshare-1.15.30}/akshare/utils/demjson.py +0 -0
  385. {akshare-1.15.28 → akshare-1.15.30}/akshare/utils/func.py +0 -0
  386. {akshare-1.15.28 → akshare-1.15.30}/akshare/utils/token_process.py +0 -0
  387. {akshare-1.15.28 → akshare-1.15.30}/akshare/utils/tqdm.py +0 -0
  388. {akshare-1.15.28 → akshare-1.15.30}/akshare.egg-info/SOURCES.txt +0 -0
  389. {akshare-1.15.28 → akshare-1.15.30}/akshare.egg-info/dependency_links.txt +0 -0
  390. {akshare-1.15.28 → akshare-1.15.30}/akshare.egg-info/requires.txt +0 -0
  391. {akshare-1.15.28 → akshare-1.15.30}/akshare.egg-info/top_level.txt +0 -0
  392. {akshare-1.15.28 → akshare-1.15.30}/pyproject.toml +0 -0
  393. {akshare-1.15.28 → akshare-1.15.30}/setup.cfg +0 -0
  394. {akshare-1.15.28 → akshare-1.15.30}/setup.py +0 -0
  395. {akshare-1.15.28 → akshare-1.15.30}/tests/__init__.py +0 -0
  396. {akshare-1.15.28 → akshare-1.15.30}/tests/test_func.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: akshare
3
- Version: 1.15.28
3
+ Version: 1.15.30
4
4
  Summary: AKShare is an elegant and simple financial data interface library for Python, built for human beings!
5
5
  Home-page: https://github.com/akfamily/akshare
6
6
  Author: AKFamily
@@ -40,7 +40,7 @@ Requires-Dist: akqmt; extra == "qmt"
40
40
 
41
41
  **欢迎加入专注于财经数据和量化投资的知识社区,请点击[了解更多](https://akshare.akfamily.xyz/learn.html)**
42
42
 
43
- **量化投研视频课程:《PyBroker-入门及实战》已经上架!**
43
+ **量化投研视频课程:《PyBroker-入门及实战》已经上架!《PyBroker-进阶及实战》正在更新!**
44
44
 
45
45
  **更多视频教程已经发布:《AKShare-初阶-使用教学》、《AKShare-初阶-实战应用》、《AKShare-源码解析》、《开源项目巡礼》**,
46
46
  详情请关注【数据科学实战】公众号,查看更多课程信息!
@@ -257,14 +257,10 @@ Special thanks [TuShare](https://github.com/waditu/tushare) for the opportunity
257
257
 
258
258
  Thanks for the data provided by [生意社网站](http://www.100ppi.com/);
259
259
 
260
- Thanks for the data provided by [奇货可查网站](https://qhkch.com/);
261
-
262
260
  Thanks for the data provided by [中国银行间市场交易商协会网站](http://www.nafmii.org.cn/);
263
261
 
264
262
  Thanks for the data provided by [99期货网站](http://www.99qh.com/);
265
263
 
266
- Thanks for the data provided by [英为财情网站](https://cn.investing.com/);
267
-
268
264
  Thanks for the data provided by [中国外汇交易中心暨全国银行间同业拆借中心网站](http://www.chinamoney.com.cn/chinese/);
269
265
 
270
266
  Thanks for the data provided by [金十数据网站](https://www.jin10.com/);
@@ -273,8 +269,6 @@ Thanks for the data provided by [和讯财经网站](http://www.hexun.com/);
273
269
 
274
270
  Thanks for the data provided by [新浪财经网站](https://finance.sina.com.cn/);
275
271
 
276
- Thanks for the data provided by [Oxford-Man Institute 网站](https://realized.oxford-man.ox.ac.uk/);
277
-
278
272
  Thanks for the data provided by [DACHENG-XIU 网站](https://dachxiu.chicagobooth.edu/);
279
273
 
280
274
  Thanks for the data provided by [上海证券交易所网站](http://www.sse.com.cn/assortment/options/price/);
@@ -301,12 +295,6 @@ Thanks for the data provided by [南华期货网站](http://www.nanhua.net/nhzc/
301
295
 
302
296
  Thanks for the data provided by [Economic Policy Uncertainty 网站](http://www.nanhua.net/nhzc/varietytrend.html);
303
297
 
304
- Thanks for the data provided by [微博指数网站](https://data.weibo.com/index/newindex);
305
-
306
- Thanks for the data provided by [百度指数网站](http://index.baidu.com/v2/main/index.html);
307
-
308
- Thanks for the data provided by [谷歌指数网站](https://trends.google.com/trends/?geo=US);
309
-
310
298
  Thanks for the data provided by [申万指数网站](http://www.swsindex.com/idx0120.aspx?columnid=8832);
311
299
 
312
300
  Thanks for the data provided by [真气网网站](https://www.zq12369.com/);
@@ -321,18 +309,12 @@ Thanks for the data provided by [北京市碳排放权电子交易平台网站](
321
309
 
322
310
  Thanks for the data provided by [国家金融与发展实验室网站](http://www.nifd.cn/);
323
311
 
324
- Thanks for the data provided by [IT桔子网站](https://www.itjuzi.com);
325
-
326
312
  Thanks for the data provided by [东方财富网站](http://data.eastmoney.com/jgdy/);
327
313
 
328
314
  Thanks for the data provided by [义乌小商品指数网站](http://www.ywindex.com/Home/Product/index/);
329
315
 
330
- Thanks for the data provided by [中国国家发展和改革委员会网站](http://jgjc.ndrc.gov.cn/dmzs.aspx?clmId=741);
331
-
332
316
  Thanks for the data provided by [百度迁徙网站](https://qianxi.baidu.com/?from=shoubai#city=0);
333
317
 
334
- Thanks for the data provided by [慈善中国网站](http://cishan.chinanpo.gov.cn/platform/login.html);
335
-
336
318
  Thanks for the data provided by [思知网站](https://www.ownthink.com/);
337
319
 
338
320
  Thanks for the data provided by [Currencyscoop 网站](https://currencyscoop.com/);
@@ -1,6 +1,6 @@
1
1
  **欢迎加入专注于财经数据和量化投资的知识社区,请点击[了解更多](https://akshare.akfamily.xyz/learn.html)**
2
2
 
3
- **量化投研视频课程:《PyBroker-入门及实战》已经上架!**
3
+ **量化投研视频课程:《PyBroker-入门及实战》已经上架!《PyBroker-进阶及实战》正在更新!**
4
4
 
5
5
  **更多视频教程已经发布:《AKShare-初阶-使用教学》、《AKShare-初阶-实战应用》、《AKShare-源码解析》、《开源项目巡礼》**,
6
6
  详情请关注【数据科学实战】公众号,查看更多课程信息!
@@ -217,14 +217,10 @@ Special thanks [TuShare](https://github.com/waditu/tushare) for the opportunity
217
217
 
218
218
  Thanks for the data provided by [生意社网站](http://www.100ppi.com/);
219
219
 
220
- Thanks for the data provided by [奇货可查网站](https://qhkch.com/);
221
-
222
220
  Thanks for the data provided by [中国银行间市场交易商协会网站](http://www.nafmii.org.cn/);
223
221
 
224
222
  Thanks for the data provided by [99期货网站](http://www.99qh.com/);
225
223
 
226
- Thanks for the data provided by [英为财情网站](https://cn.investing.com/);
227
-
228
224
  Thanks for the data provided by [中国外汇交易中心暨全国银行间同业拆借中心网站](http://www.chinamoney.com.cn/chinese/);
229
225
 
230
226
  Thanks for the data provided by [金十数据网站](https://www.jin10.com/);
@@ -233,8 +229,6 @@ Thanks for the data provided by [和讯财经网站](http://www.hexun.com/);
233
229
 
234
230
  Thanks for the data provided by [新浪财经网站](https://finance.sina.com.cn/);
235
231
 
236
- Thanks for the data provided by [Oxford-Man Institute 网站](https://realized.oxford-man.ox.ac.uk/);
237
-
238
232
  Thanks for the data provided by [DACHENG-XIU 网站](https://dachxiu.chicagobooth.edu/);
239
233
 
240
234
  Thanks for the data provided by [上海证券交易所网站](http://www.sse.com.cn/assortment/options/price/);
@@ -261,12 +255,6 @@ Thanks for the data provided by [南华期货网站](http://www.nanhua.net/nhzc/
261
255
 
262
256
  Thanks for the data provided by [Economic Policy Uncertainty 网站](http://www.nanhua.net/nhzc/varietytrend.html);
263
257
 
264
- Thanks for the data provided by [微博指数网站](https://data.weibo.com/index/newindex);
265
-
266
- Thanks for the data provided by [百度指数网站](http://index.baidu.com/v2/main/index.html);
267
-
268
- Thanks for the data provided by [谷歌指数网站](https://trends.google.com/trends/?geo=US);
269
-
270
258
  Thanks for the data provided by [申万指数网站](http://www.swsindex.com/idx0120.aspx?columnid=8832);
271
259
 
272
260
  Thanks for the data provided by [真气网网站](https://www.zq12369.com/);
@@ -281,18 +269,12 @@ Thanks for the data provided by [北京市碳排放权电子交易平台网站](
281
269
 
282
270
  Thanks for the data provided by [国家金融与发展实验室网站](http://www.nifd.cn/);
283
271
 
284
- Thanks for the data provided by [IT桔子网站](https://www.itjuzi.com);
285
-
286
272
  Thanks for the data provided by [东方财富网站](http://data.eastmoney.com/jgdy/);
287
273
 
288
274
  Thanks for the data provided by [义乌小商品指数网站](http://www.ywindex.com/Home/Product/index/);
289
275
 
290
- Thanks for the data provided by [中国国家发展和改革委员会网站](http://jgjc.ndrc.gov.cn/dmzs.aspx?clmId=741);
291
-
292
276
  Thanks for the data provided by [百度迁徙网站](https://qianxi.baidu.com/?from=shoubai#city=0);
293
277
 
294
- Thanks for the data provided by [慈善中国网站](http://cishan.chinanpo.gov.cn/platform/login.html);
295
-
296
278
  Thanks for the data provided by [思知网站](https://www.ownthink.com/);
297
279
 
298
280
  Thanks for the data provided by [Currencyscoop 网站](https://currencyscoop.com/);
@@ -2938,9 +2938,11 @@ amac_manager_cancelled_info # 中国证券投资基金业协会-信息公示-诚
2938
2938
  1.15.26 fix: fix option_dce_daily interface
2939
2939
  1.15.27 fix: fix stock_zh_index_spot_em interface
2940
2940
  1.15.28 fix: fix stock_hk_valuation_baidu interface
2941
+ 1.15.29 fix: fix option_dce_daily interface
2942
+ 1.15.30 fix: fix fund_etf_category_sina interface
2941
2943
  """
2942
2944
 
2943
- __version__ = "1.15.28"
2945
+ __version__ = "1.15.30"
2944
2946
  __author__ = "AKFamily"
2945
2947
 
2946
2948
  import sys
@@ -1,14 +1,14 @@
1
1
  #!/usr/bin/env python
2
2
  # -*- coding:utf-8 -*-
3
3
  """
4
- Date: 2022/2/15 17:33
4
+ Date: 2024/11/22 14:00
5
5
  Desc: 新浪财经-基金行情
6
- http://vip.stock.finance.sina.com.cn/fund_center/index.html#jjhqetf
6
+ https://vip.stock.finance.sina.com.cn/fund_center/index.html#jjhqetf
7
7
  """
8
8
 
9
9
  import pandas as pd
10
- import requests
11
10
  import py_mini_racer
11
+ import requests
12
12
 
13
13
  from akshare.stock.cons import hk_js_decode
14
14
  from akshare.utils import demjson
@@ -28,10 +28,13 @@ def fund_etf_category_sina(symbol: str = "LOF基金") -> pd.DataFrame:
28
28
  "ETF基金": "etf_hq_fund",
29
29
  "LOF基金": "lof_hq_fund",
30
30
  }
31
- url = "http://vip.stock.finance.sina.com.cn/quotes_service/api/jsonp.php/IO.XSRV2.CallbackList['da_yPT46_Ll7K6WD']/Market_Center.getHQNodeDataSimple"
31
+ url = (
32
+ "https://vip.stock.finance.sina.com.cn/quotes_service/api/jsonp.php/"
33
+ "IO.XSRV2.CallbackList['da_yPT46_Ll7K6WD']/Market_Center.getHQNodeDataSimple"
34
+ )
32
35
  params = {
33
36
  "page": "1",
34
- "num": "1000",
37
+ "num": "5000",
35
38
  "sort": "symbol",
36
39
  "asc": "0",
37
40
  "node": fund_map[symbol],
@@ -96,21 +99,21 @@ def fund_etf_category_sina(symbol: str = "LOF基金") -> pd.DataFrame:
96
99
  "成交额",
97
100
  ]
98
101
  ]
99
- temp_df["最新价"] = pd.to_numeric(temp_df["最新价"])
100
- temp_df["涨跌额"] = pd.to_numeric(temp_df["涨跌额"])
101
- temp_df["涨跌幅"] = pd.to_numeric(temp_df["涨跌幅"])
102
- temp_df["买入"] = pd.to_numeric(temp_df["买入"])
103
- temp_df["卖出"] = pd.to_numeric(temp_df["卖出"])
104
- temp_df["昨收"] = pd.to_numeric(temp_df["昨收"])
105
- temp_df["今开"] = pd.to_numeric(temp_df["今开"])
106
- temp_df["最高"] = pd.to_numeric(temp_df["最高"])
107
- temp_df["最低"] = pd.to_numeric(temp_df["最低"])
108
- temp_df["成交量"] = pd.to_numeric(temp_df["成交量"])
109
- temp_df["成交额"] = pd.to_numeric(temp_df["成交额"])
102
+ temp_df["最新价"] = pd.to_numeric(temp_df["最新价"], errors="coerce")
103
+ temp_df["涨跌额"] = pd.to_numeric(temp_df["涨跌额"], errors="coerce")
104
+ temp_df["涨跌幅"] = pd.to_numeric(temp_df["涨跌幅"], errors="coerce")
105
+ temp_df["买入"] = pd.to_numeric(temp_df["买入"], errors="coerce")
106
+ temp_df["卖出"] = pd.to_numeric(temp_df["卖出"], errors="coerce")
107
+ temp_df["昨收"] = pd.to_numeric(temp_df["昨收"], errors="coerce")
108
+ temp_df["今开"] = pd.to_numeric(temp_df["今开"], errors="coerce")
109
+ temp_df["最高"] = pd.to_numeric(temp_df["最高"], errors="coerce")
110
+ temp_df["最低"] = pd.to_numeric(temp_df["最低"], errors="coerce")
111
+ temp_df["成交量"] = pd.to_numeric(temp_df["成交量"], errors="coerce")
112
+ temp_df["成交额"] = pd.to_numeric(temp_df["成交额"], errors="coerce")
110
113
  return temp_df
111
114
 
112
115
 
113
- def fund_etf_hist_sina(symbol: str = "sz159996") -> pd.DataFrame:
116
+ def fund_etf_hist_sina(symbol: str = "sh510050") -> pd.DataFrame:
114
117
  """
115
118
  新浪财经-基金-ETF 基金-日行情数据
116
119
  https://finance.sina.com.cn/fund/quotes/159996/bc.shtml
@@ -129,12 +132,12 @@ def fund_etf_hist_sina(symbol: str = "sz159996") -> pd.DataFrame:
129
132
  temp_df = pd.DataFrame(dict_list)
130
133
  if temp_df.empty: # 处理获取数据为空的问题
131
134
  return pd.DataFrame()
132
- temp_df["date"] = pd.to_datetime(temp_df["date"]).dt.date
133
- temp_df["open"] = pd.to_numeric(temp_df["open"])
134
- temp_df["high"] = pd.to_numeric(temp_df["high"])
135
- temp_df["low"] = pd.to_numeric(temp_df["low"])
136
- temp_df["close"] = pd.to_numeric(temp_df["close"])
137
- temp_df["volume"] = pd.to_numeric(temp_df["volume"])
135
+ temp_df["date"] = pd.to_datetime(temp_df["date"], errors="coerce").dt.date
136
+ temp_df["open"] = pd.to_numeric(temp_df["open"], errors="coerce")
137
+ temp_df["high"] = pd.to_numeric(temp_df["high"], errors="coerce")
138
+ temp_df["low"] = pd.to_numeric(temp_df["low"], errors="coerce")
139
+ temp_df["close"] = pd.to_numeric(temp_df["close"], errors="coerce")
140
+ temp_df["volume"] = pd.to_numeric(temp_df["volume"], errors="coerce")
138
141
  return temp_df
139
142
 
140
143
 
@@ -80,7 +80,7 @@ def option_dce_daily(
80
80
  elif symbol == "玉米期权":
81
81
  result_one_df, result_two_df = (
82
82
  table_df[table_df["商品名称"] == "玉米"],
83
- another_df[another_df.iloc[:, 0].str.contains("c")],
83
+ another_df[another_df.iloc[:, 0].str.contains(r"^c\d")],
84
84
  )
85
85
  elif symbol == "铁矿石期权":
86
86
  result_one_df, result_two_df = (
@@ -163,6 +163,43 @@ def option_dce_daily(
163
163
  return result_one_df, result_two_df
164
164
 
165
165
 
166
+ def __option_czce_daily_convert_numeric_columns(df):
167
+ # 定义要处理的列
168
+ columns_to_convert = [
169
+ "昨结算",
170
+ "今开盘",
171
+ "最高价",
172
+ "最低价",
173
+ "今收盘",
174
+ "今结算",
175
+ "涨跌1",
176
+ "涨跌2",
177
+ "成交量(手)",
178
+ "持仓量",
179
+ "增减量",
180
+ "成交额(万元)",
181
+ "DELTA",
182
+ "隐含波动率",
183
+ "行权量",
184
+ ]
185
+
186
+ # 转换函数:去除逗号并转换为float
187
+ def convert_to_float(x):
188
+ try:
189
+ return float(str(x).replace(",", ""))
190
+ except: # noqa: E722
191
+ return x
192
+
193
+ # 创建DataFrame的副本以避免SettingWithCopyWarning
194
+ df_copy = df.copy()
195
+ df_copy.columns = [item.strip() for item in df_copy]
196
+ # 应用转换
197
+ for col in columns_to_convert:
198
+ df_copy[col] = df_copy[col].apply(convert_to_float)
199
+
200
+ return df_copy
201
+
202
+
166
203
  def option_czce_daily(
167
204
  symbol: str = "白糖期权", trade_date: str = "20191017"
168
205
  ) -> pd.DataFrame:
@@ -192,82 +229,118 @@ def option_czce_daily(
192
229
  if symbol == "白糖期权":
193
230
  temp_df = table_df[table_df.iloc[:, 0].str.contains("SR")]
194
231
  temp_df.reset_index(inplace=True, drop=True)
195
- return temp_df.iloc[:-1, :]
232
+ temp_df = temp_df.iloc[:-1, :].copy()
233
+ new_df = __option_czce_daily_convert_numeric_columns(temp_df)
234
+ return new_df
196
235
  elif symbol == "棉花期权":
197
236
  temp_df = table_df[table_df.iloc[:, 0].str.contains("CF")]
198
237
  temp_df.reset_index(inplace=True, drop=True)
199
- return temp_df.iloc[:-1, :]
238
+ temp_df = temp_df.iloc[:-1, :].copy()
239
+ new_df = __option_czce_daily_convert_numeric_columns(temp_df)
240
+ return new_df
200
241
  elif symbol == "甲醇期权":
201
242
  temp_df = table_df[table_df.iloc[:, 0].str.contains("MA")]
202
243
  temp_df.reset_index(inplace=True, drop=True)
203
- return temp_df.iloc[:-1, :]
244
+ temp_df = temp_df.iloc[:-1, :].copy()
245
+ new_df = __option_czce_daily_convert_numeric_columns(temp_df)
246
+ return new_df
204
247
  elif symbol == "PTA期权":
205
248
  temp_df = table_df[table_df.iloc[:, 0].str.contains("TA")]
206
249
  temp_df.reset_index(inplace=True, drop=True)
207
- return temp_df.iloc[:-1, :]
250
+ temp_df = temp_df.iloc[:-1, :].copy()
251
+ new_df = __option_czce_daily_convert_numeric_columns(temp_df)
252
+ return new_df
208
253
  elif symbol == "菜籽粕期权":
209
254
  temp_df = table_df[table_df.iloc[:, 0].str.contains("RM")]
210
255
  temp_df.reset_index(inplace=True, drop=True)
211
- return temp_df.iloc[:-1, :]
256
+ temp_df = temp_df.iloc[:-1, :].copy()
257
+ new_df = __option_czce_daily_convert_numeric_columns(temp_df)
258
+ return new_df
212
259
  elif symbol == "动力煤期权":
213
260
  temp_df = table_df[table_df.iloc[:, 0].str.contains("ZC")]
214
261
  temp_df.reset_index(inplace=True, drop=True)
215
- return temp_df.iloc[:-1, :]
262
+ temp_df = temp_df.iloc[:-1, :].copy()
263
+ new_df = __option_czce_daily_convert_numeric_columns(temp_df)
264
+ return new_df
216
265
  elif symbol == "短纤期权":
217
266
  temp_df = table_df[table_df.iloc[:, 0].str.contains("PF")]
218
267
  temp_df.reset_index(inplace=True, drop=True)
219
- return temp_df.iloc[:-1, :]
268
+ temp_df = temp_df.iloc[:-1, :].copy()
269
+ new_df = __option_czce_daily_convert_numeric_columns(temp_df)
270
+ return new_df
220
271
  elif symbol == "菜籽油期权":
221
272
  temp_df = table_df[table_df.iloc[:, 0].str.contains("OI")]
222
273
  temp_df.reset_index(inplace=True, drop=True)
223
- return temp_df.iloc[:-1, :]
274
+ temp_df = temp_df.iloc[:-1, :].copy()
275
+ new_df = __option_czce_daily_convert_numeric_columns(temp_df)
276
+ return new_df
224
277
  elif symbol == "花生期权":
225
278
  temp_df = table_df[table_df.iloc[:, 0].str.contains("PK")]
226
279
  temp_df.reset_index(inplace=True, drop=True)
227
- return temp_df.iloc[:-1, :]
280
+ temp_df = temp_df.iloc[:-1, :].copy()
281
+ new_df = __option_czce_daily_convert_numeric_columns(temp_df)
282
+ return new_df
228
283
  elif symbol == "纯碱期权":
229
284
  temp_df = table_df[table_df.iloc[:, 0].str.contains("SA")]
230
285
  temp_df.reset_index(inplace=True, drop=True)
231
- return temp_df.iloc[:-1, :]
286
+ temp_df = temp_df.iloc[:-1, :].copy()
287
+ new_df = __option_czce_daily_convert_numeric_columns(temp_df)
288
+ return new_df
232
289
  elif symbol == "锰硅期权":
233
290
  temp_df = table_df[table_df.iloc[:, 0].str.contains("SM")]
234
291
  temp_df.reset_index(inplace=True, drop=True)
235
- return temp_df.iloc[:-1, :]
292
+ temp_df = temp_df.iloc[:-1, :].copy()
293
+ new_df = __option_czce_daily_convert_numeric_columns(temp_df)
294
+ return new_df
236
295
  elif symbol == "硅铁期权":
237
296
  temp_df = table_df[table_df.iloc[:, 0].str.contains("SF")]
238
297
  temp_df.reset_index(inplace=True, drop=True)
239
- return temp_df.iloc[:-1, :]
298
+ temp_df = temp_df.iloc[:-1, :].copy()
299
+ new_df = __option_czce_daily_convert_numeric_columns(temp_df)
300
+ return new_df
240
301
  elif symbol == "尿素期权":
241
302
  temp_df = table_df[table_df.iloc[:, 0].str.contains("UR")]
242
303
  temp_df.reset_index(inplace=True, drop=True)
243
- return temp_df.iloc[:-1, :]
304
+ temp_df = temp_df.iloc[:-1, :].copy()
305
+ new_df = __option_czce_daily_convert_numeric_columns(temp_df)
306
+ return new_df
244
307
  elif symbol == "苹果期权":
245
308
  temp_df = table_df[table_df.iloc[:, 0].str.contains("AP")]
246
309
  temp_df.reset_index(inplace=True, drop=True)
247
- return temp_df.iloc[:-1, :]
310
+ temp_df = temp_df.iloc[:-1, :].copy()
311
+ new_df = __option_czce_daily_convert_numeric_columns(temp_df)
312
+ return new_df
248
313
  elif symbol == "红枣期权":
249
314
  temp_df = table_df[table_df.iloc[:, 0].str.contains("CJ")]
250
315
  temp_df.reset_index(inplace=True, drop=True)
251
- return temp_df.iloc[:-1, :]
316
+ temp_df = temp_df.iloc[:-1, :].copy()
317
+ new_df = __option_czce_daily_convert_numeric_columns(temp_df)
318
+ return new_df
252
319
  elif symbol == "对二甲苯期权":
253
320
  temp_df = table_df[table_df.iloc[:, 0].str.contains("PX")]
254
321
  temp_df.reset_index(inplace=True, drop=True)
255
- return temp_df.iloc[:-1, :]
322
+ temp_df = temp_df.iloc[:-1, :].copy()
323
+ new_df = __option_czce_daily_convert_numeric_columns(temp_df)
324
+ return new_df
256
325
  elif symbol == "烧碱期权":
257
326
  temp_df = table_df[table_df.iloc[:, 0].str.contains("SH")]
258
327
  temp_df.reset_index(inplace=True, drop=True)
259
- return temp_df.iloc[:-1, :]
328
+ temp_df = temp_df.iloc[:-1, :].copy()
329
+ new_df = __option_czce_daily_convert_numeric_columns(temp_df)
330
+ return new_df
260
331
  elif symbol == "玻璃期权":
261
332
  temp_df = table_df[table_df.iloc[:, 0].str.contains("FG")]
262
333
  temp_df.reset_index(inplace=True, drop=True)
263
- return temp_df.iloc[:-1, :]
334
+ temp_df = temp_df.iloc[:-1, :].copy()
335
+ new_df = __option_czce_daily_convert_numeric_columns(temp_df)
336
+ return new_df
264
337
  except: # noqa: E722
265
338
  return pd.DataFrame()
266
339
 
267
340
 
268
341
  def option_shfe_daily(
269
342
  symbol: str = "铝期权", trade_date: str = "20200827"
270
- ) -> Optional[pd.DataFrame]:
343
+ ) -> Optional[tuple[pd.DataFrame, pd.DataFrame]]:
271
344
  """
272
345
  上海期货交易所-期权-日频行情数据
273
346
  https://tsite.shfe.com.cn/statements/dataview.html?paramid=kxQ
@@ -527,11 +600,11 @@ def option_gfex_vol_daily(symbol: str = "碳酸锂", trade_date: str = "20230724
527
600
 
528
601
 
529
602
  if __name__ == "__main__":
530
- option_czce_daily_df = option_czce_daily(symbol="短纤期权", trade_date="20240718")
603
+ option_czce_daily_df = option_czce_daily(symbol="白糖期权", trade_date="20240711")
531
604
  print(option_czce_daily_df)
532
605
 
533
606
  option_dce_daily_one, option_dce_daily_two = option_dce_daily(
534
- symbol="鸡蛋期权", trade_date="20241118"
607
+ symbol="玉米期权", trade_date="20241121"
535
608
  )
536
609
  print(option_dce_daily_one)
537
610
  print(option_dce_daily_two)
@@ -138,7 +138,7 @@ def stock_zh_a_daily(
138
138
  :type start_date: str
139
139
  :param end_date: 20201103; 结束日期
140
140
  :type end_date: str
141
- :param adjust: 默认为空: 返回不复权的数据; qfq: 返回前复权后的数据; hfq: 返回后复权后的数据; hfq-factor: 返回后复权因子; hfq-factor: 返回前复权因子
141
+ :param adjust: 默认为空: 返回不复权的数据; qfq: 返回前复权后的数据; hfq: 返回后复权后的数据; hfq-factor: 返回后复权因子; qfq-factor: 返回前复权因子
142
142
  :type adjust: str
143
143
  :return: 行情数据
144
144
  :rtype: pandas.DataFrame
@@ -136,7 +136,7 @@ def stock_zh_b_daily(
136
136
  :type end_date: str
137
137
  :param symbol: sh600000
138
138
  :type symbol: str
139
- :param adjust: 默认为空: 返回不复权的数据; qfq: 返回前复权后的数据; hfq: 返回后复权后的数据; hfq-factor: 返回后复权因子; hfq-factor: 返回前复权因子
139
+ :param adjust: 默认为空: 返回不复权的数据; qfq: 返回前复权后的数据; hfq: 返回后复权后的数据; hfq-factor: 返回后复权因子; qfq-factor: 返回前复权因子
140
140
  :type adjust: str
141
141
  :return: specific data
142
142
  :rtype: pandas.DataFrame