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.
- {akshare-1.15.28 → akshare-1.15.30}/PKG-INFO +2 -20
- {akshare-1.15.28 → akshare-1.15.30}/README.md +1 -19
- {akshare-1.15.28 → akshare-1.15.30}/akshare/__init__.py +3 -1
- {akshare-1.15.28 → akshare-1.15.30}/akshare/fund/fund_etf_sina.py +26 -23
- {akshare-1.15.28 → akshare-1.15.30}/akshare/option/option_commodity.py +95 -22
- {akshare-1.15.28 → akshare-1.15.30}/akshare/stock/stock_zh_a_sina.py +1 -1
- {akshare-1.15.28 → akshare-1.15.30}/akshare/stock/stock_zh_b_sina.py +1 -1
- {akshare-1.15.28 → akshare-1.15.30}/akshare/stock/stock_zh_kcb_sina.py +67 -64
- {akshare-1.15.28 → akshare-1.15.30}/akshare.egg-info/PKG-INFO +2 -20
- {akshare-1.15.28 → akshare-1.15.30}/LICENSE +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/air/__init__.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/air/air_hebei.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/air/air_zhenqi.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/air/cons.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/air/crypto.js +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/air/outcrypto.js +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/air/sunrise_tad.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/article/__init__.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/article/cons.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/article/epu_index.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/article/ff_factor.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/article/fred_md.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/article/risk_rv.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/bank/__init__.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/bank/bank_cbirc_2020.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/bank/cons.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/bond/__init__.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/bond/bond_cb_sina.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/bond/bond_cb_ths.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/bond/bond_cbond.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/bond/bond_china.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/bond/bond_china_money.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/bond/bond_convert.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/bond/bond_em.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/bond/bond_info_cm.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/bond/bond_investing.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/bond/bond_issue_cninfo.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/bond/bond_nafmii.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/bond/bond_summary.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/bond/bond_zh_cov.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/bond/bond_zh_sina.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/bond/cons.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/cal/__init__.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/cal/rv.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/cost/__init__.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/cost/cost_living.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/crypto/__init__.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/crypto/crypto_bitcoin_cme.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/crypto/crypto_hist_investing.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/crypto/crypto_hold.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/currency/__init__.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/currency/currency.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/currency/currency_china_bank_sina.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/currency/currency_safe.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/data/__init__.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/data/cninfo.js +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/data/crypto_info.zip +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/data/ths.js +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/datasets.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/economic/__init__.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/economic/cons.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/economic/macro_australia.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/economic/macro_bank.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/economic/macro_canada.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/economic/macro_china.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/economic/macro_china_hk.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/economic/macro_china_nbs.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/economic/macro_constitute.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/economic/macro_euro.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/economic/macro_finance_ths.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/economic/macro_germany.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/economic/macro_info_ws.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/economic/macro_japan.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/economic/macro_other.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/economic/macro_swiss.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/economic/macro_uk.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/economic/macro_usa.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/economic/marco_cnbs.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/energy/__init__.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/energy/energy_carbon.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/energy/energy_oil_em.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/event/__init__.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/event/cons.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/event/migration.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/exceptions.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/file_fold/__init__.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/file_fold/calendar.json +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/fortune/__init__.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/fortune/fortune_500.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/fortune/fortune_bloomberg.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/fortune/fortune_forbes_500.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/fortune/fortune_hurun.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/fortune/fortune_xincaifu_500.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/fund/__init__.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/fund/fund_amac.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/fund/fund_announcement.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/fund/fund_aum_em.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/fund/fund_em.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/fund/fund_etf_em.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/fund/fund_etf_ths.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/fund/fund_fhsp_em.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/fund/fund_init_em.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/fund/fund_lof_em.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/fund/fund_manager.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/fund/fund_portfolio_em.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/fund/fund_position_lg.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/fund/fund_rank_em.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/fund/fund_rating.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/fund/fund_report_cninfo.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/fund/fund_scale_em.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/fund/fund_scale_sina.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/fund/fund_xq.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/futures/__init__.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/futures/cons.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/futures/cot.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/futures/futures_basis.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/futures/futures_comex_em.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/futures/futures_comm_ctp.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/futures/futures_comm_qihuo.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/futures/futures_contract_detail.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/futures/futures_daily_bar.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/futures/futures_foreign.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/futures/futures_hf_em.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/futures/futures_hq_sina.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/futures/futures_index_ccidx.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/futures/futures_international.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/futures/futures_inventory_99.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/futures/futures_inventory_em.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/futures/futures_news_baidu.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/futures/futures_news_shmet.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/futures/futures_roll_yield.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/futures/futures_rule.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/futures/futures_settlement_price_sgx.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/futures/futures_spot_stock_em.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/futures/futures_stock_js.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/futures/futures_to_spot.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/futures/futures_warehouse_receipt.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/futures/futures_zh_sina.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/futures/inventory_data.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/futures/receipt.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/futures/requests_fun.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/futures/symbol_var.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/futures_derivative/__init__.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/futures_derivative/cons.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/futures_derivative/futures_contract_info_cffex.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/futures_derivative/futures_contract_info_czce.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/futures_derivative/futures_contract_info_dce.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/futures_derivative/futures_contract_info_gfex.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/futures_derivative/futures_contract_info_ine.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/futures_derivative/futures_contract_info_shfe.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/futures_derivative/futures_cot_sina.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/futures_derivative/futures_hog.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/futures_derivative/futures_index_sina.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/futures_derivative/futures_spot_sys.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/fx/__init__.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/fx/cons.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/fx/currency_investing.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/fx/fx_quote.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/fx/fx_quote_baidu.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/hf/__init__.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/hf/hf_sp500.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/index/__init__.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/index/cons.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/index/index_cflp.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/index/index_cni.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/index/index_cons.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/index/index_cx.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/index/index_drewry.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/index/index_eri.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/index/index_fear_greed_funddb.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/index/index_hog.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/index/index_investing.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/index/index_kq_fz.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/index/index_kq_ss.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/index/index_option_qvix.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/index/index_research_fund_sw.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/index/index_research_sw.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/index/index_spot.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/index/index_stock_hk.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/index/index_stock_us_sina.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/index/index_stock_zh.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/index/index_stock_zh_csindex.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/index/index_sugar.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/index/index_sw.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/index/index_yw.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/index/index_zh_a_scope.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/index/index_zh_em.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/interest_rate/__init__.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/interest_rate/interbank_rate_em.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/movie/__init__.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/movie/artist_yien.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/movie/jm.js +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/movie/movie_yien.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/movie/video_yien.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/news/__init__.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/news/news_baidu.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/news/news_cctv.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/news/news_stock.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/nlp/__init__.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/nlp/nlp_interface.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/option/__init__.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/option/cons.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/option/option_comm_qihuo.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/option/option_commodity_sina.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/option/option_czce.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/option/option_daily_stats_sse_szse.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/option/option_em.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/option/option_finance.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/option/option_finance_sina.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/option/option_lhb_em.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/option/option_premium_analysis_em.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/option/option_risk_analysis_em.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/option/option_risk_indicator_sse.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/option/option_value_analysis_em.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/other/__init__.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/other/other_car_cpca.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/other/other_car_gasgoo.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/pro/__init__.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/pro/client.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/pro/cons.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/pro/data_pro.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/qdii/__init__.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/qdii/qdii_jsl.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/qhkc/__init__.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/qhkc/qhkc_api.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/qhkc_web/__init__.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/qhkc_web/qhkc_fund.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/qhkc_web/qhkc_index.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/qhkc_web/qhkc_tool.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/rate/__init__.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/rate/repo_rate.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/reits/__init__.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/reits/reits_basic.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/request.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/sport/__init__.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/sport/sport_olympic.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/spot/__init__.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/spot/spot_hog_soozhu.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/spot/spot_price_qh.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/spot/spot_sge.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/stock/__init__.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/stock/cons.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/stock/stock_allotment_cninfo.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/stock/stock_ask_bid_em.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/stock/stock_board_concept_em.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/stock/stock_board_industry_em.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/stock/stock_cg_equity_mortgage.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/stock/stock_cg_guarantee.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/stock/stock_cg_lawsuit.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/stock/stock_dividend_cninfo.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/stock/stock_dzjy_em.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/stock/stock_fund_em.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/stock/stock_fund_hold.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/stock/stock_gsrl_em.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/stock/stock_hk_famous.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/stock/stock_hk_fhpx_ths.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/stock/stock_hk_hot_rank_em.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/stock/stock_hk_sina.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/stock/stock_hold_control_cninfo.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/stock/stock_hold_control_em.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/stock/stock_hold_num_cninfo.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/stock/stock_hot_rank_em.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/stock/stock_hot_search_baidu.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/stock/stock_hot_up_em.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/stock/stock_industry.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/stock/stock_industry_cninfo.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/stock/stock_industry_pe_cninfo.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/stock/stock_industry_sw.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/stock/stock_info.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/stock/stock_info_em.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/stock/stock_intraday_em.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/stock/stock_intraday_sina.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/stock/stock_ipo_summary_cninfo.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/stock/stock_new_cninfo.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/stock/stock_news_cx.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/stock/stock_profile_cninfo.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/stock/stock_rank_forecast.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/stock/stock_repurchase_em.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/stock/stock_share_changes_cninfo.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/stock/stock_share_hold.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/stock/stock_stop.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/stock/stock_summary.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/stock/stock_us_famous.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/stock/stock_us_js.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/stock/stock_us_pink.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/stock/stock_us_sina.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/stock/stock_weibo_nlp.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/stock/stock_xq.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/stock/stock_zh_a_special.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/stock/stock_zh_a_tick_tx.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/stock/stock_zh_ah_tx.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/stock/stock_zh_kcb_report.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_feature/__init__.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_feature/cons.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_feature/stock_a_below_net_asset_statistics.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_feature/stock_a_high_low.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_feature/stock_a_indicator.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_feature/stock_a_pe_and_pb.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_feature/stock_account_em.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_feature/stock_all_pb.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_feature/stock_analyst_em.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_feature/stock_board_industry_ths.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_feature/stock_buffett_index_lg.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_feature/stock_classify_sina.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_feature/stock_comment_em.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_feature/stock_concept_futu.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_feature/stock_congestion_lg.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_feature/stock_cyq_em.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_feature/stock_disclosure_cninfo.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_feature/stock_dxsyl_em.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_feature/stock_ebs_lg.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_feature/stock_esg_sina.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_feature/stock_fhps_em.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_feature/stock_fhps_ths.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_feature/stock_fund_flow.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_feature/stock_gddh_em.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_feature/stock_gdfx_em.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_feature/stock_gdhs.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_feature/stock_gdzjc_em.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_feature/stock_gpzy_em.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_feature/stock_gxl_lg.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_feature/stock_hist_em.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_feature/stock_hist_tx.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_feature/stock_hk_valuation_baidu.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_feature/stock_hot_xq.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_feature/stock_hsgt_em.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_feature/stock_hsgt_exchange_rate.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_feature/stock_hsgt_min_em.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_feature/stock_info.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_feature/stock_inner_trade_xq.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_feature/stock_irm_cninfo.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_feature/stock_jgdy_em.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_feature/stock_lh_yybpm.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_feature/stock_lhb_em.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_feature/stock_lhb_sina.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_feature/stock_margin_em.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_feature/stock_margin_sse.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_feature/stock_margin_szse.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_feature/stock_market_legu.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_feature/stock_pankou_em.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_feature/stock_qsjy_em.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_feature/stock_report_em.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_feature/stock_research_report_em.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_feature/stock_sns_sseinfo.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_feature/stock_sy_em.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_feature/stock_technology_ths.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_feature/stock_tfp_em.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_feature/stock_three_report_em.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_feature/stock_ttm_lyr.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_feature/stock_wencai.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_feature/stock_yjbb_em.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_feature/stock_yjyg_cninfo.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_feature/stock_yjyg_em.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_feature/stock_yzxdr_em.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_feature/stock_zdhtmx_em.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_feature/stock_zf_pg.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_feature/stock_zh_valuation_baidu.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_feature/stock_zh_vote_baidu.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_feature/stock_ztb_em.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_feature/ths.js +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_fundamental/__init__.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_fundamental/stock_finance.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_fundamental/stock_finance_hk.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_fundamental/stock_finance_ths.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_fundamental/stock_hold.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_fundamental/stock_ipo_declare.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_fundamental/stock_kcb_detail_sse.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_fundamental/stock_kcb_sse.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_fundamental/stock_mda_ym.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_fundamental/stock_notice.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_fundamental/stock_profit_forecast_em.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_fundamental/stock_profit_forecast_hk_etnet.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_fundamental/stock_profit_forecast_ths.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_fundamental/stock_recommend.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_fundamental/stock_register_em.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_fundamental/stock_restricted_em.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_fundamental/stock_zygc.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/stock_fundamental/stock_zyjs_ths.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/tool/__init__.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/tool/trade_date_hist.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/utils/__init__.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/utils/cons.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/utils/context.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/utils/demjson.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/utils/func.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/utils/token_process.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare/utils/tqdm.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare.egg-info/SOURCES.txt +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare.egg-info/dependency_links.txt +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare.egg-info/requires.txt +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/akshare.egg-info/top_level.txt +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/pyproject.toml +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/setup.cfg +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/setup.py +0 -0
- {akshare-1.15.28 → akshare-1.15.30}/tests/__init__.py +0 -0
- {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.
|
|
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.
|
|
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:
|
|
4
|
+
Date: 2024/11/22 14:00
|
|
5
5
|
Desc: 新浪财经-基金行情
|
|
6
|
-
|
|
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 =
|
|
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": "
|
|
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 = "
|
|
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
|
-
|
|
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
|
-
|
|
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
|
-
|
|
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
|
-
|
|
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
|
-
|
|
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
|
-
|
|
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
|
-
|
|
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
|
-
|
|
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
|
-
|
|
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
|
-
|
|
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
|
-
|
|
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
|
-
|
|
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
|
-
|
|
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
|
-
|
|
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
|
-
|
|
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
|
-
|
|
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
|
-
|
|
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
|
-
|
|
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="
|
|
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="
|
|
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: 返回后复权因子;
|
|
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: 返回后复权因子;
|
|
139
|
+
:param adjust: 默认为空: 返回不复权的数据; qfq: 返回前复权后的数据; hfq: 返回后复权后的数据; hfq-factor: 返回后复权因子; qfq-factor: 返回前复权因子
|
|
140
140
|
:type adjust: str
|
|
141
141
|
:return: specific data
|
|
142
142
|
:rtype: pandas.DataFrame
|