akshare 1.15.37__tar.gz → 1.15.38__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.37 → akshare-1.15.38}/PKG-INFO +1 -1
- {akshare-1.15.37 → akshare-1.15.38}/akshare/__init__.py +2 -1
- {akshare-1.15.37 → akshare-1.15.38}/akshare/futures/futures_daily_bar.py +5 -5
- akshare-1.15.38/akshare/futures_derivative/futures_contract_info_ine.py +69 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare.egg-info/PKG-INFO +1 -1
- akshare-1.15.37/akshare/futures_derivative/futures_contract_info_ine.py +0 -60
- {akshare-1.15.37 → akshare-1.15.38}/LICENSE +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/README.md +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/air/__init__.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/air/air_hebei.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/air/air_zhenqi.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/air/cons.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/air/crypto.js +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/air/outcrypto.js +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/air/sunrise_tad.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/article/__init__.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/article/cons.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/article/epu_index.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/article/ff_factor.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/article/fred_md.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/article/risk_rv.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/bank/__init__.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/bank/bank_cbirc_2020.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/bank/cons.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/bond/__init__.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/bond/bond_cb_sina.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/bond/bond_cb_ths.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/bond/bond_cbond.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/bond/bond_china.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/bond/bond_china_money.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/bond/bond_convert.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/bond/bond_em.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/bond/bond_info_cm.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/bond/bond_investing.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/bond/bond_issue_cninfo.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/bond/bond_nafmii.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/bond/bond_summary.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/bond/bond_zh_cov.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/bond/bond_zh_sina.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/bond/cons.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/cal/__init__.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/cal/rv.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/cost/__init__.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/cost/cost_living.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/crypto/__init__.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/crypto/crypto_bitcoin_cme.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/crypto/crypto_hold.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/currency/__init__.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/currency/currency.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/currency/currency_china_bank_sina.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/currency/currency_safe.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/data/__init__.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/data/cninfo.js +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/data/crypto_info.zip +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/data/ths.js +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/datasets.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/economic/__init__.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/economic/cons.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/economic/macro_australia.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/economic/macro_bank.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/economic/macro_canada.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/economic/macro_china.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/economic/macro_china_hk.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/economic/macro_china_nbs.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/economic/macro_constitute.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/economic/macro_euro.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/economic/macro_finance_ths.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/economic/macro_germany.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/economic/macro_info_ws.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/economic/macro_japan.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/economic/macro_other.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/economic/macro_swiss.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/economic/macro_uk.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/economic/macro_usa.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/economic/marco_cnbs.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/energy/__init__.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/energy/energy_carbon.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/energy/energy_oil_em.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/event/__init__.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/event/cons.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/event/migration.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/exceptions.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/file_fold/__init__.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/file_fold/calendar.json +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/fortune/__init__.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/fortune/fortune_500.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/fortune/fortune_bloomberg.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/fortune/fortune_forbes_500.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/fortune/fortune_hurun.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/fortune/fortune_xincaifu_500.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/fund/__init__.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/fund/fund_amac.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/fund/fund_announcement.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/fund/fund_aum_em.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/fund/fund_em.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/fund/fund_etf_em.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/fund/fund_etf_sina.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/fund/fund_etf_ths.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/fund/fund_fhsp_em.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/fund/fund_init_em.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/fund/fund_lof_em.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/fund/fund_manager.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/fund/fund_portfolio_em.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/fund/fund_position_lg.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/fund/fund_rank_em.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/fund/fund_rating.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/fund/fund_report_cninfo.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/fund/fund_scale_em.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/fund/fund_scale_sina.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/fund/fund_xq.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/futures/__init__.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/futures/cons.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/futures/cot.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/futures/futures_basis.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/futures/futures_comex_em.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/futures/futures_comm_ctp.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/futures/futures_comm_qihuo.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/futures/futures_contract_detail.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/futures/futures_foreign.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/futures/futures_hf_em.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/futures/futures_hq_sina.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/futures/futures_index_ccidx.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/futures/futures_international.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/futures/futures_inventory_99.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/futures/futures_inventory_em.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/futures/futures_news_baidu.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/futures/futures_news_shmet.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/futures/futures_roll_yield.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/futures/futures_rule.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/futures/futures_settlement_price_sgx.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/futures/futures_spot_stock_em.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/futures/futures_stock_js.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/futures/futures_to_spot.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/futures/futures_warehouse_receipt.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/futures/futures_zh_sina.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/futures/inventory_data.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/futures/receipt.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/futures/requests_fun.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/futures/symbol_var.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/futures_derivative/__init__.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/futures_derivative/cons.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/futures_derivative/futures_contract_info_cffex.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/futures_derivative/futures_contract_info_czce.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/futures_derivative/futures_contract_info_dce.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/futures_derivative/futures_contract_info_gfex.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/futures_derivative/futures_contract_info_shfe.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/futures_derivative/futures_cot_sina.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/futures_derivative/futures_hog.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/futures_derivative/futures_index_sina.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/futures_derivative/futures_spot_sys.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/fx/__init__.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/fx/cons.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/fx/currency_investing.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/fx/fx_quote.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/fx/fx_quote_baidu.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/hf/__init__.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/hf/hf_sp500.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/index/__init__.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/index/cons.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/index/index_cflp.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/index/index_cni.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/index/index_cons.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/index/index_cx.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/index/index_drewry.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/index/index_eri.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/index/index_fear_greed_funddb.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/index/index_hog.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/index/index_investing.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/index/index_kq_fz.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/index/index_kq_ss.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/index/index_option_qvix.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/index/index_research_fund_sw.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/index/index_research_sw.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/index/index_spot.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/index/index_stock_hk.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/index/index_stock_us_sina.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/index/index_stock_zh.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/index/index_stock_zh_csindex.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/index/index_sugar.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/index/index_sw.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/index/index_yw.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/index/index_zh_a_scope.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/index/index_zh_em.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/interest_rate/__init__.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/interest_rate/interbank_rate_em.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/movie/__init__.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/movie/artist_yien.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/movie/jm.js +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/movie/movie_yien.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/movie/video_yien.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/news/__init__.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/news/news_baidu.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/news/news_cctv.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/news/news_stock.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/nlp/__init__.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/nlp/nlp_interface.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/option/__init__.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/option/cons.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/option/option_comm_qihuo.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/option/option_commodity.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/option/option_commodity_sina.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/option/option_czce.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/option/option_daily_stats_sse_szse.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/option/option_em.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/option/option_finance.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/option/option_finance_sina.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/option/option_lhb_em.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/option/option_premium_analysis_em.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/option/option_risk_analysis_em.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/option/option_risk_indicator_sse.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/option/option_value_analysis_em.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/other/__init__.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/other/other_car_cpca.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/other/other_car_gasgoo.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/pro/__init__.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/pro/client.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/pro/cons.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/pro/data_pro.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/qdii/__init__.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/qdii/qdii_jsl.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/qhkc/__init__.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/qhkc/qhkc_api.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/qhkc_web/__init__.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/qhkc_web/qhkc_fund.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/qhkc_web/qhkc_index.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/qhkc_web/qhkc_tool.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/rate/__init__.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/rate/repo_rate.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/reits/__init__.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/reits/reits_basic.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/request.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/sport/__init__.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/sport/sport_olympic.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/spot/__init__.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/spot/spot_hog_soozhu.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/spot/spot_price_qh.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/spot/spot_sge.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/stock/__init__.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/stock/cons.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/stock/stock_allotment_cninfo.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/stock/stock_ask_bid_em.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/stock/stock_board_concept_em.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/stock/stock_board_industry_em.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/stock/stock_cg_equity_mortgage.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/stock/stock_cg_guarantee.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/stock/stock_cg_lawsuit.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/stock/stock_dividend_cninfo.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/stock/stock_dzjy_em.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/stock/stock_fund_em.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/stock/stock_fund_hold.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/stock/stock_gsrl_em.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/stock/stock_hk_famous.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/stock/stock_hk_fhpx_ths.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/stock/stock_hk_hot_rank_em.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/stock/stock_hk_sina.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/stock/stock_hold_control_cninfo.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/stock/stock_hold_control_em.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/stock/stock_hold_num_cninfo.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/stock/stock_hot_rank_em.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/stock/stock_hot_search_baidu.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/stock/stock_hot_up_em.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/stock/stock_industry.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/stock/stock_industry_cninfo.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/stock/stock_industry_pe_cninfo.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/stock/stock_industry_sw.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/stock/stock_info.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/stock/stock_info_em.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/stock/stock_intraday_em.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/stock/stock_intraday_sina.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/stock/stock_ipo_summary_cninfo.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/stock/stock_new_cninfo.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/stock/stock_news_cx.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/stock/stock_profile_cninfo.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/stock/stock_rank_forecast.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/stock/stock_repurchase_em.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/stock/stock_share_changes_cninfo.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/stock/stock_share_hold.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/stock/stock_stop.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/stock/stock_summary.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/stock/stock_us_famous.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/stock/stock_us_js.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/stock/stock_us_pink.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/stock/stock_us_sina.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/stock/stock_weibo_nlp.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/stock/stock_xq.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/stock/stock_zh_a_sina.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/stock/stock_zh_a_special.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/stock/stock_zh_a_tick_tx.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/stock/stock_zh_ah_tx.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/stock/stock_zh_b_sina.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/stock/stock_zh_kcb_report.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/stock/stock_zh_kcb_sina.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/stock_feature/__init__.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/stock_feature/cons.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/stock_feature/stock_a_below_net_asset_statistics.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/stock_feature/stock_a_high_low.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/stock_feature/stock_a_indicator.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/stock_feature/stock_a_pe_and_pb.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/stock_feature/stock_account_em.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/stock_feature/stock_all_pb.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/stock_feature/stock_analyst_em.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/stock_feature/stock_board_industry_ths.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/stock_feature/stock_buffett_index_lg.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/stock_feature/stock_classify_sina.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/stock_feature/stock_comment_em.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/stock_feature/stock_concept_futu.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/stock_feature/stock_congestion_lg.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/stock_feature/stock_cyq_em.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/stock_feature/stock_disclosure_cninfo.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/stock_feature/stock_dxsyl_em.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/stock_feature/stock_ebs_lg.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/stock_feature/stock_esg_sina.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/stock_feature/stock_fhps_em.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/stock_feature/stock_fhps_ths.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/stock_feature/stock_fund_flow.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/stock_feature/stock_gddh_em.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/stock_feature/stock_gdfx_em.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/stock_feature/stock_gdhs.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/stock_feature/stock_gdzjc_em.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/stock_feature/stock_gpzy_em.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/stock_feature/stock_gxl_lg.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/stock_feature/stock_hist_em.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/stock_feature/stock_hist_tx.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/stock_feature/stock_hk_valuation_baidu.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/stock_feature/stock_hot_xq.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/stock_feature/stock_hsgt_em.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/stock_feature/stock_hsgt_exchange_rate.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/stock_feature/stock_hsgt_min_em.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/stock_feature/stock_info.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/stock_feature/stock_inner_trade_xq.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/stock_feature/stock_irm_cninfo.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/stock_feature/stock_jgdy_em.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/stock_feature/stock_lh_yybpm.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/stock_feature/stock_lhb_em.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/stock_feature/stock_lhb_sina.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/stock_feature/stock_margin_em.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/stock_feature/stock_margin_sse.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/stock_feature/stock_margin_szse.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/stock_feature/stock_market_legu.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/stock_feature/stock_pankou_em.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/stock_feature/stock_qsjy_em.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/stock_feature/stock_report_em.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/stock_feature/stock_research_report_em.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/stock_feature/stock_sns_sseinfo.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/stock_feature/stock_sy_em.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/stock_feature/stock_technology_ths.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/stock_feature/stock_tfp_em.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/stock_feature/stock_three_report_em.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/stock_feature/stock_ttm_lyr.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/stock_feature/stock_value_em.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/stock_feature/stock_wencai.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/stock_feature/stock_yjbb_em.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/stock_feature/stock_yjyg_cninfo.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/stock_feature/stock_yjyg_em.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/stock_feature/stock_yzxdr_em.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/stock_feature/stock_zdhtmx_em.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/stock_feature/stock_zf_pg.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/stock_feature/stock_zh_valuation_baidu.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/stock_feature/stock_zh_vote_baidu.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/stock_feature/stock_ztb_em.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/stock_feature/ths.js +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/stock_fundamental/__init__.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/stock_fundamental/stock_finance.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/stock_fundamental/stock_finance_hk.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/stock_fundamental/stock_finance_ths.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/stock_fundamental/stock_hold.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/stock_fundamental/stock_ipo_declare.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/stock_fundamental/stock_kcb_detail_sse.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/stock_fundamental/stock_kcb_sse.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/stock_fundamental/stock_mda_ym.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/stock_fundamental/stock_notice.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/stock_fundamental/stock_profit_forecast_em.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/stock_fundamental/stock_profit_forecast_hk_etnet.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/stock_fundamental/stock_profit_forecast_ths.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/stock_fundamental/stock_recommend.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/stock_fundamental/stock_register_em.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/stock_fundamental/stock_restricted_em.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/stock_fundamental/stock_zygc.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/stock_fundamental/stock_zyjs_ths.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/tool/__init__.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/tool/trade_date_hist.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/utils/__init__.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/utils/cons.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/utils/context.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/utils/demjson.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/utils/func.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/utils/token_process.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare/utils/tqdm.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare.egg-info/SOURCES.txt +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare.egg-info/dependency_links.txt +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare.egg-info/requires.txt +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/akshare.egg-info/top_level.txt +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/pyproject.toml +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/setup.cfg +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/setup.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/tests/__init__.py +0 -0
- {akshare-1.15.37 → akshare-1.15.38}/tests/test_func.py +0 -0
|
@@ -2947,9 +2947,10 @@ amac_manager_cancelled_info # 中国证券投资基金业协会-信息公示-诚
|
|
|
2947
2947
|
1.15.35 fix: fix futures_spot_price_daily interface
|
|
2948
2948
|
1.15.36 fix: fix futures_global_em interface
|
|
2949
2949
|
1.15.37 fix: fix stock_individual_spot_xq interface
|
|
2950
|
+
1.15.38 fix: fix futures_contract_info_ine interface
|
|
2950
2951
|
"""
|
|
2951
2952
|
|
|
2952
|
-
__version__ = "1.15.
|
|
2953
|
+
__version__ = "1.15.38"
|
|
2953
2954
|
__author__ = "AKFamily"
|
|
2954
2955
|
|
|
2955
2956
|
import sys
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
#!/usr/bin/env python
|
|
2
2
|
# -*- coding:utf-8 -*-
|
|
3
3
|
"""
|
|
4
|
-
Date: 2024/
|
|
4
|
+
Date: 2024/11/30 18:00
|
|
5
5
|
Desc: 期货日线行情
|
|
6
6
|
"""
|
|
7
7
|
|
|
@@ -272,12 +272,12 @@ def get_gfex_daily(date: str = "20221223") -> pd.DataFrame:
|
|
|
272
272
|
return result_df
|
|
273
273
|
|
|
274
274
|
|
|
275
|
-
def get_ine_daily(date: str = "
|
|
275
|
+
def get_ine_daily(date: str = "20241129") -> pd.DataFrame:
|
|
276
276
|
"""
|
|
277
277
|
上海国际能源交易中心-日频率-量价数据
|
|
278
278
|
上海国际能源交易中心: 原油期货(上市时间: 20180326); 20号胶期货(上市时间: 20190812)
|
|
279
|
-
trade_price:
|
|
280
|
-
trade_note:
|
|
279
|
+
trade_price: https://www.ine.cn/statements/daily/?paramid=kx
|
|
280
|
+
trade_note: https://www.ine.cn/data/datanote.dat
|
|
281
281
|
:param date: 日期 format:YYYY-MM-DD 或 YYYYMMDD 或 datetime.date对象,默认为当前交易日
|
|
282
282
|
:type date: str or datetime.date
|
|
283
283
|
:return: 上海国际能源交易中心-日频率-量价数据
|
|
@@ -287,7 +287,7 @@ def get_ine_daily(date: str = "20220208") -> pd.DataFrame:
|
|
|
287
287
|
if day.strftime("%Y%m%d") not in calendar:
|
|
288
288
|
# warnings.warn(f"{day.strftime('%Y%m%d')}非交易日")
|
|
289
289
|
return pd.DataFrame()
|
|
290
|
-
url = f"
|
|
290
|
+
url = f"https://www.ine.cn/data/tradedata/future/dailydata/kx{day.strftime('%Y%m%d')}.dat"
|
|
291
291
|
r = requests.get(url, headers=cons.shfe_headers)
|
|
292
292
|
result_df = pd.DataFrame()
|
|
293
293
|
try:
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
#!/usr/bin/env python
|
|
2
|
+
# -*- coding:utf-8 -*-
|
|
3
|
+
"""
|
|
4
|
+
Date: 2024/11/30 19:00
|
|
5
|
+
Desc: 上海国际能源交易中心-业务指南-交易参数汇总(期货)
|
|
6
|
+
https://www.ine.cn/bourseService/summary/?name=currinstrumentprop
|
|
7
|
+
"""
|
|
8
|
+
|
|
9
|
+
import pandas as pd
|
|
10
|
+
import requests
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
def futures_contract_info_ine(date: str = "20241129") -> pd.DataFrame:
|
|
14
|
+
"""
|
|
15
|
+
上海国际能源交易中心-业务指南-交易参数汇总(期货)
|
|
16
|
+
https://www.ine.cn/bourseService/summary/?name=currinstrumentprop
|
|
17
|
+
:param date: 查询日期; 交易日
|
|
18
|
+
:type date: str
|
|
19
|
+
:return: 交易参数汇总查询
|
|
20
|
+
:rtype: pandas.DataFrame
|
|
21
|
+
"""
|
|
22
|
+
url = f"https://www.ine.cn/data/busiparamdata/future/ContractBaseInfo{date}.dat"
|
|
23
|
+
params = {"rnd": "0.8312696798757147"}
|
|
24
|
+
headers = {
|
|
25
|
+
"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) "
|
|
26
|
+
"Chrome/119.0.0.0 Safari/537.36"
|
|
27
|
+
}
|
|
28
|
+
r = requests.get(url, params=params, headers=headers)
|
|
29
|
+
data_json = r.json()
|
|
30
|
+
temp_df = pd.DataFrame(data_json["ContractBaseInfo"])
|
|
31
|
+
temp_df.rename(
|
|
32
|
+
columns={
|
|
33
|
+
"BASISPRICE": "挂牌基准价",
|
|
34
|
+
"ENDDELIVDATE": "最后交割日",
|
|
35
|
+
"EXPIREDATE": "到期日",
|
|
36
|
+
"INSTRUMENTID": "合约代码",
|
|
37
|
+
"OPENDATE": "上市日",
|
|
38
|
+
"STARTDELIVDATE": "开始交割日",
|
|
39
|
+
"TRADINGDAY": "交易日",
|
|
40
|
+
},
|
|
41
|
+
inplace=True,
|
|
42
|
+
)
|
|
43
|
+
temp_df = temp_df[
|
|
44
|
+
[
|
|
45
|
+
"合约代码",
|
|
46
|
+
"上市日",
|
|
47
|
+
"到期日",
|
|
48
|
+
"开始交割日",
|
|
49
|
+
"最后交割日",
|
|
50
|
+
"挂牌基准价",
|
|
51
|
+
"交易日",
|
|
52
|
+
]
|
|
53
|
+
]
|
|
54
|
+
temp_df["上市日"] = pd.to_datetime(temp_df["上市日"], errors="coerce").dt.date
|
|
55
|
+
temp_df["到期日"] = pd.to_datetime(temp_df["到期日"], errors="coerce").dt.date
|
|
56
|
+
temp_df["开始交割日"] = pd.to_datetime(
|
|
57
|
+
temp_df["开始交割日"], errors="coerce"
|
|
58
|
+
).dt.date
|
|
59
|
+
temp_df["最后交割日"] = pd.to_datetime(
|
|
60
|
+
temp_df["最后交割日"], errors="coerce"
|
|
61
|
+
).dt.date
|
|
62
|
+
temp_df["交易日"] = pd.to_datetime(temp_df["交易日"], errors="coerce").dt.date
|
|
63
|
+
temp_df["挂牌基准价"] = pd.to_numeric(temp_df["挂牌基准价"], errors="coerce")
|
|
64
|
+
return temp_df
|
|
65
|
+
|
|
66
|
+
|
|
67
|
+
if __name__ == "__main__":
|
|
68
|
+
futures_contract_info_ine_df = futures_contract_info_ine(date="20241129")
|
|
69
|
+
print(futures_contract_info_ine_df)
|
|
@@ -1,60 +0,0 @@
|
|
|
1
|
-
#!/usr/bin/env python
|
|
2
|
-
# -*- coding:utf-8 -*-
|
|
3
|
-
"""
|
|
4
|
-
Date: 2024/2/28 19:00
|
|
5
|
-
Desc: 上海国际能源交易中心-业务指南-交易参数汇总(期货)
|
|
6
|
-
https://www.ine.cn/bourseService/summary/?name=currinstrumentprop
|
|
7
|
-
"""
|
|
8
|
-
import pandas as pd
|
|
9
|
-
import requests
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
def futures_contract_info_ine(date: str = "20240228") -> pd.DataFrame:
|
|
13
|
-
"""
|
|
14
|
-
上海国际能源交易中心-业务指南-交易参数汇总(期货)
|
|
15
|
-
https://www.ine.cn/bourseService/summary/?name=currinstrumentprop
|
|
16
|
-
:param date: 查询日期; 交易日
|
|
17
|
-
:type date: str
|
|
18
|
-
:return: 交易参数汇总查询
|
|
19
|
-
:rtype: pandas.DataFrame
|
|
20
|
-
"""
|
|
21
|
-
url = f"https://www.ine.cn/data/instrument/ContractBaseInfo{date}.dat"
|
|
22
|
-
params = {
|
|
23
|
-
"rnd": "0.8312696798757147"
|
|
24
|
-
}
|
|
25
|
-
headers = {
|
|
26
|
-
'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/119.0.0.0 Safari/537.36'
|
|
27
|
-
}
|
|
28
|
-
r = requests.get(url, params=params, headers=headers)
|
|
29
|
-
data_json = r.json()
|
|
30
|
-
temp_df = pd.DataFrame(data_json['ContractBaseInfo'])
|
|
31
|
-
temp_df.rename(columns={
|
|
32
|
-
'BASISPRICE': "挂牌基准价",
|
|
33
|
-
'ENDDELIVDATE': "最后交割日",
|
|
34
|
-
'EXPIREDATE': "到期日",
|
|
35
|
-
'INSTRUMENTID': "合约代码",
|
|
36
|
-
'OPENDATE': "上市日",
|
|
37
|
-
'STARTDELIVDATE': "开始交割日",
|
|
38
|
-
'TRADINGDAY': "交易日",
|
|
39
|
-
}, inplace=True)
|
|
40
|
-
temp_df = temp_df[[
|
|
41
|
-
"合约代码",
|
|
42
|
-
"上市日",
|
|
43
|
-
"到期日",
|
|
44
|
-
"开始交割日",
|
|
45
|
-
"最后交割日",
|
|
46
|
-
"挂牌基准价",
|
|
47
|
-
"交易日",
|
|
48
|
-
]]
|
|
49
|
-
temp_df['上市日'] = pd.to_datetime(temp_df['上市日'], errors="coerce").dt.date
|
|
50
|
-
temp_df['到期日'] = pd.to_datetime(temp_df['到期日'], errors="coerce").dt.date
|
|
51
|
-
temp_df['开始交割日'] = pd.to_datetime(temp_df['开始交割日'], errors="coerce").dt.date
|
|
52
|
-
temp_df['最后交割日'] = pd.to_datetime(temp_df['最后交割日'], errors="coerce").dt.date
|
|
53
|
-
temp_df['交易日'] = pd.to_datetime(temp_df['交易日'], errors="coerce").dt.date
|
|
54
|
-
temp_df['挂牌基准价'] = pd.to_numeric(temp_df['挂牌基准价'], errors="coerce")
|
|
55
|
-
return temp_df
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
if __name__ == '__main__':
|
|
59
|
-
futures_contract_info_ine_df = futures_contract_info_ine(date="20240227")
|
|
60
|
-
print(futures_contract_info_ine_df)
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{akshare-1.15.37 → akshare-1.15.38}/akshare/futures_derivative/futures_contract_info_cffex.py
RENAMED
|
File without changes
|
{akshare-1.15.37 → akshare-1.15.38}/akshare/futures_derivative/futures_contract_info_czce.py
RENAMED
|
File without changes
|
|
File without changes
|
{akshare-1.15.37 → akshare-1.15.38}/akshare/futures_derivative/futures_contract_info_gfex.py
RENAMED
|
File without changes
|
{akshare-1.15.37 → akshare-1.15.38}/akshare/futures_derivative/futures_contract_info_shfe.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|