akshare 1.16.64__tar.gz → 1.16.66__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.
Files changed (417) hide show
  1. {akshare-1.16.64 → akshare-1.16.66}/PKG-INFO +12 -35
  2. {akshare-1.16.64 → akshare-1.16.66}/README.md +11 -34
  3. {akshare-1.16.64 → akshare-1.16.66}/akshare/__init__.py +3 -1
  4. {akshare-1.16.64 → akshare-1.16.66}/akshare/air/cons.py +1 -0
  5. {akshare-1.16.64 → akshare-1.16.66}/akshare/air/crypto.js +1 -1
  6. {akshare-1.16.64 → akshare-1.16.66}/akshare/air/outcrypto.js +1 -1
  7. {akshare-1.16.64 → akshare-1.16.66}/akshare/article/cons.py +1 -0
  8. {akshare-1.16.64 → akshare-1.16.66}/akshare/article/epu_index.py +4 -3
  9. {akshare-1.16.64 → akshare-1.16.66}/akshare/article/ff_factor.py +19 -8
  10. {akshare-1.16.64 → akshare-1.16.66}/akshare/article/fred_md.py +4 -1
  11. {akshare-1.16.64 → akshare-1.16.66}/akshare/article/risk_rv.py +3 -8
  12. {akshare-1.16.64 → akshare-1.16.66}/akshare/bond/bond_cb_sina.py +1 -0
  13. {akshare-1.16.64 → akshare-1.16.66}/akshare/bond/bond_cbond.py +19 -14
  14. {akshare-1.16.64 → akshare-1.16.66}/akshare/bond/bond_em.py +34 -15
  15. akshare-1.16.66/akshare/bond/bond_summary.py +92 -0
  16. {akshare-1.16.64 → akshare-1.16.66}/akshare/bond/bond_zh_cov.py +0 -6
  17. {akshare-1.16.64 → akshare-1.16.66}/akshare/bond/cons.py +14 -11
  18. {akshare-1.16.64 → akshare-1.16.66}/akshare/crypto/__init__.py +1 -1
  19. {akshare-1.16.64 → akshare-1.16.66}/akshare/crypto/crypto_bitcoin_cme.py +7 -7
  20. {akshare-1.16.64 → akshare-1.16.66}/akshare/crypto/crypto_hold.py +4 -1
  21. {akshare-1.16.64 → akshare-1.16.66}/akshare/currency/currency.py +1 -0
  22. {akshare-1.16.64 → akshare-1.16.66}/akshare/currency/currency_china_bank_sina.py +6 -3
  23. {akshare-1.16.64 → akshare-1.16.66}/akshare/data/__init__.py +1 -1
  24. {akshare-1.16.64 → akshare-1.16.66}/akshare/data/cninfo.js +1 -1
  25. {akshare-1.16.64 → akshare-1.16.66}/akshare/economic/cons.py +10 -3
  26. {akshare-1.16.64 → akshare-1.16.66}/akshare/economic/macro_australia.py +0 -7
  27. {akshare-1.16.64 → akshare-1.16.66}/akshare/economic/macro_canada.py +92 -81
  28. {akshare-1.16.64 → akshare-1.16.66}/akshare/economic/macro_china.py +0 -34
  29. {akshare-1.16.64 → akshare-1.16.66}/akshare/economic/macro_china_hk.py +0 -1
  30. {akshare-1.16.64 → akshare-1.16.66}/akshare/economic/macro_euro.py +103 -56
  31. {akshare-1.16.64 → akshare-1.16.66}/akshare/economic/macro_germany.py +1 -1
  32. {akshare-1.16.64 → akshare-1.16.66}/akshare/economic/macro_japan.py +0 -1
  33. {akshare-1.16.64 → akshare-1.16.66}/akshare/economic/macro_other.py +1 -6
  34. {akshare-1.16.64 → akshare-1.16.66}/akshare/economic/macro_swiss.py +2 -3
  35. {akshare-1.16.64 → akshare-1.16.66}/akshare/economic/macro_uk.py +1 -1
  36. {akshare-1.16.64 → akshare-1.16.66}/akshare/economic/macro_usa.py +0 -2
  37. {akshare-1.16.64 → akshare-1.16.66}/akshare/energy/energy_carbon.py +0 -1
  38. {akshare-1.16.64 → akshare-1.16.66}/akshare/energy/energy_oil_em.py +1 -2
  39. {akshare-1.16.64 → akshare-1.16.66}/akshare/event/cons.py +1 -0
  40. {akshare-1.16.64 → akshare-1.16.66}/akshare/forex/forex_em.py +0 -1
  41. {akshare-1.16.64 → akshare-1.16.66}/akshare/fortune/fortune_bloomberg.py +6 -3
  42. {akshare-1.16.64 → akshare-1.16.66}/akshare/fortune/fortune_forbes_500.py +3 -6
  43. {akshare-1.16.64 → akshare-1.16.66}/akshare/fortune/fortune_hurun.py +2 -1
  44. {akshare-1.16.64 → akshare-1.16.66}/akshare/fortune/fortune_xincaifu_500.py +17 -14
  45. {akshare-1.16.64 → akshare-1.16.66}/akshare/fund/fund_announcement.py +1 -0
  46. akshare-1.16.66/akshare/fund/fund_aum_em.py +104 -0
  47. {akshare-1.16.64 → akshare-1.16.66}/akshare/fund/fund_em.py +0 -7
  48. {akshare-1.16.64 → akshare-1.16.66}/akshare/fund/fund_etf_em.py +0 -5
  49. {akshare-1.16.64 → akshare-1.16.66}/akshare/fund/fund_fhsp_em.py +27 -20
  50. {akshare-1.16.64 → akshare-1.16.66}/akshare/fund/fund_init_em.py +8 -5
  51. {akshare-1.16.64 → akshare-1.16.66}/akshare/fund/fund_lof_em.py +0 -5
  52. {akshare-1.16.64 → akshare-1.16.66}/akshare/fund/fund_manager.py +18 -7
  53. {akshare-1.16.64 → akshare-1.16.66}/akshare/fund/fund_portfolio_em.py +0 -1
  54. {akshare-1.16.64 → akshare-1.16.66}/akshare/fund/fund_position_lg.py +19 -8
  55. {akshare-1.16.64 → akshare-1.16.66}/akshare/fund/fund_rank_em.py +0 -3
  56. {akshare-1.16.64 → akshare-1.16.66}/akshare/fund/fund_rating.py +28 -9
  57. {akshare-1.16.64 → akshare-1.16.66}/akshare/fund/fund_scale_em.py +24 -13
  58. {akshare-1.16.64 → akshare-1.16.66}/akshare/futures/futures_comex_em.py +1 -0
  59. {akshare-1.16.64 → akshare-1.16.66}/akshare/futures/futures_contract_detail.py +11 -8
  60. {akshare-1.16.64 → akshare-1.16.66}/akshare/futures/futures_inventory_em.py +0 -2
  61. {akshare-1.16.64 → akshare-1.16.66}/akshare/futures/futures_rule.py +5 -1
  62. {akshare-1.16.64 → akshare-1.16.66}/akshare/futures/futures_settlement_price_sgx.py +21 -6
  63. {akshare-1.16.64 → akshare-1.16.66}/akshare/futures/futures_stock_js.py +0 -1
  64. {akshare-1.16.64 → akshare-1.16.66}/akshare/futures/receipt.py +279 -153
  65. {akshare-1.16.64 → akshare-1.16.66}/akshare/futures/requests_fun.py +16 -3
  66. akshare-1.16.66/akshare/futures_derivative/cons.py +142 -0
  67. akshare-1.16.66/akshare/futures_derivative/futures_contract_info_cffex.py +100 -0
  68. {akshare-1.16.64 → akshare-1.16.66}/akshare/futures_derivative/futures_contract_info_dce.py +16 -9
  69. akshare-1.16.66/akshare/futures_derivative/futures_contract_info_gfex.py +72 -0
  70. {akshare-1.16.64 → akshare-1.16.66}/akshare/futures_derivative/futures_index_sina.py +25 -13
  71. akshare-1.16.66/akshare/fx/cons.py +23 -0
  72. {akshare-1.16.64 → akshare-1.16.66}/akshare/fx/fx_quote.py +1 -0
  73. {akshare-1.16.64 → akshare-1.16.66}/akshare/fx/fx_quote_baidu.py +2 -1
  74. {akshare-1.16.64 → akshare-1.16.66}/akshare/hf/__init__.py +1 -1
  75. {akshare-1.16.64 → akshare-1.16.66}/akshare/hf/hf_sp500.py +8 -7
  76. {akshare-1.16.64 → akshare-1.16.66}/akshare/index/index_eri.py +1 -0
  77. {akshare-1.16.64 → akshare-1.16.66}/akshare/index/index_global_em.py +0 -1
  78. {akshare-1.16.64 → akshare-1.16.66}/akshare/index/index_kq_fz.py +17 -14
  79. {akshare-1.16.64 → akshare-1.16.66}/akshare/index/index_kq_ss.py +1 -0
  80. {akshare-1.16.64 → akshare-1.16.66}/akshare/index/index_stock_hk.py +0 -1
  81. {akshare-1.16.64 → akshare-1.16.66}/akshare/index/index_stock_zh.py +0 -3
  82. {akshare-1.16.64 → akshare-1.16.66}/akshare/index/index_sugar.py +18 -4
  83. {akshare-1.16.64 → akshare-1.16.66}/akshare/index/index_zh_em.py +0 -15
  84. {akshare-1.16.64 → akshare-1.16.66}/akshare/interest_rate/interbank_rate_em.py +0 -1
  85. {akshare-1.16.64 → akshare-1.16.66}/akshare/movie/jm.js +0 -1
  86. {akshare-1.16.64 → akshare-1.16.66}/akshare/news/__init__.py +1 -1
  87. {akshare-1.16.64 → akshare-1.16.66}/akshare/news/news_stock.py +0 -1
  88. {akshare-1.16.64 → akshare-1.16.66}/akshare/option/option_commodity_sina.py +22 -26
  89. {akshare-1.16.64 → akshare-1.16.66}/akshare/option/option_daily_stats_sse_szse.py +0 -1
  90. {akshare-1.16.64 → akshare-1.16.66}/akshare/option/option_em.py +0 -1
  91. {akshare-1.16.64 → akshare-1.16.66}/akshare/option/option_lhb_em.py +0 -1
  92. {akshare-1.16.64 → akshare-1.16.66}/akshare/option/option_risk_indicator_sse.py +0 -1
  93. {akshare-1.16.64 → akshare-1.16.66}/akshare/other/__init__.py +1 -1
  94. {akshare-1.16.64 → akshare-1.16.66}/akshare/pro/client.py +6 -4
  95. akshare-1.16.66/akshare/pro/cons.py +9 -0
  96. {akshare-1.16.64 → akshare-1.16.66}/akshare/pro/data_pro.py +6 -5
  97. {akshare-1.16.64 → akshare-1.16.66}/akshare/qhkc/qhkc_api.py +63 -21
  98. {akshare-1.16.64 → akshare-1.16.66}/akshare/qhkc_web/qhkc_fund.py +1 -0
  99. {akshare-1.16.64 → akshare-1.16.66}/akshare/qhkc_web/qhkc_index.py +1 -0
  100. {akshare-1.16.64 → akshare-1.16.66}/akshare/qhkc_web/qhkc_tool.py +55 -54
  101. {akshare-1.16.64 → akshare-1.16.66}/akshare/rate/__init__.py +1 -1
  102. {akshare-1.16.64 → akshare-1.16.66}/akshare/rate/repo_rate.py +36 -32
  103. {akshare-1.16.64 → akshare-1.16.66}/akshare/reits/__init__.py +1 -1
  104. {akshare-1.16.64 → akshare-1.16.66}/akshare/reits/reits_basic.py +44 -2
  105. {akshare-1.16.64 → akshare-1.16.66}/akshare/sport/__init__.py +1 -1
  106. {akshare-1.16.64 → akshare-1.16.66}/akshare/sport/sport_olympic.py +1 -0
  107. {akshare-1.16.64 → akshare-1.16.66}/akshare/spot/__init__.py +1 -1
  108. {akshare-1.16.64 → akshare-1.16.66}/akshare/stock/cons.py +19 -12
  109. {akshare-1.16.64 → akshare-1.16.66}/akshare/stock/stock_board_concept_em.py +0 -6
  110. {akshare-1.16.64 → akshare-1.16.66}/akshare/stock/stock_board_industry_em.py +0 -6
  111. {akshare-1.16.64 → akshare-1.16.66}/akshare/stock/stock_dzjy_em.py +1 -1
  112. {akshare-1.16.64 → akshare-1.16.66}/akshare/stock/stock_fund_em.py +0 -2
  113. {akshare-1.16.64 → akshare-1.16.66}/akshare/stock/stock_fund_hold.py +1 -2
  114. {akshare-1.16.64 → akshare-1.16.66}/akshare/stock/stock_gsrl_em.py +1 -0
  115. {akshare-1.16.64 → akshare-1.16.66}/akshare/stock/stock_hk_famous.py +0 -1
  116. {akshare-1.16.64 → akshare-1.16.66}/akshare/stock/stock_hk_fhpx_ths.py +2 -1
  117. {akshare-1.16.64 → akshare-1.16.66}/akshare/stock/stock_hk_hot_rank_em.py +1 -0
  118. {akshare-1.16.64 → akshare-1.16.66}/akshare/stock/stock_hold_control_em.py +0 -2
  119. {akshare-1.16.64 → akshare-1.16.66}/akshare/stock/stock_hot_up_em.py +4 -1
  120. {akshare-1.16.64 → akshare-1.16.66}/akshare/stock/stock_hsgt_em.py +0 -2
  121. {akshare-1.16.64 → akshare-1.16.66}/akshare/stock/stock_industry.py +1 -0
  122. {akshare-1.16.64 → akshare-1.16.66}/akshare/stock/stock_info.py +0 -2
  123. {akshare-1.16.64 → akshare-1.16.66}/akshare/stock/stock_info_em.py +0 -1
  124. {akshare-1.16.64 → akshare-1.16.66}/akshare/stock/stock_repurchase_em.py +7 -2
  125. {akshare-1.16.64 → akshare-1.16.66}/akshare/stock/stock_share_hold.py +0 -1
  126. {akshare-1.16.64 → akshare-1.16.66}/akshare/stock/stock_stop.py +0 -1
  127. {akshare-1.16.64 → akshare-1.16.66}/akshare/stock/stock_summary.py +0 -2
  128. {akshare-1.16.64 → akshare-1.16.66}/akshare/stock/stock_us_famous.py +0 -1
  129. {akshare-1.16.64 → akshare-1.16.66}/akshare/stock/stock_us_js.py +3 -2
  130. {akshare-1.16.64 → akshare-1.16.66}/akshare/stock/stock_us_pink.py +0 -1
  131. {akshare-1.16.64 → akshare-1.16.66}/akshare/stock/stock_weibo_nlp.py +18 -20
  132. {akshare-1.16.64 → akshare-1.16.66}/akshare/stock/stock_zh_a_special.py +0 -3
  133. {akshare-1.16.64 → akshare-1.16.66}/akshare/stock/stock_zh_a_tick_tx.py +11 -3
  134. akshare-1.16.66/akshare/stock_a/__init__.py +0 -0
  135. {akshare-1.16.64 → akshare-1.16.66}/akshare/stock_a/stock_board_concept_name_em.py +0 -1
  136. {akshare-1.16.64 → akshare-1.16.66}/akshare/stock_a/stock_zh_a_spot.py +0 -1
  137. {akshare-1.16.64 → akshare-1.16.66}/akshare/stock_feature/cons.py +1 -0
  138. {akshare-1.16.64 → akshare-1.16.66}/akshare/stock_feature/stock_account_em.py +0 -1
  139. {akshare-1.16.64 → akshare-1.16.66}/akshare/stock_feature/stock_all_pb.py +2 -1
  140. {akshare-1.16.64 → akshare-1.16.66}/akshare/stock_feature/stock_analyst_em.py +0 -3
  141. {akshare-1.16.64 → akshare-1.16.66}/akshare/stock_feature/stock_buffett_index_lg.py +7 -6
  142. {akshare-1.16.64 → akshare-1.16.66}/akshare/stock_feature/stock_classify_sina.py +3 -6
  143. {akshare-1.16.64 → akshare-1.16.66}/akshare/stock_feature/stock_comment_em.py +0 -2
  144. {akshare-1.16.64 → akshare-1.16.66}/akshare/stock_feature/stock_congestion_lg.py +2 -1
  145. {akshare-1.16.64 → akshare-1.16.66}/akshare/stock_feature/stock_dxsyl_em.py +116 -71
  146. {akshare-1.16.64 → akshare-1.16.66}/akshare/stock_feature/stock_gdzjc_em.py +16 -5
  147. {akshare-1.16.64 → akshare-1.16.66}/akshare/stock_feature/stock_gxl_lg.py +3 -2
  148. {akshare-1.16.64 → akshare-1.16.66}/akshare/stock_feature/stock_hist_em.py +0 -20
  149. {akshare-1.16.64 → akshare-1.16.66}/akshare/stock_feature/stock_hist_tx.py +10 -8
  150. {akshare-1.16.64 → akshare-1.16.66}/akshare/stock_feature/stock_hot_xq.py +4 -6
  151. {akshare-1.16.64 → akshare-1.16.66}/akshare/stock_feature/stock_hsgt_em.py +0 -2
  152. {akshare-1.16.64 → akshare-1.16.66}/akshare/stock_feature/stock_hsgt_exchange_rate.py +0 -2
  153. {akshare-1.16.64 → akshare-1.16.66}/akshare/stock_feature/stock_hsgt_min_em.py +13 -16
  154. {akshare-1.16.64 → akshare-1.16.66}/akshare/stock_feature/stock_inner_trade_xq.py +0 -1
  155. {akshare-1.16.64 → akshare-1.16.66}/akshare/stock_feature/stock_lhb_em.py +0 -1
  156. {akshare-1.16.64 → akshare-1.16.66}/akshare/stock_feature/stock_margin_em.py +0 -1
  157. {akshare-1.16.64 → akshare-1.16.66}/akshare/stock_feature/stock_margin_sse.py +0 -2
  158. {akshare-1.16.64 → akshare-1.16.66}/akshare/stock_feature/stock_pankou_em.py +0 -2
  159. {akshare-1.16.64 → akshare-1.16.66}/akshare/stock_feature/stock_qsjy_em.py +13 -4
  160. {akshare-1.16.64 → akshare-1.16.66}/akshare/stock_feature/stock_research_report_em.py +0 -1
  161. {akshare-1.16.64 → akshare-1.16.66}/akshare/stock_feature/stock_yjyg_cninfo.py +4 -1
  162. {akshare-1.16.64 → akshare-1.16.66}/akshare/stock_feature/stock_yjyg_em.py +1 -1
  163. {akshare-1.16.64 → akshare-1.16.66}/akshare/stock_feature/stock_zh_vote_baidu.py +4 -1
  164. {akshare-1.16.64 → akshare-1.16.66}/akshare/stock_feature/stock_ztb_em.py +0 -6
  165. {akshare-1.16.64 → akshare-1.16.66}/akshare/stock_fundamental/__init__.py +1 -1
  166. {akshare-1.16.64 → akshare-1.16.66}/akshare/stock_fundamental/stock_hold.py +26 -17
  167. {akshare-1.16.64 → akshare-1.16.66}/akshare/stock_fundamental/stock_ipo_declare.py +1 -0
  168. {akshare-1.16.64 → akshare-1.16.66}/akshare/stock_fundamental/stock_kcb_detail_sse.py +10 -10
  169. akshare-1.16.66/akshare/stock_fundamental/stock_kcb_sse.py +56 -0
  170. akshare-1.16.66/akshare/stock_fundamental/stock_profit_forecast_hk_etnet.py +126 -0
  171. {akshare-1.16.64 → akshare-1.16.66}/akshare/stock_fundamental/stock_recommend.py +20 -4
  172. {akshare-1.16.64 → akshare-1.16.66}/akshare/utils/demjson.py +2007 -1336
  173. {akshare-1.16.64 → akshare-1.16.66}/akshare/utils/token_process.py +6 -5
  174. {akshare-1.16.64 → akshare-1.16.66}/akshare.egg-info/PKG-INFO +12 -35
  175. akshare-1.16.64/akshare/bond/bond_summary.py +0 -91
  176. akshare-1.16.64/akshare/fund/fund_aum_em.py +0 -92
  177. akshare-1.16.64/akshare/futures_derivative/cons.py +0 -145
  178. akshare-1.16.64/akshare/futures_derivative/futures_contract_info_cffex.py +0 -86
  179. akshare-1.16.64/akshare/futures_derivative/futures_contract_info_gfex.py +0 -60
  180. akshare-1.16.64/akshare/fx/cons.py +0 -18
  181. akshare-1.16.64/akshare/pro/__init__.py +0 -1
  182. akshare-1.16.64/akshare/pro/cons.py +0 -8
  183. akshare-1.16.64/akshare/stock_fundamental/stock_kcb_sse.py +0 -55
  184. akshare-1.16.64/akshare/stock_fundamental/stock_profit_forecast_hk_etnet.py +0 -103
  185. {akshare-1.16.64 → akshare-1.16.66}/LICENSE +0 -0
  186. {akshare-1.16.64 → akshare-1.16.66}/akshare/air/__init__.py +0 -0
  187. {akshare-1.16.64 → akshare-1.16.66}/akshare/air/air_hebei.py +0 -0
  188. {akshare-1.16.64 → akshare-1.16.66}/akshare/air/air_zhenqi.py +0 -0
  189. {akshare-1.16.64 → akshare-1.16.66}/akshare/air/sunrise_tad.py +0 -0
  190. {akshare-1.16.64 → akshare-1.16.66}/akshare/article/__init__.py +0 -0
  191. {akshare-1.16.64 → akshare-1.16.66}/akshare/bank/__init__.py +0 -0
  192. {akshare-1.16.64 → akshare-1.16.66}/akshare/bank/bank_cbirc_2020.py +0 -0
  193. {akshare-1.16.64 → akshare-1.16.66}/akshare/bank/cons.py +0 -0
  194. {akshare-1.16.64 → akshare-1.16.66}/akshare/bond/__init__.py +0 -0
  195. {akshare-1.16.64 → akshare-1.16.66}/akshare/bond/bond_cb_ths.py +0 -0
  196. {akshare-1.16.64 → akshare-1.16.66}/akshare/bond/bond_china.py +0 -0
  197. {akshare-1.16.64 → akshare-1.16.66}/akshare/bond/bond_china_money.py +0 -0
  198. {akshare-1.16.64 → akshare-1.16.66}/akshare/bond/bond_convert.py +0 -0
  199. {akshare-1.16.64 → akshare-1.16.66}/akshare/bond/bond_info_cm.py +0 -0
  200. {akshare-1.16.64 → akshare-1.16.66}/akshare/bond/bond_issue_cninfo.py +0 -0
  201. {akshare-1.16.64 → akshare-1.16.66}/akshare/bond/bond_nafmii.py +0 -0
  202. {akshare-1.16.64 → akshare-1.16.66}/akshare/bond/bond_zh_sina.py +0 -0
  203. {akshare-1.16.64 → akshare-1.16.66}/akshare/cal/__init__.py +0 -0
  204. {akshare-1.16.64 → akshare-1.16.66}/akshare/cal/rv.py +0 -0
  205. {akshare-1.16.64 → akshare-1.16.66}/akshare/cost/__init__.py +0 -0
  206. {akshare-1.16.64 → akshare-1.16.66}/akshare/cost/cost_living.py +0 -0
  207. {akshare-1.16.64 → akshare-1.16.66}/akshare/currency/__init__.py +0 -0
  208. {akshare-1.16.64 → akshare-1.16.66}/akshare/currency/currency_safe.py +0 -0
  209. {akshare-1.16.64 → akshare-1.16.66}/akshare/data/crypto_info.zip +0 -0
  210. {akshare-1.16.64 → akshare-1.16.66}/akshare/data/ths.js +0 -0
  211. {akshare-1.16.64 → akshare-1.16.66}/akshare/datasets.py +0 -0
  212. {akshare-1.16.64 → akshare-1.16.66}/akshare/economic/__init__.py +0 -0
  213. {akshare-1.16.64 → akshare-1.16.66}/akshare/economic/macro_bank.py +0 -0
  214. {akshare-1.16.64 → akshare-1.16.66}/akshare/economic/macro_china_nbs.py +0 -0
  215. {akshare-1.16.64 → akshare-1.16.66}/akshare/economic/macro_constitute.py +0 -0
  216. {akshare-1.16.64 → akshare-1.16.66}/akshare/economic/macro_finance_ths.py +0 -0
  217. {akshare-1.16.64 → akshare-1.16.66}/akshare/economic/macro_info_ws.py +0 -0
  218. {akshare-1.16.64 → akshare-1.16.66}/akshare/economic/marco_cnbs.py +0 -0
  219. {akshare-1.16.64 → akshare-1.16.66}/akshare/energy/__init__.py +0 -0
  220. {akshare-1.16.64 → akshare-1.16.66}/akshare/event/__init__.py +0 -0
  221. {akshare-1.16.64 → akshare-1.16.66}/akshare/event/migration.py +0 -0
  222. {akshare-1.16.64 → akshare-1.16.66}/akshare/exceptions.py +0 -0
  223. {akshare-1.16.64 → akshare-1.16.66}/akshare/file_fold/__init__.py +0 -0
  224. {akshare-1.16.64 → akshare-1.16.66}/akshare/file_fold/calendar.json +0 -0
  225. {akshare-1.16.64 → akshare-1.16.66}/akshare/forex/__init__.py +0 -0
  226. {akshare-1.16.64 → akshare-1.16.66}/akshare/forex/cons.py +0 -0
  227. {akshare-1.16.64 → akshare-1.16.66}/akshare/fortune/__init__.py +0 -0
  228. {akshare-1.16.64 → akshare-1.16.66}/akshare/fortune/fortune_500.py +0 -0
  229. {akshare-1.16.64 → akshare-1.16.66}/akshare/fund/__init__.py +0 -0
  230. {akshare-1.16.64 → akshare-1.16.66}/akshare/fund/fund_amac.py +0 -0
  231. {akshare-1.16.64 → akshare-1.16.66}/akshare/fund/fund_etf_sina.py +0 -0
  232. {akshare-1.16.64 → akshare-1.16.66}/akshare/fund/fund_etf_ths.py +0 -0
  233. {akshare-1.16.64 → akshare-1.16.66}/akshare/fund/fund_fee_em.py +0 -0
  234. {akshare-1.16.64 → akshare-1.16.66}/akshare/fund/fund_report_cninfo.py +0 -0
  235. {akshare-1.16.64 → akshare-1.16.66}/akshare/fund/fund_scale_sina.py +0 -0
  236. {akshare-1.16.64 → akshare-1.16.66}/akshare/fund/fund_xq.py +0 -0
  237. {akshare-1.16.64 → akshare-1.16.66}/akshare/futures/__init__.py +0 -0
  238. {akshare-1.16.64 → akshare-1.16.66}/akshare/futures/cons.py +0 -0
  239. {akshare-1.16.64 → akshare-1.16.66}/akshare/futures/cot.py +0 -0
  240. {akshare-1.16.64 → akshare-1.16.66}/akshare/futures/futures_basis.py +0 -0
  241. {akshare-1.16.64 → akshare-1.16.66}/akshare/futures/futures_comm_ctp.py +0 -0
  242. {akshare-1.16.64 → akshare-1.16.66}/akshare/futures/futures_comm_qihuo.py +0 -0
  243. {akshare-1.16.64 → akshare-1.16.66}/akshare/futures/futures_daily_bar.py +0 -0
  244. {akshare-1.16.64 → akshare-1.16.66}/akshare/futures/futures_foreign.py +0 -0
  245. {akshare-1.16.64 → akshare-1.16.66}/akshare/futures/futures_hf_em.py +0 -0
  246. {akshare-1.16.64 → akshare-1.16.66}/akshare/futures/futures_hist_em.py +0 -0
  247. {akshare-1.16.64 → akshare-1.16.66}/akshare/futures/futures_hq_sina.py +0 -0
  248. {akshare-1.16.64 → akshare-1.16.66}/akshare/futures/futures_index_ccidx.py +0 -0
  249. {akshare-1.16.64 → akshare-1.16.66}/akshare/futures/futures_inventory_99.py +0 -0
  250. {akshare-1.16.64 → akshare-1.16.66}/akshare/futures/futures_news_shmet.py +0 -0
  251. {akshare-1.16.64 → akshare-1.16.66}/akshare/futures/futures_roll_yield.py +0 -0
  252. {akshare-1.16.64 → akshare-1.16.66}/akshare/futures/futures_rule_em.py +0 -0
  253. {akshare-1.16.64 → akshare-1.16.66}/akshare/futures/futures_spot_stock_em.py +0 -0
  254. {akshare-1.16.64 → akshare-1.16.66}/akshare/futures/futures_to_spot.py +0 -0
  255. {akshare-1.16.64 → akshare-1.16.66}/akshare/futures/futures_warehouse_receipt.py +0 -0
  256. {akshare-1.16.64 → akshare-1.16.66}/akshare/futures/futures_zh_sina.py +0 -0
  257. {akshare-1.16.64 → akshare-1.16.66}/akshare/futures/symbol_var.py +0 -0
  258. {akshare-1.16.64 → akshare-1.16.66}/akshare/futures_derivative/__init__.py +0 -0
  259. {akshare-1.16.64 → akshare-1.16.66}/akshare/futures_derivative/futures_contract_info_czce.py +0 -0
  260. {akshare-1.16.64 → akshare-1.16.66}/akshare/futures_derivative/futures_contract_info_ine.py +0 -0
  261. {akshare-1.16.64 → akshare-1.16.66}/akshare/futures_derivative/futures_contract_info_shfe.py +0 -0
  262. {akshare-1.16.64 → akshare-1.16.66}/akshare/futures_derivative/futures_cot_sina.py +0 -0
  263. {akshare-1.16.64 → akshare-1.16.66}/akshare/futures_derivative/futures_hog.py +0 -0
  264. {akshare-1.16.64 → akshare-1.16.66}/akshare/futures_derivative/futures_spot_sys.py +0 -0
  265. {akshare-1.16.64 → akshare-1.16.66}/akshare/fx/__init__.py +0 -0
  266. {akshare-1.16.64 → akshare-1.16.66}/akshare/fx/currency_investing.py +0 -0
  267. {akshare-1.16.64 → akshare-1.16.66}/akshare/index/__init__.py +0 -0
  268. {akshare-1.16.64 → akshare-1.16.66}/akshare/index/cons.py +0 -0
  269. {akshare-1.16.64 → akshare-1.16.66}/akshare/index/index_cflp.py +0 -0
  270. {akshare-1.16.64 → akshare-1.16.66}/akshare/index/index_cni.py +0 -0
  271. {akshare-1.16.64 → akshare-1.16.66}/akshare/index/index_cons.py +0 -0
  272. {akshare-1.16.64 → akshare-1.16.66}/akshare/index/index_cx.py +0 -0
  273. {akshare-1.16.64 → akshare-1.16.66}/akshare/index/index_drewry.py +0 -0
  274. {akshare-1.16.64 → akshare-1.16.66}/akshare/index/index_global_sina.py +0 -0
  275. {akshare-1.16.64 → akshare-1.16.66}/akshare/index/index_hog.py +0 -0
  276. {akshare-1.16.64 → akshare-1.16.66}/akshare/index/index_option_qvix.py +0 -0
  277. {akshare-1.16.64 → akshare-1.16.66}/akshare/index/index_research_fund_sw.py +0 -0
  278. {akshare-1.16.64 → akshare-1.16.66}/akshare/index/index_research_sw.py +0 -0
  279. {akshare-1.16.64 → akshare-1.16.66}/akshare/index/index_spot.py +0 -0
  280. {akshare-1.16.64 → akshare-1.16.66}/akshare/index/index_stock_us_sina.py +0 -0
  281. {akshare-1.16.64 → akshare-1.16.66}/akshare/index/index_stock_zh_csindex.py +0 -0
  282. {akshare-1.16.64 → akshare-1.16.66}/akshare/index/index_sw.py +0 -0
  283. {akshare-1.16.64 → akshare-1.16.66}/akshare/index/index_yw.py +0 -0
  284. {akshare-1.16.64 → akshare-1.16.66}/akshare/index/index_zh_a_scope.py +0 -0
  285. {akshare-1.16.64 → akshare-1.16.66}/akshare/interest_rate/__init__.py +0 -0
  286. {akshare-1.16.64 → akshare-1.16.66}/akshare/movie/__init__.py +0 -0
  287. {akshare-1.16.64 → akshare-1.16.66}/akshare/movie/artist_yien.py +0 -0
  288. {akshare-1.16.64 → akshare-1.16.66}/akshare/movie/movie_yien.py +0 -0
  289. {akshare-1.16.64 → akshare-1.16.66}/akshare/movie/video_yien.py +0 -0
  290. {akshare-1.16.64 → akshare-1.16.66}/akshare/news/news_baidu.py +0 -0
  291. {akshare-1.16.64 → akshare-1.16.66}/akshare/news/news_cctv.py +0 -0
  292. {akshare-1.16.64 → akshare-1.16.66}/akshare/nlp/__init__.py +0 -0
  293. {akshare-1.16.64 → akshare-1.16.66}/akshare/nlp/nlp_interface.py +0 -0
  294. {akshare-1.16.64 → akshare-1.16.66}/akshare/option/__init__.py +0 -0
  295. {akshare-1.16.64 → akshare-1.16.66}/akshare/option/cons.py +0 -0
  296. {akshare-1.16.64 → akshare-1.16.66}/akshare/option/option_comm_qihuo.py +0 -0
  297. {akshare-1.16.64 → akshare-1.16.66}/akshare/option/option_commodity.py +0 -0
  298. {akshare-1.16.64 → akshare-1.16.66}/akshare/option/option_czce.py +0 -0
  299. {akshare-1.16.64 → akshare-1.16.66}/akshare/option/option_finance.py +0 -0
  300. {akshare-1.16.64 → akshare-1.16.66}/akshare/option/option_finance_sina.py +0 -0
  301. {akshare-1.16.64 → akshare-1.16.66}/akshare/option/option_premium_analysis_em.py +0 -0
  302. {akshare-1.16.64 → akshare-1.16.66}/akshare/option/option_risk_analysis_em.py +0 -0
  303. {akshare-1.16.64 → akshare-1.16.66}/akshare/option/option_value_analysis_em.py +0 -0
  304. {akshare-1.16.64 → akshare-1.16.66}/akshare/other/other_car_cpca.py +0 -0
  305. {akshare-1.16.64 → akshare-1.16.66}/akshare/other/other_car_gasgoo.py +0 -0
  306. {akshare-1.16.64/akshare/qdii → akshare-1.16.66/akshare/pro}/__init__.py +0 -0
  307. {akshare-1.16.64/akshare/stock_a → akshare-1.16.66/akshare/qdii}/__init__.py +0 -0
  308. {akshare-1.16.64 → akshare-1.16.66}/akshare/qdii/qdii_jsl.py +0 -0
  309. {akshare-1.16.64 → akshare-1.16.66}/akshare/qhkc/__init__.py +0 -0
  310. {akshare-1.16.64 → akshare-1.16.66}/akshare/qhkc_web/__init__.py +0 -0
  311. {akshare-1.16.64 → akshare-1.16.66}/akshare/request.py +0 -0
  312. {akshare-1.16.64 → akshare-1.16.66}/akshare/spot/spot_hog_soozhu.py +0 -0
  313. {akshare-1.16.64 → akshare-1.16.66}/akshare/spot/spot_price_qh.py +0 -0
  314. {akshare-1.16.64 → akshare-1.16.66}/akshare/spot/spot_sge.py +0 -0
  315. {akshare-1.16.64 → akshare-1.16.66}/akshare/stock/__init__.py +0 -0
  316. {akshare-1.16.64 → akshare-1.16.66}/akshare/stock/stock_allotment_cninfo.py +0 -0
  317. {akshare-1.16.64 → akshare-1.16.66}/akshare/stock/stock_ask_bid_em.py +0 -0
  318. {akshare-1.16.64 → akshare-1.16.66}/akshare/stock/stock_cg_equity_mortgage.py +0 -0
  319. {akshare-1.16.64 → akshare-1.16.66}/akshare/stock/stock_cg_guarantee.py +0 -0
  320. {akshare-1.16.64 → akshare-1.16.66}/akshare/stock/stock_cg_lawsuit.py +0 -0
  321. {akshare-1.16.64 → akshare-1.16.66}/akshare/stock/stock_dividend_cninfo.py +0 -0
  322. {akshare-1.16.64 → akshare-1.16.66}/akshare/stock/stock_hk_sina.py +0 -0
  323. {akshare-1.16.64 → akshare-1.16.66}/akshare/stock/stock_hold_control_cninfo.py +0 -0
  324. {akshare-1.16.64 → akshare-1.16.66}/akshare/stock/stock_hold_num_cninfo.py +0 -0
  325. {akshare-1.16.64 → akshare-1.16.66}/akshare/stock/stock_hot_rank_em.py +0 -0
  326. {akshare-1.16.64 → akshare-1.16.66}/akshare/stock/stock_hot_search_baidu.py +0 -0
  327. {akshare-1.16.64 → akshare-1.16.66}/akshare/stock/stock_industry_cninfo.py +0 -0
  328. {akshare-1.16.64 → akshare-1.16.66}/akshare/stock/stock_industry_pe_cninfo.py +0 -0
  329. {akshare-1.16.64 → akshare-1.16.66}/akshare/stock/stock_industry_sw.py +0 -0
  330. {akshare-1.16.64 → akshare-1.16.66}/akshare/stock/stock_intraday_em.py +0 -0
  331. {akshare-1.16.64 → akshare-1.16.66}/akshare/stock/stock_intraday_sina.py +0 -0
  332. {akshare-1.16.64 → akshare-1.16.66}/akshare/stock/stock_ipo_summary_cninfo.py +0 -0
  333. {akshare-1.16.64 → akshare-1.16.66}/akshare/stock/stock_new_cninfo.py +0 -0
  334. {akshare-1.16.64 → akshare-1.16.66}/akshare/stock/stock_news_cx.py +0 -0
  335. {akshare-1.16.64 → akshare-1.16.66}/akshare/stock/stock_profile_cninfo.py +0 -0
  336. {akshare-1.16.64 → akshare-1.16.66}/akshare/stock/stock_rank_forecast.py +0 -0
  337. {akshare-1.16.64 → akshare-1.16.66}/akshare/stock/stock_share_changes_cninfo.py +0 -0
  338. {akshare-1.16.64 → akshare-1.16.66}/akshare/stock/stock_us_sina.py +0 -0
  339. {akshare-1.16.64 → akshare-1.16.66}/akshare/stock/stock_xq.py +0 -0
  340. {akshare-1.16.64 → akshare-1.16.66}/akshare/stock/stock_zh_a_sina.py +0 -0
  341. {akshare-1.16.64 → akshare-1.16.66}/akshare/stock/stock_zh_ah_tx.py +0 -0
  342. {akshare-1.16.64 → akshare-1.16.66}/akshare/stock/stock_zh_b_sina.py +0 -0
  343. {akshare-1.16.64 → akshare-1.16.66}/akshare/stock/stock_zh_kcb_report.py +0 -0
  344. {akshare-1.16.64 → akshare-1.16.66}/akshare/stock/stock_zh_kcb_sina.py +0 -0
  345. {akshare-1.16.64 → akshare-1.16.66}/akshare/stock_a/stock_individual_fund_flow_rank.py +0 -0
  346. {akshare-1.16.64 → akshare-1.16.66}/akshare/stock_feature/__init__.py +0 -0
  347. {akshare-1.16.64 → akshare-1.16.66}/akshare/stock_feature/stock_a_below_net_asset_statistics.py +0 -0
  348. {akshare-1.16.64 → akshare-1.16.66}/akshare/stock_feature/stock_a_high_low.py +0 -0
  349. {akshare-1.16.64 → akshare-1.16.66}/akshare/stock_feature/stock_a_indicator.py +0 -0
  350. {akshare-1.16.64 → akshare-1.16.66}/akshare/stock_feature/stock_a_pe_and_pb.py +0 -0
  351. {akshare-1.16.64 → akshare-1.16.66}/akshare/stock_feature/stock_board_concept_ths.py +0 -0
  352. {akshare-1.16.64 → akshare-1.16.66}/akshare/stock_feature/stock_board_industry_ths.py +0 -0
  353. {akshare-1.16.64 → akshare-1.16.66}/akshare/stock_feature/stock_concept_futu.py +0 -0
  354. {akshare-1.16.64 → akshare-1.16.66}/akshare/stock_feature/stock_cyq_em.py +0 -0
  355. {akshare-1.16.64 → akshare-1.16.66}/akshare/stock_feature/stock_disclosure_cninfo.py +0 -0
  356. {akshare-1.16.64 → akshare-1.16.66}/akshare/stock_feature/stock_ebs_lg.py +0 -0
  357. {akshare-1.16.64 → akshare-1.16.66}/akshare/stock_feature/stock_esg_sina.py +0 -0
  358. {akshare-1.16.64 → akshare-1.16.66}/akshare/stock_feature/stock_fhps_em.py +0 -0
  359. {akshare-1.16.64 → akshare-1.16.66}/akshare/stock_feature/stock_fhps_ths.py +0 -0
  360. {akshare-1.16.64 → akshare-1.16.66}/akshare/stock_feature/stock_fund_flow.py +0 -0
  361. {akshare-1.16.64 → akshare-1.16.66}/akshare/stock_feature/stock_gddh_em.py +0 -0
  362. {akshare-1.16.64 → akshare-1.16.66}/akshare/stock_feature/stock_gdfx_em.py +0 -0
  363. {akshare-1.16.64 → akshare-1.16.66}/akshare/stock_feature/stock_gdhs.py +0 -0
  364. {akshare-1.16.64 → akshare-1.16.66}/akshare/stock_feature/stock_gpzy_em.py +0 -0
  365. {akshare-1.16.64 → akshare-1.16.66}/akshare/stock_feature/stock_hk_valuation_baidu.py +0 -0
  366. {akshare-1.16.64 → akshare-1.16.66}/akshare/stock_feature/stock_info.py +0 -0
  367. {akshare-1.16.64 → akshare-1.16.66}/akshare/stock_feature/stock_irm_cninfo.py +0 -0
  368. {akshare-1.16.64 → akshare-1.16.66}/akshare/stock_feature/stock_jgdy_em.py +0 -0
  369. {akshare-1.16.64 → akshare-1.16.66}/akshare/stock_feature/stock_lh_yybpm.py +0 -0
  370. {akshare-1.16.64 → akshare-1.16.66}/akshare/stock_feature/stock_lhb_sina.py +0 -0
  371. {akshare-1.16.64 → akshare-1.16.66}/akshare/stock_feature/stock_margin_szse.py +0 -0
  372. {akshare-1.16.64 → akshare-1.16.66}/akshare/stock_feature/stock_market_legu.py +0 -0
  373. {akshare-1.16.64 → akshare-1.16.66}/akshare/stock_feature/stock_report_em.py +0 -0
  374. {akshare-1.16.64 → akshare-1.16.66}/akshare/stock_feature/stock_sns_sseinfo.py +0 -0
  375. {akshare-1.16.64 → akshare-1.16.66}/akshare/stock_feature/stock_sy_em.py +0 -0
  376. {akshare-1.16.64 → akshare-1.16.66}/akshare/stock_feature/stock_technology_ths.py +0 -0
  377. {akshare-1.16.64 → akshare-1.16.66}/akshare/stock_feature/stock_tfp_em.py +0 -0
  378. {akshare-1.16.64 → akshare-1.16.66}/akshare/stock_feature/stock_three_report_em.py +0 -0
  379. {akshare-1.16.64 → akshare-1.16.66}/akshare/stock_feature/stock_ttm_lyr.py +0 -0
  380. {akshare-1.16.64 → akshare-1.16.66}/akshare/stock_feature/stock_value_em.py +0 -0
  381. {akshare-1.16.64 → akshare-1.16.66}/akshare/stock_feature/stock_wencai.py +0 -0
  382. {akshare-1.16.64 → akshare-1.16.66}/akshare/stock_feature/stock_yjbb_em.py +0 -0
  383. {akshare-1.16.64 → akshare-1.16.66}/akshare/stock_feature/stock_yzxdr_em.py +0 -0
  384. {akshare-1.16.64 → akshare-1.16.66}/akshare/stock_feature/stock_zdhtmx_em.py +0 -0
  385. {akshare-1.16.64 → akshare-1.16.66}/akshare/stock_feature/stock_zf_pg.py +0 -0
  386. {akshare-1.16.64 → akshare-1.16.66}/akshare/stock_feature/stock_zh_valuation_baidu.py +0 -0
  387. {akshare-1.16.64 → akshare-1.16.66}/akshare/stock_feature/ths.js +0 -0
  388. {akshare-1.16.64 → akshare-1.16.66}/akshare/stock_fundamental/stock_basic_info_xq.py +0 -0
  389. {akshare-1.16.64 → akshare-1.16.66}/akshare/stock_fundamental/stock_finance_hk_em.py +0 -0
  390. {akshare-1.16.64 → akshare-1.16.66}/akshare/stock_fundamental/stock_finance_sina.py +0 -0
  391. {akshare-1.16.64 → akshare-1.16.66}/akshare/stock_fundamental/stock_finance_ths.py +0 -0
  392. {akshare-1.16.64 → akshare-1.16.66}/akshare/stock_fundamental/stock_finance_us_em.py +0 -0
  393. {akshare-1.16.64 → akshare-1.16.66}/akshare/stock_fundamental/stock_mda_ym.py +0 -0
  394. {akshare-1.16.64 → akshare-1.16.66}/akshare/stock_fundamental/stock_notice.py +0 -0
  395. {akshare-1.16.64 → akshare-1.16.66}/akshare/stock_fundamental/stock_profit_forecast_em.py +0 -0
  396. {akshare-1.16.64 → akshare-1.16.66}/akshare/stock_fundamental/stock_profit_forecast_ths.py +0 -0
  397. {akshare-1.16.64 → akshare-1.16.66}/akshare/stock_fundamental/stock_register_em.py +0 -0
  398. {akshare-1.16.64 → akshare-1.16.66}/akshare/stock_fundamental/stock_restricted_em.py +0 -0
  399. {akshare-1.16.64 → akshare-1.16.66}/akshare/stock_fundamental/stock_zygc.py +0 -0
  400. {akshare-1.16.64 → akshare-1.16.66}/akshare/stock_fundamental/stock_zyjs_ths.py +0 -0
  401. {akshare-1.16.64 → akshare-1.16.66}/akshare/tool/__init__.py +0 -0
  402. {akshare-1.16.64 → akshare-1.16.66}/akshare/tool/trade_date_hist.py +0 -0
  403. {akshare-1.16.64 → akshare-1.16.66}/akshare/utils/__init__.py +0 -0
  404. {akshare-1.16.64 → akshare-1.16.66}/akshare/utils/cons.py +0 -0
  405. {akshare-1.16.64 → akshare-1.16.66}/akshare/utils/context.py +0 -0
  406. {akshare-1.16.64 → akshare-1.16.66}/akshare/utils/func.py +0 -0
  407. {akshare-1.16.64 → akshare-1.16.66}/akshare/utils/multi_decrypt.py +0 -0
  408. {akshare-1.16.64 → akshare-1.16.66}/akshare/utils/tqdm.py +0 -0
  409. {akshare-1.16.64 → akshare-1.16.66}/akshare.egg-info/SOURCES.txt +0 -0
  410. {akshare-1.16.64 → akshare-1.16.66}/akshare.egg-info/dependency_links.txt +0 -0
  411. {akshare-1.16.64 → akshare-1.16.66}/akshare.egg-info/requires.txt +0 -0
  412. {akshare-1.16.64 → akshare-1.16.66}/akshare.egg-info/top_level.txt +0 -0
  413. {akshare-1.16.64 → akshare-1.16.66}/pyproject.toml +0 -0
  414. {akshare-1.16.64 → akshare-1.16.66}/setup.cfg +0 -0
  415. {akshare-1.16.64 → akshare-1.16.66}/setup.py +0 -0
  416. {akshare-1.16.64 → akshare-1.16.66}/tests/__init__.py +0 -0
  417. {akshare-1.16.64 → akshare-1.16.66}/tests/test_func.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: akshare
3
- Version: 1.16.64
3
+ Version: 1.16.66
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
@@ -53,16 +53,12 @@ Dynamic: requires-dist
53
53
  Dynamic: requires-python
54
54
  Dynamic: summary
55
55
 
56
- **欢迎加入专注于财经数据和量化投研的知识社区,获取《财经数据宝典》和《量化投研宝典》,其汇集了财经数据和量化投研的多年经验,
57
- 还独家分享了众多国内外财经数据源的使用和注意事项,请点击[了解更多](https://akshare.akfamily.xyz/learn.html)**。
56
+ **资源分享**:对于想了解更多财经数据与量化投研的小伙伴,推荐一个专注于财经数据和量化研究的知识社区。
57
+ 该社区提供相关文档和视频学习资源,汇集了各类财经数据源和量化投研工具的使用经验。
58
+ 有兴趣深入学习的朋友可点此[了解更多](https://t.zsxq.com/ZCxUG),也推荐大家关注微信公众号【数据科学实战】。
58
59
 
59
- **量化投研视频课程:《PyBroker-入门及实战》已经上架!《PyBroker-进阶及实战》正在更新!**
60
-
61
- **更多视频教程已经发布:《AKShare-初阶-使用教学》、《AKShare-初阶-实战应用》、《AKShare-源码解析》、《开源项目巡礼》**,
62
- 详情请关注【数据科学实战】公众号,查看更多课程信息!
63
-
64
- **广告推广**:期魔方是一款非常专业本地化期货量化终端,无需部署或搭建环境,可直接调用及时和历史数据做回测实盘,
65
- 支持开箱即用的机器学习训练,策略投研、回测均免费,详情请[访问期魔方官网](https://qmfquant.com)。
60
+ **工具推荐**:期魔方是一款本地化期货量化分析工具,适合数据分析爱好者使用。无需复杂部署,支持数据分析和机器学习功能,研究功能免费开放。
61
+ 如需了解更多信息可访问[期魔方](https://qmfquant.com/)。
66
62
 
67
63
  ![AKShare Logo](https://github.com/akfamily/akshare/blob/main/assets/images/akshare_logo.jpg)
68
64
 
@@ -178,21 +174,6 @@ Output:
178
174
 
179
175
  ![KLine](https://jfds-1252952517.cos.ap-chengdu.myqcloud.com/akshare/readme/home/AAPL_candle.png)
180
176
 
181
- ## Communication
182
-
183
- Welcome to join the **数据科学实战** knowledge planet to learn more about quantitative investment,
184
- please visit [数据科学实战](https://akshare.akfamily.xyz/learn.html) for more information:
185
-
186
- <div>
187
- <img alt="data science" src="https://jfds-1252952517.cos.ap-chengdu.myqcloud.com/akshare/readme/qrcode/data_scientist.png">
188
- </div>
189
-
190
- Pay attention to **数据科学实战** WeChat Official Accounts to get the [AKShare](https://github.com/akfamily/akshare) updated info:
191
-
192
- <div>
193
- <img alt="ds" src="https://github.com/akfamily/akshare/blob/main/assets/images/ds.png">
194
- </div>
195
-
196
177
  ## Features
197
178
 
198
179
  - **Easy of use**: Just one line code to fetch the data;
@@ -268,6 +249,12 @@ Special thanks [FuShare](https://github.com/LowinLi/fushare) for the opportunity
268
249
 
269
250
  Special thanks [TuShare](https://github.com/waditu/tushare) for the opportunity of learning from the project;
270
251
 
252
+ Thanks for the data provided by [东方财富网站](http://data.eastmoney.com);
253
+
254
+ Thanks for the data provided by [新浪财经网站](https://finance.sina.com.cn);
255
+
256
+ Thanks for the data provided by [金十数据网站](https://www.jin10.com/);
257
+
271
258
  Thanks for the data provided by [生意社网站](http://www.100ppi.com/);
272
259
 
273
260
  Thanks for the data provided by [中国银行间市场交易商协会网站](http://www.nafmii.org.cn/);
@@ -276,12 +263,8 @@ Thanks for the data provided by [99期货网站](http://www.99qh.com/);
276
263
 
277
264
  Thanks for the data provided by [中国外汇交易中心暨全国银行间同业拆借中心网站](http://www.chinamoney.com.cn/chinese/);
278
265
 
279
- Thanks for the data provided by [金十数据网站](https://www.jin10.com/);
280
-
281
266
  Thanks for the data provided by [和讯财经网站](http://www.hexun.com/);
282
267
 
283
- Thanks for the data provided by [新浪财经网站](https://finance.sina.com.cn/);
284
-
285
268
  Thanks for the data provided by [DACHENG-XIU 网站](https://dachxiu.chicagobooth.edu/);
286
269
 
287
270
  Thanks for the data provided by [上海证券交易所网站](http://www.sse.com.cn/assortment/options/price/);
@@ -304,8 +287,6 @@ Thanks for the data provided by [Timeanddate 网站](https://www.timeanddate.com
304
287
 
305
288
  Thanks for the data provided by [河北省空气质量预报信息发布系统网站](http://110.249.223.67/publish/);
306
289
 
307
- Thanks for the data provided by [南华期货网站](http://www.nanhua.net/nhzc/varietytrend.html);
308
-
309
290
  Thanks for the data provided by [Economic Policy Uncertainty 网站](http://www.nanhua.net/nhzc/varietytrend.html);
310
291
 
311
292
  Thanks for the data provided by [申万指数网站](http://www.swsindex.com/idx0120.aspx?columnid=8832);
@@ -322,8 +303,6 @@ Thanks for the data provided by [北京市碳排放权电子交易平台网站](
322
303
 
323
304
  Thanks for the data provided by [国家金融与发展实验室网站](http://www.nifd.cn/);
324
305
 
325
- Thanks for the data provided by [东方财富网站](http://data.eastmoney.com/jgdy/);
326
-
327
306
  Thanks for the data provided by [义乌小商品指数网站](http://www.ywindex.com/Home/Product/index/);
328
307
 
329
308
  Thanks for the data provided by [百度迁徙网站](https://qianxi.baidu.com/?from=shoubai#city=0);
@@ -334,8 +313,6 @@ Thanks for the data provided by [Currencyscoop 网站](https://currencyscoop.com
334
313
 
335
314
  Thanks for the data provided by [新加坡交易所网站](https://www.sgx.com/zh-hans/research-education/derivatives);
336
315
 
337
- Thanks for the tutorials provided by [微信公众号: Python大咖谈](https://upload-images.jianshu.io/upload_images/3240514-61004f2c71be4a0b.png).
338
-
339
316
  ## Backer and Sponsor
340
317
 
341
318
  <a href="https://www.jetbrains.com/?from=albertandking/akshare" target="_blank">
@@ -1,13 +1,9 @@
1
- **欢迎加入专注于财经数据和量化投研的知识社区,获取《财经数据宝典》和《量化投研宝典》,其汇集了财经数据和量化投研的多年经验,
2
- 还独家分享了众多国内外财经数据源的使用和注意事项,请点击[了解更多](https://akshare.akfamily.xyz/learn.html)**。
1
+ **资源分享**:对于想了解更多财经数据与量化投研的小伙伴,推荐一个专注于财经数据和量化研究的知识社区。
2
+ 该社区提供相关文档和视频学习资源,汇集了各类财经数据源和量化投研工具的使用经验。
3
+ 有兴趣深入学习的朋友可点此[了解更多](https://t.zsxq.com/ZCxUG),也推荐大家关注微信公众号【数据科学实战】。
3
4
 
4
- **量化投研视频课程:《PyBroker-入门及实战》已经上架!《PyBroker-进阶及实战》正在更新!**
5
-
6
- **更多视频教程已经发布:《AKShare-初阶-使用教学》、《AKShare-初阶-实战应用》、《AKShare-源码解析》、《开源项目巡礼》**,
7
- 详情请关注【数据科学实战】公众号,查看更多课程信息!
8
-
9
- **广告推广**:期魔方是一款非常专业本地化期货量化终端,无需部署或搭建环境,可直接调用及时和历史数据做回测实盘,
10
- 支持开箱即用的机器学习训练,策略投研、回测均免费,详情请[访问期魔方官网](https://qmfquant.com)。
5
+ **工具推荐**:期魔方是一款本地化期货量化分析工具,适合数据分析爱好者使用。无需复杂部署,支持数据分析和机器学习功能,研究功能免费开放。
6
+ 如需了解更多信息可访问[期魔方](https://qmfquant.com/)。
11
7
 
12
8
  ![AKShare Logo](https://github.com/akfamily/akshare/blob/main/assets/images/akshare_logo.jpg)
13
9
 
@@ -123,21 +119,6 @@ Output:
123
119
 
124
120
  ![KLine](https://jfds-1252952517.cos.ap-chengdu.myqcloud.com/akshare/readme/home/AAPL_candle.png)
125
121
 
126
- ## Communication
127
-
128
- Welcome to join the **数据科学实战** knowledge planet to learn more about quantitative investment,
129
- please visit [数据科学实战](https://akshare.akfamily.xyz/learn.html) for more information:
130
-
131
- <div>
132
- <img alt="data science" src="https://jfds-1252952517.cos.ap-chengdu.myqcloud.com/akshare/readme/qrcode/data_scientist.png">
133
- </div>
134
-
135
- Pay attention to **数据科学实战** WeChat Official Accounts to get the [AKShare](https://github.com/akfamily/akshare) updated info:
136
-
137
- <div>
138
- <img alt="ds" src="https://github.com/akfamily/akshare/blob/main/assets/images/ds.png">
139
- </div>
140
-
141
122
  ## Features
142
123
 
143
124
  - **Easy of use**: Just one line code to fetch the data;
@@ -213,6 +194,12 @@ Special thanks [FuShare](https://github.com/LowinLi/fushare) for the opportunity
213
194
 
214
195
  Special thanks [TuShare](https://github.com/waditu/tushare) for the opportunity of learning from the project;
215
196
 
197
+ Thanks for the data provided by [东方财富网站](http://data.eastmoney.com);
198
+
199
+ Thanks for the data provided by [新浪财经网站](https://finance.sina.com.cn);
200
+
201
+ Thanks for the data provided by [金十数据网站](https://www.jin10.com/);
202
+
216
203
  Thanks for the data provided by [生意社网站](http://www.100ppi.com/);
217
204
 
218
205
  Thanks for the data provided by [中国银行间市场交易商协会网站](http://www.nafmii.org.cn/);
@@ -221,12 +208,8 @@ Thanks for the data provided by [99期货网站](http://www.99qh.com/);
221
208
 
222
209
  Thanks for the data provided by [中国外汇交易中心暨全国银行间同业拆借中心网站](http://www.chinamoney.com.cn/chinese/);
223
210
 
224
- Thanks for the data provided by [金十数据网站](https://www.jin10.com/);
225
-
226
211
  Thanks for the data provided by [和讯财经网站](http://www.hexun.com/);
227
212
 
228
- Thanks for the data provided by [新浪财经网站](https://finance.sina.com.cn/);
229
-
230
213
  Thanks for the data provided by [DACHENG-XIU 网站](https://dachxiu.chicagobooth.edu/);
231
214
 
232
215
  Thanks for the data provided by [上海证券交易所网站](http://www.sse.com.cn/assortment/options/price/);
@@ -249,8 +232,6 @@ Thanks for the data provided by [Timeanddate 网站](https://www.timeanddate.com
249
232
 
250
233
  Thanks for the data provided by [河北省空气质量预报信息发布系统网站](http://110.249.223.67/publish/);
251
234
 
252
- Thanks for the data provided by [南华期货网站](http://www.nanhua.net/nhzc/varietytrend.html);
253
-
254
235
  Thanks for the data provided by [Economic Policy Uncertainty 网站](http://www.nanhua.net/nhzc/varietytrend.html);
255
236
 
256
237
  Thanks for the data provided by [申万指数网站](http://www.swsindex.com/idx0120.aspx?columnid=8832);
@@ -267,8 +248,6 @@ Thanks for the data provided by [北京市碳排放权电子交易平台网站](
267
248
 
268
249
  Thanks for the data provided by [国家金融与发展实验室网站](http://www.nifd.cn/);
269
250
 
270
- Thanks for the data provided by [东方财富网站](http://data.eastmoney.com/jgdy/);
271
-
272
251
  Thanks for the data provided by [义乌小商品指数网站](http://www.ywindex.com/Home/Product/index/);
273
252
 
274
253
  Thanks for the data provided by [百度迁徙网站](https://qianxi.baidu.com/?from=shoubai#city=0);
@@ -279,8 +258,6 @@ Thanks for the data provided by [Currencyscoop 网站](https://currencyscoop.com
279
258
 
280
259
  Thanks for the data provided by [新加坡交易所网站](https://www.sgx.com/zh-hans/research-education/derivatives);
281
260
 
282
- Thanks for the tutorials provided by [微信公众号: Python大咖谈](https://upload-images.jianshu.io/upload_images/3240514-61004f2c71be4a0b.png).
283
-
284
261
  ## Backer and Sponsor
285
262
 
286
263
  <a href="https://www.jetbrains.com/?from=albertandking/akshare" target="_blank">
@@ -3073,9 +3073,11 @@ amac_manager_cancelled_info # 中国证券投资基金业协会-信息公示-诚
3073
3073
  1.16.62 fix: fix stock_gdfx_free_holding_change_em interface
3074
3074
  1.16.63 fix: fix stock_board_concept_name_ths interface
3075
3075
  1.16.64 add: add reits_hist_em interface
3076
+ 1.16.65 fix: fix stock_dzjy_yybph interface
3077
+ 1.16.66 fix: fix macro_cons_silver interface
3076
3078
  """
3077
3079
 
3078
- __version__ = "1.16.64"
3080
+ __version__ = "1.16.66"
3079
3081
  __author__ = "AKFamily"
3080
3082
 
3081
3083
  import sys
@@ -4,6 +4,7 @@
4
4
  Date: 2019/11/25 20:45
5
5
  Desc: 空气质量接口配置文件
6
6
  """
7
+
7
8
  city_chinese_list = [
8
9
  "北京",
9
10
  "重庆",
@@ -136,4 +136,4 @@ function decode_result(a) {
136
136
  var hexcase = 0,
137
137
  b64pad = "",
138
138
  chrsz = 8,
139
- appId = "a01901d3caba1f362d69474674ce477f";
139
+ appId = "a01901d3caba1f362d69474674ce477f";
@@ -4897,4 +4897,4 @@ CryptoJS.mode.ECB = function() {
4897
4897
  blockSize: 2
4898
4898
  });
4899
4899
  h.TripleDES = e._6(g)
4900
- })();
4900
+ })();
@@ -4,6 +4,7 @@
4
4
  Date: 2019/11/14 20:32
5
5
  Desc: 学术板块配置文件
6
6
  """
7
+
7
8
  # EPU
8
9
  epu_home_url = "http://www.policyuncertainty.com/index.html"
9
10
 
@@ -5,6 +5,7 @@ Date: 2024/1/20 22:00
5
5
  Desc: 经济政策不确定性指数
6
6
  https://www.policyuncertainty.com/index.html
7
7
  """
8
+
8
9
  import pandas as pd
9
10
 
10
11
 
@@ -28,7 +29,7 @@ def article_epu_index(symbol: str = "China") -> pd.DataFrame:
28
29
  symbol = "HK"
29
30
  epu_df = pd.read_excel(
30
31
  io=f"http://www.policyuncertainty.com/media/{symbol}_EPU_Data_Annotated.xlsx",
31
- engine="openpyxl"
32
+ engine="openpyxl",
32
33
  )
33
34
  return epu_df
34
35
  if symbol in ["Germany", "France", "Italy"]: # 欧洲
@@ -40,13 +41,13 @@ def article_epu_index(symbol: str = "China") -> pd.DataFrame:
40
41
  if symbol in ["Ireland", "Chile", "Colombia", "Netherlands", "Singapore", "Sweden"]:
41
42
  epu_df = pd.read_excel(
42
43
  io=f"http://www.policyuncertainty.com/media/{symbol}_Policy_Uncertainty_Data.xlsx",
43
- engine="openpyxl"
44
+ engine="openpyxl",
44
45
  )
45
46
  return epu_df
46
47
  if symbol == "Greece":
47
48
  epu_df = pd.read_excel(
48
49
  io=f"http://www.policyuncertainty.com/media/FKT_{symbol}_Policy_Uncertainty_Data.xlsx",
49
- engine="openpyxl"
50
+ engine="openpyxl",
50
51
  )
51
52
  return epu_df
52
53
  url = f"http://www.policyuncertainty.com/media/{symbol}_Policy_Uncertainty_Data.csv"
@@ -5,6 +5,7 @@ Date: 2024/1/20 22:30
5
5
  Desc: FF-data-library
6
6
  https://mba.tuck.dartmouth.edu/pages/faculty/ken.french/data_library.html
7
7
  """
8
+
8
9
  from io import StringIO
9
10
 
10
11
  import pandas as pd
@@ -23,26 +24,31 @@ def article_ff_crr() -> pd.DataFrame:
23
24
  res = requests.get(ff_home_url)
24
25
  # first table
25
26
  list_index = (
26
- pd.read_html(StringIO(res.text), header=0, index_col=0)[4].iloc[2, :].index.tolist()
27
+ pd.read_html(StringIO(res.text), header=0, index_col=0)[4]
28
+ .iloc[2, :]
29
+ .index.tolist()
27
30
  )
28
31
  list_0 = [
29
32
  item
30
33
  for item in pd.read_html(StringIO(res.text), header=0, index_col=0)[4]
31
- .iloc[0, :].iloc[0]
34
+ .iloc[0, :]
35
+ .iloc[0]
32
36
  .split(" ")
33
37
  if item != ""
34
38
  ]
35
39
  list_1 = [
36
40
  item
37
41
  for item in pd.read_html(StringIO(res.text), header=0, index_col=0)[4]
38
- .iloc[0, :].iloc[1]
42
+ .iloc[0, :]
43
+ .iloc[1]
39
44
  .split(" ")
40
45
  if item != ""
41
46
  ]
42
47
  list_2 = [
43
48
  item
44
49
  for item in pd.read_html(StringIO(res.text), header=0, index_col=0)[4]
45
- .iloc[0, :].iloc[2]
50
+ .iloc[0, :]
51
+ .iloc[2]
46
52
  .split(" ")
47
53
  if item != ""
48
54
  ]
@@ -63,26 +69,31 @@ def article_ff_crr() -> pd.DataFrame:
63
69
 
64
70
  # second table
65
71
  list_index = (
66
- pd.read_html(StringIO(res.text), header=0, index_col=0)[4].iloc[1, :].index.tolist()
72
+ pd.read_html(StringIO(res.text), header=0, index_col=0)[4]
73
+ .iloc[1, :]
74
+ .index.tolist()
67
75
  )
68
76
  list_0 = [
69
77
  item
70
78
  for item in pd.read_html(StringIO(res.text), header=0, index_col=0)[4]
71
- .iloc[1, :].iloc[0]
79
+ .iloc[1, :]
80
+ .iloc[0]
72
81
  .split(" ")
73
82
  if item != ""
74
83
  ]
75
84
  list_1 = [
76
85
  item
77
86
  for item in pd.read_html(StringIO(res.text), header=0, index_col=0)[4]
78
- .iloc[1, :].iloc[1]
87
+ .iloc[1, :]
88
+ .iloc[1]
79
89
  .split(" ")
80
90
  if item != ""
81
91
  ]
82
92
  list_2 = [
83
93
  item
84
94
  for item in pd.read_html(StringIO(res.text), header=0, index_col=0)[4]
85
- .iloc[1, :].iloc[2]
95
+ .iloc[1, :]
96
+ .iloc[2]
86
97
  .split(" ")
87
98
  if item != ""
88
99
  ]
@@ -6,6 +6,7 @@ Desc: Economic Research from Federal Reserve Bank of St. Louis
6
6
  https://research.stlouisfed.org/econ/mccracken/fred-databases/
7
7
  FRED-MD and FRED-QD are large macroeconomic databases designed for the empirical analysis of “big data.” The datasets of monthly and quarterly observations mimic the coverage of datasets already used in the literature, but they add three appealing features. They are updated in real-time through the FRED database. They are publicly accessible, facilitating the replication of empirical work. And they relieve the researcher of the task of incorporating data changes and revisions (a task accomplished by the data desk at the Federal Reserve Bank of St. Louis).
8
8
  """
9
+
9
10
  import pandas as pd
10
11
 
11
12
 
@@ -17,7 +18,9 @@ def fred_md(date: str = "2020-01") -> pd.DataFrame:
17
18
  :return: Monthly Data
18
19
  :rtype: pandas.DataFrame
19
20
  """
20
- url = f"https://s3.amazonaws.com/files.fred.stlouisfed.org/fred-md/monthly/{date}.csv"
21
+ url = (
22
+ f"https://s3.amazonaws.com/files.fred.stlouisfed.org/fred-md/monthly/{date}.csv"
23
+ )
21
24
  temp_df = pd.read_csv(url)
22
25
  return temp_df
23
26
 
@@ -4,6 +4,7 @@
4
4
  Date: 2024/1/20 20:51
5
5
  Desc: 修大成主页-Risk Lab-Realized Volatility; Oxford-Man Institute of Quantitative Finance Realized Library
6
6
  """
7
+
7
8
  import json
8
9
 
9
10
  import pandas as pd
@@ -64,11 +65,8 @@ def article_oman_rv(symbol: str = "FTSE", index: str = "rk_th2") -> pd.DataFrame
64
65
  res = requests.get(url)
65
66
  soup = BeautifulSoup(res.text, "lxml")
66
67
  soup_text = soup.find("p").get_text()
67
- data_json = json.loads(soup_text[soup_text.find("{"): soup_text.rfind("};") + 1])
68
+ data_json = json.loads(soup_text[soup_text.find("{") : soup_text.rfind("};") + 1])
68
69
  date_list = data_json[f".{symbol}"]["dates"]
69
- title_fore = data_json[f".{symbol}"][index]["name"]
70
- title_last = data_json[f".{symbol}"][index]["measure"]
71
- title_list = title_fore + "-" + title_last
72
70
  temp_df = pd.DataFrame([date_list, data_json[f".{symbol}"][index]["data"]]).T
73
71
  temp_df.index = pd.to_datetime(temp_df.iloc[:, 0], unit="ms")
74
72
  temp_df = temp_df.iloc[:, 1]
@@ -107,10 +105,7 @@ def article_oman_rv_short(symbol: str = "FTSE") -> pd.DataFrame:
107
105
  res = requests.get(url, headers=headers, verify=False)
108
106
  soup = BeautifulSoup(res.text, "lxml")
109
107
  soup_text = soup.find("p").get_text()
110
- data_json = json.loads(soup_text[soup_text.find("{"): soup_text.rfind("}") + 1])
111
- title_fore = data_json[f".{symbol}"]["name"]
112
- title_last = data_json[f".{symbol}"]["measure"]
113
- title_list = title_fore + "-" + title_last
108
+ data_json = json.loads(soup_text[soup_text.find("{") : soup_text.rfind("}") + 1])
114
109
  temp_df = pd.DataFrame(data_json[f".{symbol}"]["data"])
115
110
  temp_df.index = pd.to_datetime(temp_df.iloc[:, 0], unit="ms")
116
111
  temp_df = temp_df.iloc[:, 1]
@@ -5,6 +5,7 @@ Date: 2023/9/12 16:50
5
5
  Desc: 新浪财经-债券-可转债
6
6
  https://money.finance.sina.com.cn/bond/info/sz128039.html
7
7
  """
8
+
8
9
  from io import StringIO
9
10
 
10
11
  import pandas as pd
@@ -4,6 +4,7 @@
4
4
  Date: 2022/9/20 17:46
5
5
  Desc: 中国债券信息网-中债指数-中债指数族系-总指数-综合类指数
6
6
  """
7
+
7
8
  import pandas as pd
8
9
  import requests
9
10
 
@@ -58,17 +59,17 @@ def bond_new_composite_index_cbond(
58
59
  url = "https://yield.chinabond.com.cn/cbweb-mn/indices/singleIndexQuery"
59
60
  params = {
60
61
  "indexid": "8a8b2ca0332abed20134ea76d8885831",
61
- "": "",
62
+ "": "", # noqa: F601
62
63
  "qxlxt": period_map[period],
63
- "": "",
64
+ "": "", # noqa: F601
64
65
  "ltcslx": "",
65
- "": "",
66
- "zslxt": indicator_map[indicator],
67
- "": "",
68
- "zslxt": indicator_map[indicator],
69
- "": "",
66
+ "": "", # noqa: F601
67
+ "zslxt": indicator_map[indicator], # noqa: F601
68
+ "": "", # noqa: F601
69
+ "zslxt": indicator_map[indicator], # noqa: F601
70
+ "": "", # noqa: F601
70
71
  "lx": "1",
71
- "": "",
72
+ "": "", # noqa: F601
72
73
  "locale": "",
73
74
  }
74
75
  r = requests.post(url, params=params)
@@ -79,8 +80,12 @@ def bond_new_composite_index_cbond(
79
80
  )
80
81
  temp_df.reset_index(inplace=True)
81
82
  temp_df.columns = ["date", "value"]
82
- temp_df['date'] = temp_df['date'].astype(float)
83
- temp_df["date"] = pd.to_datetime(temp_df["date"], unit="ms", errors="coerce", utc=True).dt.tz_convert("Asia/Shanghai").dt.date
83
+ temp_df["date"] = temp_df["date"].astype(float)
84
+ temp_df["date"] = (
85
+ pd.to_datetime(temp_df["date"], unit="ms", errors="coerce", utc=True)
86
+ .dt.tz_convert("Asia/Shanghai")
87
+ .dt.date
88
+ )
84
89
  temp_df["value"] = pd.to_numeric(temp_df["value"], errors="coerce")
85
90
  return temp_df
86
91
 
@@ -135,13 +140,13 @@ def bond_composite_index_cbond(
135
140
  url = "https://yield.chinabond.com.cn/cbweb-mn/indices/singleIndexQuery"
136
141
  params = {
137
142
  "indexid": "2c90818811afed8d0111c0c672b31578",
138
- "": "",
143
+ "": "", # noqa: F601
139
144
  "qxlxt": period_map[period],
140
- "": "",
145
+ "": "", # noqa: F601
141
146
  "zslxt": indicator_map[indicator],
142
- "": "",
147
+ "": "", # noqa: F601
143
148
  "lx": "1",
144
- "": "",
149
+ "": "", # noqa: F601
145
150
  "locale": "",
146
151
  }
147
152
  r = requests.post(url, params=params)
@@ -5,6 +5,7 @@ Date: 2023/12/4 14:00
5
5
  Desc: 东方财富网-数据中心-经济数据-中美国债收益率
6
6
  https://data.eastmoney.com/cjsj/zmgzsyl.html
7
7
  """
8
+
8
9
  import pandas as pd
9
10
  import requests
10
11
  from tqdm import tqdm
@@ -30,7 +31,6 @@ def bond_zh_us_rate(start_date: str = "19901219") -> pd.DataFrame:
30
31
  "ps": "500",
31
32
  "pageNo": "1",
32
33
  "pageNum": "1",
33
- "_": "1615791534490",
34
34
  }
35
35
  r = requests.get(url, params=params)
36
36
  data_json = r.json()
@@ -47,14 +47,13 @@ def bond_zh_us_rate(start_date: str = "19901219") -> pd.DataFrame:
47
47
  "ps": "500",
48
48
  "pageNo": page,
49
49
  "pageNum": page,
50
- "_": "1615791534490",
51
50
  }
52
51
  r = requests.get(url, params=params)
53
52
  data_json = r.json()
54
53
  temp_df = pd.DataFrame(data_json["result"]["data"])
55
54
  for col in temp_df.columns:
56
55
  if temp_df[col].isnull().all(): # 检查列是否包含 None 或 NaN
57
- temp_df[col] = pd.to_numeric(temp_df[col], errors='coerce')
56
+ temp_df[col] = pd.to_numeric(temp_df[col], errors="coerce")
58
57
  if big_df.empty:
59
58
  big_df = temp_df
60
59
  else:
@@ -62,7 +61,7 @@ def bond_zh_us_rate(start_date: str = "19901219") -> pd.DataFrame:
62
61
 
63
62
  temp_date_list = pd.to_datetime(big_df["SOLAR_DATE"]).dt.date.to_list()
64
63
  if pd.to_datetime(start_date) in pd.date_range(
65
- temp_date_list[-1], temp_date_list[0]
64
+ temp_date_list[-1], temp_date_list[0]
66
65
  ):
67
66
  break
68
67
 
@@ -102,21 +101,41 @@ def bond_zh_us_rate(start_date: str = "19901219") -> pd.DataFrame:
102
101
  ]
103
102
  ]
104
103
  big_df["日期"] = pd.to_datetime(big_df["日期"], errors="coerce")
105
- big_df["中国国债收益率2年"] = pd.to_numeric(big_df["中国国债收益率2年"], errors="coerce")
106
- big_df["中国国债收益率5年"] = pd.to_numeric(big_df["中国国债收益率5年"], errors="coerce")
107
- big_df["中国国债收益率10年"] = pd.to_numeric(big_df["中国国债收益率10年"], errors="coerce")
108
- big_df["中国国债收益率30年"] = pd.to_numeric(big_df["中国国债收益率30年"], errors="coerce")
109
- big_df["中国国债收益率10年-2年"] = pd.to_numeric(big_df["中国国债收益率10年-2年"], errors="coerce")
104
+ big_df["中国国债收益率2年"] = pd.to_numeric(
105
+ big_df["中国国债收益率2年"], errors="coerce"
106
+ )
107
+ big_df["中国国债收益率5年"] = pd.to_numeric(
108
+ big_df["中国国债收益率5年"], errors="coerce"
109
+ )
110
+ big_df["中国国债收益率10年"] = pd.to_numeric(
111
+ big_df["中国国债收益率10年"], errors="coerce"
112
+ )
113
+ big_df["中国国债收益率30年"] = pd.to_numeric(
114
+ big_df["中国国债收益率30年"], errors="coerce"
115
+ )
116
+ big_df["中国国债收益率10年-2年"] = pd.to_numeric(
117
+ big_df["中国国债收益率10年-2年"], errors="coerce"
118
+ )
110
119
  big_df["中国GDP年增率"] = pd.to_numeric(big_df["中国GDP年增率"], errors="coerce")
111
- big_df["美国国债收益率2年"] = pd.to_numeric(big_df["美国国债收益率2年"], errors="coerce")
112
- big_df["美国国债收益率5年"] = pd.to_numeric(big_df["美国国债收益率5年"], errors="coerce")
113
- big_df["美国国债收益率10年"] = pd.to_numeric(big_df["美国国债收益率10年"], errors="coerce")
114
- big_df["美国国债收益率30年"] = pd.to_numeric(big_df["美国国债收益率30年"], errors="coerce")
115
- big_df["美国国债收益率10年-2年"] = pd.to_numeric(big_df["美国国债收益率10年-2年"], errors="coerce")
120
+ big_df["美国国债收益率2年"] = pd.to_numeric(
121
+ big_df["美国国债收益率2年"], errors="coerce"
122
+ )
123
+ big_df["美国国债收益率5年"] = pd.to_numeric(
124
+ big_df["美国国债收益率5年"], errors="coerce"
125
+ )
126
+ big_df["美国国债收益率10年"] = pd.to_numeric(
127
+ big_df["美国国债收益率10年"], errors="coerce"
128
+ )
129
+ big_df["美国国债收益率30年"] = pd.to_numeric(
130
+ big_df["美国国债收益率30年"], errors="coerce"
131
+ )
132
+ big_df["美国国债收益率10年-2年"] = pd.to_numeric(
133
+ big_df["美国国债收益率10年-2年"], errors="coerce"
134
+ )
116
135
  big_df["美国GDP年增率"] = pd.to_numeric(big_df["美国GDP年增率"], errors="coerce")
117
136
  big_df.sort_values("日期", inplace=True)
118
137
  big_df.set_index(["日期"], inplace=True)
119
- big_df = big_df[pd.to_datetime(start_date):]
138
+ big_df = big_df[pd.to_datetime(start_date) :]
120
139
  big_df.reset_index(inplace=True)
121
140
  big_df["日期"] = pd.to_datetime(big_df["日期"]).dt.date
122
141
  return big_df