那曲檬骨新材料有限公司

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線(xiàn)課程
  • 觀(guān)看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

如何使用Python獲得市場(chǎng)的交易日歷

科技綠洲 ? 來(lái)源:Python實(shí)用寶典 ? 作者:Python實(shí)用寶典 ? 2023-10-21 10:37 ? 次閱讀

Exchange_calendars 是一個(gè)用于查詢(xún)證券交易日歷的 Python 庫(kù)。開(kāi)箱即用,內(nèi)含世界50+個(gè)交易所的交易日歷,包括中國(guó)市場(chǎng)和港股市場(chǎng),非常方便。

同時(shí),如果你找到了Exchange_calendars 上沒(méi)有的市場(chǎng)的交易日歷,可以向他們提交PR,創(chuàng)建一個(gè)新的交易所日歷:
https://github.com/gerrymanoim/exchange_calendars

注意,本模塊最低支持的Python版本為3.8.

1.準(zhǔn)備

開(kāi)始之前,你要確保Python和pip已經(jīng)成功安裝在電腦上,如果沒(méi)有,可以訪(fǎng)問(wèn)這篇文章:超詳細(xì)Python安裝指南 進(jìn)行安裝。

**(可選1) **如果你用Python的目的是數(shù)據(jù)分析,可以直接安裝Anaconda:Python數(shù)據(jù)分析與挖掘好幫手—Anaconda,它內(nèi)置了Python和pip.

**(可選2) **此外,推薦大家用VSCode編輯器,它有許多的優(yōu)點(diǎn):Python 編程的最好搭檔—VSCode 詳細(xì)指南

請(qǐng)選擇以下任一種方式輸入命令安裝依賴(lài)

  1. Windows 環(huán)境 打開(kāi) Cmd (開(kāi)始-運(yùn)行-CMD)。
  2. MacOS 環(huán)境 打開(kāi) Terminal (command+空格輸入Terminal)。
  3. 如果你用的是 VSCode編輯器 或 Pycharm,可以直接使用界面下方的Terminal.
pip install exchange_calendars

2.基本使用

獲取可用日歷的列表:

import exchange_calendars as xcals
print(xcals.get_calendar_names(include_aliases=False))

結(jié)果如下:

['24/5', '24/7', 'AIXK', 'ASEX', 'BVMF', 'CMES', 'IEPA', 'XAMS', 'XASX', 'XBKK', 'XBOG', 'XBOM', 'XBRU', 'XBSE', 'XBUD', 'XBUE', 'XCBF', 'XCSE', 'XDUB', 'XETR', 'XFRA', 'XHEL', 'XHKG', 'XICE', 'XIDX', 'XIST', 'XJSE', 'XKAR', 'XKLS', 'XKRX', 'XLIM', 'XLIS', 'XLON', 'XMAD', 'XMEX', 'XMIL', 'XMOS', 'XNYS', 'XNZE', 'XOSL', 'XPAR', 'XPHS', 'XPRA', 'XSES', 'XSGO', 'XSHG', 'XSTO', 'XSWX', 'XTAE', 'XTAI', 'XTKS', 'XTSE', 'XWAR', 'XWBO', 'us_futures']

其中,XSHG就是中國(guó)的滬市、XHKG就是港股。

獲取滬市日歷:

import exchange_calendars as xcals
xshg = xcals.get_calendar("XSHG")

查詢(xún)某個(gè)區(qū)間日程市場(chǎng)是否有開(kāi)盤(pán):

import exchange_calendars as xcals
xshg = xcals.get_calendar("XSHG")
print(xshg.schedule.loc["2021-12-29":"2022-08-12"])

效果如下:

open               break_start                 break_end                     close
2021-12-29 2021-12-29 01:30:00+00:00 2021-12-29 03:30:00+00:00 2021-12-29 05:00:00+00:00 2021-12-29 07:00:00+00:00
2021-12-30 2021-12-30 01:30:00+00:00 2021-12-30 03:30:00+00:00 2021-12-30 05:00:00+00:00 2021-12-30 07:00:00+00:00
2021-12-31 2021-12-31 01:30:00+00:00 2021-12-31 03:30:00+00:00 2021-12-31 05:00:00+00:00 2021-12-31 07:00:00+00:00
2022-01-04 2022-01-04 01:30:00+00:00 2022-01-04 03:30:00+00:00 2022-01-04 05:00:00+00:00 2022-01-04 07:00:00+00:00
2022-01-05 2022-01-05 01:30:00+00:00 2022-01-05 03:30:00+00:00 2022-01-05 05:00:00+00:00 2022-01-05 07:00:00+00:00
... ... ... ... ...
2022-08-08 2022-08-08 01:30:00+00:00 2022-08-08 03:30:00+00:00 2022-08-08 05:00:00+00:00 2022-08-08 07:00:00+00:00
2022-08-09 2022-08-09 01:30:00+00:00 2022-08-09 03:30:00+00:00 2022-08-09 05:00:00+00:00 2022-08-09 07:00:00+00:00
2022-08-10 2022-08-10 01:30:00+00:00 2022-08-10 03:30:00+00:00 2022-08-10 05:00:00+00:00 2022-08-10 07:00:00+00:00
2022-08-11 2022-08-11 01:30:00+00:00 2022-08-11 03:30:00+00:00 2022-08-11 05:00:00+00:00 2022-08-11 07:00:00+00:00
2022-08-12 2022-08-12 01:30:00+00:00 2022-08-12 03:30:00+00:00 2022-08-12 05:00:00+00:00 2022-08-12 07:00:00+00:00

[151 rows x 4 columns]

可見(jiàn),他直接返回了這個(gè)區(qū)間中所有開(kāi)盤(pán)的日期作為index,并附帶了開(kāi)盤(pán)和收盤(pán)的UTC時(shí)間(需要+8)。

如果你只需要開(kāi)市的日期,可以這樣:

# 公眾號(hào):二七阿爾量化
import exchange_calendars as xcals
xshg = xcals.get_calendar("XSHG")
xshg_range = xshg.schedule.loc["2021-12-29":"2022-08-12"]
print(xshg_range.index.strftime("%Y-%m-%d").tolist())

效果如下:

['2021-12-29', '2021-12-30', '2021-12-31', '2022-01-04', '2022-01-05', '2022-01-06', '2022-01-07', '2022-01-10', '2022-01-11', '2022-01-12', '2022-01-13', '2022-01-14', '2022-01-17', '2022-01-18', '2022-01-19', '2022-01-20', '2022-01-21', '2022-01-24', '2022-01-25', '2022-01-26', '2022-01-27', '2022-01-28', '2022-02-07', '2022-02-08', '2022-02-09', '2022-02-10', '2022-02-11', '2022-02-14', '2022-02-15', '2022-02-16', '2022-02-17', '2022-02-18', '2022-02-21', '2022-02-22', '2022-02-23', '2022-02-24', '2022-02-25', '2022-02-28', '2022-03-01', '2022-03-02', '2022-03-03', '2022-03-04', '2022-03-07', '2022-03-08', '2022-03-09', '2022-03-10', '2022-03-11', '2022-03-14', '2022-03-15', '2022-03-16', '2022-03-17', '2022-03-18', '2022-03-21', '2022-03-22', '2022-03-23', '2022-03-24', '2022-03-25', '2022-03-28', '2022-03-29', '2022-03-30', '2022-03-31', '2022-04-01', '2022-04-06', '2022-04-07', '2022-04-08', '2022-04-11', '2022-04-12', '2022-04-13', '2022-04-14', '2022-04-15', '2022-04-18', '2022-04-19', '2022-04-20', '2022-04-21', '2022-04-22', '2022-04-25', '2022-04-26', '2022-04-27', '2022-04-28', '2022-04-29', '2022-05-05', '2022-05-06', '2022-05-09', '2022-05-10', '2022-05-11', '2022-05-12', '2022-05-13', '2022-05-16', '2022-05-17', '2022-05-18', '2022-05-19', '2022-05-20', '2022-05-23', '2022-05-24', '2022-05-25', '2022-05-26', '2022-05-27', '2022-05-30', '2022-05-31', '2022-06-01', '2022-06-02', '2022-06-06', '2022-06-07', '2022-06-08', '2022-06-09', '2022-06-10', '2022-06-13', '2022-06-14', '2022-06-15', '2022-06-16', '2022-06-17', '2022-06-20', '2022-06-21', '2022-06-22', '2022-06-23', '2022-06-24', '2022-06-27', '2022-06-28', '2022-06-29', '2022-06-30', '2022-07-01', '2022-07-04', '2022-07-05', '2022-07-06', '2022-07-07', '2022-07-08', '2022-07-11', '2022-07-12', '2022-07-13', '2022-07-14', '2022-07-15', '2022-07-18', '2022-07-19', '2022-07-20', '2022-07-21', '2022-07-22', '2022-07-25', '2022-07-26', '2022-07-27', '2022-07-28', '2022-07-29', '2022-08-01', '2022-08-02', '2022-08-03', '2022-08-04', '2022-08-05', '2022-08-08', '2022-08-09', '2022-08-10', '2022-08-11', '2022-08-12']

3.高級(jí)使用

判斷某一天是否為交易日:

# 公眾號(hào):二七阿爾量化

import exchange_calendars as xcals
xshg = xcals.get_calendar("XSHG")
print(xshg.is_session("2022-12-30"))
# True

獲取某一天后的N個(gè)交易日:

# 公眾號(hào):二七阿爾量化

import exchange_calendars as xcals
xshg = xcals.get_calendar("XSHG")
print(xshg.sessions_window("2022-12-30", 7))
# DatetimeIndex(['2022-12-30', '2023-01-03', '2023-01-04', '2023-01-05',
# '2023-01-06', '2023-01-09', '2023-01-10'],
# dtype='datetime64[ns]', freq='C')

獲取某一天后的下一個(gè)交易日:

# 公眾號(hào):二七阿爾量化

import exchange_calendars as xcals
xshg = xcals.get_calendar("XSHG")
print(xshg.date_to_session("2022-01-01", direction="next"))
# 2022-01-04 00:00:00

獲取某一天后的上一個(gè)交易日:

# 公眾號(hào):二七阿爾量化

import exchange_calendars as xcals
xshg = xcals.get_calendar("XSHG")
print(xshg.date_to_session("2022-01-01", direction="previous"))
# 2021-12-31 00:00:00

獲取分鐘級(jí)交易區(qū)間:

import exchange_calendars as xcals
xshg = xcals.get_calendar("XSHG")
print(xshg.session_minutes("2022-01-04"))
# DatetimeIndex(['2022-01-04 01:30:00+00:00', '2022-01-04 01:31:00+00:00',
# '2022-01-04 01:32:00+00:00', '2022-01-04 01:33:00+00:00',
# '2022-01-04 01:34:00+00:00', '2022-01-04 01:35:00+00:00',
# '2022-01-04 01:36:00+00:00', '2022-01-04 01:37:00+00:00',
# '2022-01-04 01:38:00+00:00', '2022-01-04 01:39:00+00:00',
# ...
# '2022-01-04 06:50:00+00:00', '2022-01-04 06:51:00+00:00',
# '2022-01-04 06:52:00+00:00', '2022-01-04 06:53:00+00:00',
# '2022-01-04 06:54:00+00:00', '2022-01-04 06:55:00+00:00',
# '2022-01-04 06:56:00+00:00', '2022-01-04 06:57:00+00:00',
# '2022-01-04 06:58:00+00:00', '2022-01-04 06:59:00+00:00'],
# dtype='datetime64[ns, UTC]', length=240, freq=None)

交易時(shí)間按指定數(shù)字分割:

import exchange_calendars as xcals
xshg = xcals.get_calendar("XSHG")
print(xshg.trading_index(
    "2021-12-30", "2021-12-31", period="30T", force=True
))
# IntervalIndex([[2021-12-30 01:30:00, 2021-12-30 02:00:00), [2021-12-30 02:00:00, 2021-12-30 02:30:00), [2021-12-30 02:30:00, 2021-12-30 03:00:00), [2021-12-30 03:00:00, 2021-12-30 03:30:00), [2021-12-30 05:00:00, 2021-12-30 05:30:00) ... [2021-12-31 03:00:00, 2021-12-31 03:30:00), [2021-12-31 05:00:00, 2021-12-31 05:30:00), [2021-12-31 05:30:00, 2021-12-31 06:00:00), [2021-12-31 06:00:00, 2021-12-31 06:30:00), [2021-12-31 06:30:00, 2021-12-31 07:00:00)],
# closed='left',
# dtype='interval[datetime64[ns, UTC]]')
聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀(guān)點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • WINDOWS
    +關(guān)注

    關(guān)注

    4

    文章

    3551

    瀏覽量

    88940
  • 編輯器
    +關(guān)注

    關(guān)注

    1

    文章

    806

    瀏覽量

    31215
  • 數(shù)據(jù)分析
    +關(guān)注

    關(guān)注

    2

    文章

    1452

    瀏覽量

    34086
  • python
    +關(guān)注

    關(guān)注

    56

    文章

    4800

    瀏覽量

    84839
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    柯達(dá)股價(jià)30個(gè)交易日均低于1美元收退市警告我的搜狐

     1月4日消息,據(jù)國(guó)外媒體報(bào)道,柯達(dá)(Eastman Kodak Co)美國(guó)時(shí)間周二表示,因公司平均收盤(pán)價(jià)已連續(xù)30個(gè)交易日低于1美元,它已收到紐約證券交易所的警告通知書(shū)。這一消息導(dǎo)致柯達(dá)股價(jià)周二盤(pán)
    發(fā)表于 01-04 14:53

    DIY電子日歷

    把以前做的電子日歷那出來(lái)曬曬,有點(diǎn)灰塵了,不過(guò)好像還能用,只是最后的那個(gè)8*8點(diǎn)陣好像壞了一條線(xiàn)。我設(shè)計(jì)開(kāi)發(fā)的是一種新型“電子日歷鐘”它可以全方面顯示時(shí)間,年,月,日。星期,提供中文顯示,農(nóng)歷顯示
    發(fā)表于 02-15 08:45

    樹(shù)莓派多功能數(shù)碼壁掛日歷

    本帖最后由 348081236 于 2016-1-12 11:29 編輯 還在用筆在日歷上的重要日子畫(huà)圈寫(xiě)字嗎?如果是那你就OUT了。上圖這個(gè)數(shù)碼壁掛日歷除了日歷的基本功能,它還能預(yù)測(cè)天氣
    發(fā)表于 01-12 11:27

    Python就業(yè)狀況分析

    在Stack Overflow的2018年開(kāi)發(fā)者調(diào)查中,Python是最理想的語(yǔ)言(即調(diào)查者最有興趣學(xué)習(xí)的語(yǔ)言);這是Python連續(xù)第二年獲得該排名。 Python用戶(hù)在排名最高的編
    發(fā)表于 05-23 15:20

    比特幣交易所系統(tǒng)開(kāi)發(fā)如何適應(yīng)海外市場(chǎng)

    手中的一種數(shù)字資產(chǎn)以現(xiàn)貨價(jià)格兌換成另一種數(shù)字資產(chǎn)、法幣間的交易。 點(diǎn)對(duì)點(diǎn)交易:用現(xiàn)金獲得數(shù)字資產(chǎn)的交易方式,數(shù)字資產(chǎn)在平臺(tái)托管,撮合個(gè)體用戶(hù)之間通過(guò)銀行卡、支付寶、微信支付手段
    發(fā)表于 05-28 14:55

    數(shù)字資產(chǎn)交易平臺(tái)搭建交易市場(chǎng)

    區(qū)塊鏈技術(shù)作為一種分布式共享數(shù)據(jù)庫(kù)技術(shù)正在方興未艾,其分散性、透明性、公平性和開(kāi)放性與互聯(lián)網(wǎng)的理念是一致的,它在互聯(lián)網(wǎng)中的應(yīng)用將進(jìn)一步推動(dòng)互聯(lián)網(wǎng)的建設(shè)。隨著全球市場(chǎng)的快速發(fā)展,由于全球用戶(hù)對(duì)數(shù)字資產(chǎn)
    發(fā)表于 07-20 11:20

    Python談yield表達(dá)式及其批量獲得minibatches的應(yīng)用

    Python 小談 yield 表達(dá)式及其批量獲得 minibatches 的應(yīng)用
    發(fā)表于 05-21 08:20

    樂(lè)視網(wǎng)復(fù)牌時(shí)間已確定:10個(gè)交易日內(nèi)復(fù)牌

    樂(lè)視官網(wǎng)于12月14日晚間公告稱(chēng),公司運(yùn)營(yíng)一切正常,基本面未發(fā)生變化,正在籌劃通過(guò)非公開(kāi)發(fā)行股票及其他資本方式引入戰(zhàn)略投資者。預(yù)計(jì)繼續(xù)停牌時(shí)間不超過(guò)10個(gè)交易日
    發(fā)表于 12-15 09:12 ?8477次閱讀

    在線(xiàn)交易日志的用戶(hù)購(gòu)買(mǎi)行為可視化分析系統(tǒng)

    在線(xiàn)交易日志,即用戶(hù)通過(guò)電商平臺(tái)購(gòu)買(mǎi)商品產(chǎn)生的交易記錄,包括用戶(hù)、商品、交易及商家的相關(guān)信息,反映了用戶(hù)的購(gòu)買(mǎi)行為.現(xiàn)有的可視化方法未能充分結(jié)合在線(xiàn)交易日志的時(shí)序、層次、地理、多維等特
    發(fā)表于 12-26 15:34 ?1次下載

    樂(lè)視網(wǎng)復(fù)牌的第10個(gè)交易日 市值流失398.17億

    據(jù)報(bào)道,自樂(lè)視宣布復(fù)牌以來(lái),它的每一步動(dòng)向都大受關(guān)注,近日樂(lè)視網(wǎng)股市最新消息,樂(lè)視網(wǎng)復(fù)牌的第10個(gè)交易日,已經(jīng)連續(xù)第10天跌停,據(jù)悉市值蒸發(fā)398.17億元。
    發(fā)表于 02-07 09:21 ?650次閱讀
    樂(lè)視網(wǎng)復(fù)牌的第10個(gè)<b class='flag-5'>交易日</b> 市值流失398.17億

    python代碼示例之基于Python日歷api調(diào)用代碼實(shí)例

    本文檔的主要內(nèi)容詳細(xì)介紹的是python代碼示例之基于Python日歷api調(diào)用代碼實(shí)例。
    發(fā)表于 09-06 14:25 ?42次下載
    <b class='flag-5'>python</b>代碼示例之基于<b class='flag-5'>Python</b>的<b class='flag-5'>日歷</b>api調(diào)用代碼實(shí)例

    上市第二個(gè)交易日一度暴漲90%,蔚來(lái)汽車(chē)的一切才剛剛開(kāi)始

    蔚來(lái)汽車(chē)在上市第二個(gè)交易日迎來(lái)暴漲,盤(pán)中股價(jià)一度飆漲超90%,刷新盤(pán)中歷史高位至12.69美元,市值也一度達(dá)到130.1994億美元。截止收盤(pán),蔚來(lái)汽車(chē)股價(jià)大漲75.76%報(bào)收11.60美元,市值為119.02億。
    發(fā)表于 09-14 16:28 ?2935次閱讀

    樂(lè)視網(wǎng)退市至老三板后6個(gè)交易日都漲停 共漲33%

    退市后,自2月3日起,以集合競(jìng)價(jià)的方式在老三板進(jìn)行股份轉(zhuǎn)讓?zhuān)啃瞧谝弧⑷⑽甯鬓D(zhuǎn)讓一次。轉(zhuǎn)讓首日?qǐng)?bào)價(jià)區(qū)間為0.17元/股至0.19元/股。 截至目前,樂(lè)視網(wǎng)3已經(jīng)在六個(gè)交易日進(jìn)行轉(zhuǎn)讓?zhuān)?b class='flag-5'>獲得六個(gè)漲停板,最新收盤(pán)價(jià)為0.24元/股,較退市前最后一個(gè)
    的頭像 發(fā)表于 02-24 10:15 ?3464次閱讀

    特斯拉股價(jià)近10個(gè)交易日下跌19% 市值縮水超過(guò)1500億美元

    2月24日消息,據(jù)國(guó)外媒體報(bào)道,在2月8日提交給美國(guó)證券交易委員會(huì)的文件中,特斯拉披露他們?cè)?月份買(mǎi)入了15億美元的比特幣,在那之后,比特幣的價(jià)格雖然有明顯上漲,特斯拉也獲得了可觀(guān)的賬面收益,但2月
    的頭像 發(fā)表于 02-24 14:57 ?1741次閱讀

    使用Raspberry Pi 3自制智能相框和日歷—第二部分

    本教程的第二部分將帶您完成構(gòu)建智能相框和日歷的框架、連接PIR運(yùn)動(dòng)傳感器和控制相框幻燈片顯示向日歷顯示的過(guò)渡這些步驟。該項(xiàng)目將繼續(xù)使用本教程的使用Raspberry Pi 3自制智能相框和日歷—第一部分中所設(shè)置的所有內(nèi)容,并帶您
    的頭像 發(fā)表于 02-24 17:51 ?1373次閱讀
    使用Raspberry Pi 3自制智能相框和<b class='flag-5'>日歷</b>—第二部分
    百家乐信息| 百家乐翻天粤语| 澳门百家乐官网群官网| 大发888娱乐城俄罗斯| 百家乐游戏规测| 金臂百家乐官网开户送彩金| bet365存款| 大三巴百家乐的玩法技巧和规则| 做生意的风水朝向| 百家乐官网15人专用桌布| 法老王娱乐城| 莆田棋牌游戏| 博彩e族论坛| 百家乐单机版的| 百家乐官网微心打法| 皇冠现金网提款问题| 百家乐桌套装| 百家乐技巧微笑心法| 做生意用的 风水上最好的尺寸有| 百家乐官网英皇娱乐城| 体育博彩网| 大发888游戏平台 送1666元礼金领取lrm| 跨国际百家乐的玩法技巧和规则| 百家乐折叠桌| 博盈百家乐游戏| 五张百家乐官网的玩法技巧和规则| 狮威娱乐城| 大发888足球开户| 百家乐冼牌机| 发中发百家乐的玩法技巧和规则| 百家乐官网群lookcc| 百家乐官网游戏发展| 新竹县| 大发娱乐场官方下载| 金界百家乐的玩法技巧和规则| 百家乐是怎样算牌| 百家乐破解仪| 聚宝盆百家乐的玩法技巧和规则 | 东海县| 大发888游戏下载平台| 大发888娱乐城充值lm0|