{"id":46535268,"url":"https://github.com/apptastic-software/trading-calendar","last_synced_at":"2026-03-06T23:32:34.341Z","repository":{"id":190461092,"uuid":"418050159","full_name":"apptastic-software/trading-calendar","owner":"apptastic-software","description":"Free REST API with over 60 exchange calendars for equity and futures markets.","archived":false,"fork":false,"pushed_at":"2026-03-05T06:25:39.000Z","size":1209,"stargazers_count":51,"open_issues_count":4,"forks_count":15,"subscribers_count":3,"default_branch":"main","last_synced_at":"2026-03-05T11:24:47.349Z","etag":null,"topics":["api","calendar","economic-calendar","exchange-calendar","holiday","market-calendar","rest-api","stock-exchange","stock-market","trading","trading-calendar"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/apptastic-software.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2021-10-17T07:08:44.000Z","updated_at":"2026-03-05T06:25:35.000Z","dependencies_parsed_at":"2024-03-10T00:20:18.101Z","dependency_job_id":"0f19ee31-1f07-431d-8f90-6b83cf9158b1","html_url":"https://github.com/apptastic-software/trading-calendar","commit_stats":null,"previous_names":["apptastic-software/trading-calendar"],"tags_count":26,"template":false,"template_full_name":null,"purl":"pkg:github/apptastic-software/trading-calendar","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/apptastic-software%2Ftrading-calendar","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/apptastic-software%2Ftrading-calendar/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/apptastic-software%2Ftrading-calendar/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/apptastic-software%2Ftrading-calendar/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/apptastic-software","download_url":"https://codeload.github.com/apptastic-software/trading-calendar/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/apptastic-software%2Ftrading-calendar/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":30203353,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-03-06T19:07:06.838Z","status":"ssl_error","status_checked_at":"2026-03-06T18:57:34.882Z","response_time":250,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["api","calendar","economic-calendar","exchange-calendar","holiday","market-calendar","rest-api","stock-exchange","stock-market","trading","trading-calendar"],"created_at":"2026-03-06T23:32:33.686Z","updated_at":"2026-03-06T23:32:34.293Z","avatar_url":"https://github.com/apptastic-software.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"Trading Calendar\n================\n[![Build](https://github.com/apptastic-software/trading-calendar/actions/workflows/build.yml/badge.svg)](https://github.com/apptastic-software/trading-calendar/actions/workflows/build.yml)\n[![codecov](https://codecov.io/github/apptastic-software/trading-calendar/graph/badge.svg?token=75QZNYMEOI)](https://codecov.io/github/apptastic-software/trading-calendar)\n[![Docker Image Version](https://img.shields.io/docker/v/apptasticsoftware/trading-calendar?logo=Docker\u0026logoColor=ffffff)](https://hub.docker.com/r/apptasticsoftware/trading-calendar/tags)\n[![API Doc](https://img.shields.io/github/v/release/apptastic-software/trading-calendar?display_name=release\u0026label=api%20doc)](https://apptastic-software.github.io/trading-calendar/api-doc/latest)\n[![License](https://img.shields.io/:license-MIT-blue.svg?style=flat-round)](https://apptastic-software.mit-license.org)\n\nFree trading calendar REST API with holiday, late open, and early close. Over [60 unique exchange calendars](#calendars) for global equity and futures markets.\n\nData includes:\n\n* All holidays, including: trading holidays and partial days\n* Support for timezones and daylight savings time transitions\n* Definitions for weekends for each market\n* Open and close time for each market\n* Current market status (open or closed based on static schedule).\n\n## Running it locally\n\n### Pull image\n\nPull image from [Docker Hub repository][1]:\n```\ndocker pull apptasticsoftware/trading-calendar:latest\n```\nOr pull image from [GitHub Container Registry (GHCR)][2]:\n```\ndocker pull ghcr.io/apptastic-software/trading-calendar:latest\n```\n\n### Start the container\nRun a container based on the image from Docker Hub:\n```\ndocker run -d --name trading-calendar -p 8000:80 apptasticsoftware/trading-calendar\n```\n\nRun a container based on the image from GHCR:\n```\ndocker run -d --name trading-calendar -p 8000:80 ghcr.io/apptastic-software/trading-calendar\n```\n\nIt will take around one minute for the container to start and accept requests.\n\n### Test it\nTest that the container is working:\n```\n http://127.0.0.1:8000/api/v1/markets?mic=XNYS\n```\n\n### Swagger UI\nUI with interactive exploration, call and test API directly from the browser:\n```\nhttp://127.0.0.1:8000/docs\n```\n\n### ReDoc UI\nAlternative API documentation with ReDoc:\n```\nhttp://127.0.0.1:8000/redoc\n```\n\n### OpenAPI\nOpenAPI 3.1 specification:\n```\nhttp://127.0.0.1:8000/api/v1/openapi.json\n```\n\n## Calendars\n\n| Exchange                                                                                   | MIC      | Country          | Region        |\n| ------------------------------------------------------------------------------------------ | -------- | ---------------- |---------------|\n| [Toronto Stock Exchange](https://www.tsx.com)                                              | XTSE     | 🇨🇦 Canada         | North America |\n| [New York Stock Exchange](https://www.nyse.com/index)                                      | XNYS     | 🇺🇸 USA            | North America |\n| [CBOE Futures](https://markets.cboe.com/us/futures/overview)                               | XCBF     | 🇺🇸 USA            | North America |\n| [Chicago Mercantile Exchange](https://www.cmegroup.com)                                    | CMES     | 🇺🇸 USA            | North America |\n| [ICE US](https://www.theice.com/index)                                                     | IEPA     | 🇺🇸 USA            | North America |\n| [Bermuda Stock Exchange](https://www.bsx.com)                                              | XBDA     | 🇧🇲 Bermuda        | North America |\n| [Mexican Stock Exchange](https://www.bmv.com.mx)                                           | XMEX     | 🇲🇽 Mexico         | North America |\n| [B3 S.A. - Brasil Bolsa Balcao](https://www.b3.com.br/en_us)                               | BVMF     | 🇧🇷 Brazil         | South America |\n| [Santiago Stock Exchange](https://inter.bolsadesantiago.com/sitios/en/Paginas/home.aspx)   | XSGO     | 🇨🇱 Chile          | South America |\n| [Colombia Securities Exchange](https://www.bvc.com.co/nueva/index_en.html)                 | XBOG     | 🇨🇴 Colombia       | South America |\n| [Lima Stock Exchange](https://www.bvl.com.pe)                                              | XLIM     | 🇵🇪 Peru           | South America |\n| [Buenos Aires Stock Exchange](https://www.bcba.sba.com.ar)                                 | XBUE     | 🇦🇷 Argentina      | South America |\n| [London Stock Exchange](https://www.londonstockexchange.com/home/homepage.htm)             | XLON     | 🏴󠁧󠁢󠁥󠁮󠁧󠁿 England        | Europe        |\n| [Euronext Amsterdam](https://www.euronext.com/en/regulation/amsterdam)                     | XAMS     | 🇳🇱 Netherlands    | Europe        |\n| [Euronext Brussels](https://www.euronext.com/en/regulation/brussels)                       | XBRU     | 🇧🇪 Belgium        | Europe        |\n| [Luxembourg Stock Exchange](https://www.luxse.com)                                         | XLUX     | 🇱🇺 Luxembourg     | Europe        |\n| [Euronext Lisbon](https://www.euronext.com/en/regulation/lisbon)                           | XLIS     | 🇵🇹 Portugal       | Europe        |\n| [Euronext Paris](https://www.euronext.com/en/regulation/paris)                             | XPAR     | 🇫🇷 France         | Europe        |\n| [Frankfurt Stock Exchange](https://en.boerse-frankfurt.de)                                 | XFRA     | 🇩🇪 Germany        | Europe        |\n| [Deutsche Börse Xetra](https://www.xetra.com/xetra-en)                                     | XETR     | 🇩🇪 Germany        | Europe        |\n| [European Energy Exchange](https://www.eex.com)                                            | XEEE     | 🇩🇪 Germany        | Europe        |\n| [Hamburg Stock Exchange](https://www.boerse-hamburg.de)                                    | XHAM     | 🇩🇪 Germany        | Europe        |\n| [Duesseldorf Stock Exchange](https://www.boerse-duesseldorf.de)                            | XDUS     | 🇩🇪 Germany        | Europe        |\n| [SIX Swiss Exchange](https://www.six-group.com/exchanges/index.html)                       | XSWX     | 🇨🇭 Switzerland    | Europe        |\n| [Bolsa de Madrid](https://www.bolsamadrid.es/ing/aspx/Portada/Portada.aspx)                | XMAD     | 🇪🇸 Spain          | Europe        |\n| [Borsa Italiana](https://www.borsaitaliana.it/homepage/homepage.en.htm)                    | XMIL     | 🇮🇹 Italy          | Europe        |\n| [Wiener Borse](https://www.wienerborse.at/en)                                              | XWBO     | 🇦🇹 Austria        | Europe        |\n| [Copenhagen Stock Exchange](https://www.nasdaqomxnordic.com)                               | XCSE     | 🇩🇰 Denmark        | Europe        |\n| [Helsinki Stock Exchange](https://www.nasdaqomxnordic.com)                                 | XHEL     | 🇫🇮 Finland        | Europe        |\n| [Stockholm Stock Exchange](https://www.nasdaqomxnordic.com)                                | XSTO     | 🇸🇪 Sweden         | Europe        |\n| [Iceland Stock Exchange](https://www.nasdaqomxnordic.com)                                  | XICE     | 🇮🇸 Iceland        | Europe        |\n| [Oslo Stock Exchange](https://www.oslobors.no/ob_eng)                                      | XOSL     | 🇳🇴 Norway         | Europe        |\n| [Irish Stock Exchange](https://www.euronext.com/en/markets/dublin)                         | XDUB     | 🇮🇪 Ireland        | Europe        |\n| [Tallinn Stock Exchange](https://nasdaqbaltic.com)                                         | XTAL     | 🇪🇪 Estonia        | Europe        |\n| [Riga Stock Exchange](https://nasdaqbaltic.com)                                            | XRIS     | 🇱🇻 Latvia         | Europe        |\n| [Vilnius Stock Exchange](https://nasdaqbaltic.com)                                         | XLIT     | 🇱🇹 Lithuania      | Europe        |\n| [Poland Stock Exchange](https://www.gpw.pl)                                                | XWAR     | 🇵🇱 Poland         | Europe        |\n| [Prague Stock Exchange](https://www.pse.cz/en)                                             | XPRA     | 🇨🇿 Czech Republic | Europe        |\n| [Bucharest Stock Exchange](https://www.bvb.ro)                                             | XBSE     | 🇷🇴 Romania        | Europe        |\n| [Zagreb Stock Exchange](https://www.zse.hr/en)                                             | XZAG     | 🇭🇷 Croatia        | Europe        |\n| [Ljubljana Stock Exchange](https://ljse.si/en)                                             | XLJU     | 🇸🇮 Slovenia       | Europe        |\n| [Bratislava Stock Exchange](https://www.bsse.sk/bcpb/en)                                   | XBRA     | 🇸🇰 Slovakia       | Europe        |\n| [Belgrade Stock Exchange](https://www.belex.rs/eng)                                        | XBEL     | 🇷🇸 Serbia         | Europe        |\n| [Budapest Stock Exchange](https://bse.hu)                                                  | XBUD     | 🇭🇺 Hungary        | Europe        |\n| [Moscow Exchange](https://www.moex.com/en)                                                 | XMOS     | 🇷🇺 Russia         | Europe        |\n| [Astana International Exchange](https://www.aix.kz)                                        | AIXK     | 🇰🇿 Kazakhstan     | Europe        |\n| [Athens Stock Exchange](https://www.athexgroup.gr)                                         | ASEX     | 🇬🇷 Greece         | Europe        |\n| [Cyprus Stock Exchange](https://www.cse.com.cy/en-GB/home)                                 | XCYS     | 🇨🇾 Cyprus         | Europe        |\n| [Istanbul Stock Exchange](https://www.borsaistanbul.com/en)                                | XIST     | 🇹🇷 Turkey         | Europe        |\n| [Australian Securities Exchange](https://www.asx.com.au)                                   | XASX     | 🇦🇺 Australia      | Asia-Pacific  |\n| [New Zealand Exchange](https://www.nzx.com)                                                | XNZE     | 🇳🇿 New Zealand    | Asia-Pacific  |\n| [Singapore Exchange](https://www.sgx.com)                                                  | XSES     | 🇸🇬 Singapore      | Asia-Pacific  |\n| [Shanghai Stock Exchange](https://english.sse.com.cn)                                      | XSHG     | 🇨🇳 China          | Asia-Pacific  |\n| [Hong Kong Stock Exchange](https://www.hkex.com.hk/?sc_lang=en)                            | XHKG     | 🇭🇰 Hong Kong      | Asia-Pacific  |\n| [Taiwan Stock Exchange Corp.](https://www.twse.com.tw/en)                                  | XTAI     | 🇹🇼 Taiwan         | Asia-Pacific  |\n| [Tokyo Stock Exchange](https://www.jpx.co.jp/english)                                      | XTKS     | 🇯🇵 Japan          | Asia-Pacific  |\n| [Korea Exchange](https://global.krx.co.kr)                                                 | XKRX     | 🇰🇷 South Korea    | Asia-Pacific  |\n| [Malaysia Stock Exchange](https://www.bursamalaysia.com)                                   | XKLS     | 🇲🇾 Malaysia       | Asia-Pacific  |\n| [Philippine Stock Exchange](https://www.pse.com.ph/stockMarket/home.html)                  | XPHS     | 🇵🇭 Philippines    | Asia-Pacific  |\n| [Stock Exchange of Thailand](https://www.set.or.th/set/mainpage.do?language=en\u0026country=US) | XBKK     | 🇹🇭 Thailand       | Asia-Pacific  |\n| [Indonesia Stock Exchange](https://www.idx.co.id)                                          | XIDX     | 🇮🇩 Indonesia      | Asia-Pacific  |\n| [Bombay Stock Exchange](https://www.bseindia.com)                                          | XBOM     | 🇮🇳 India          | Asia-Pacific  |\n| [Pakistan Stock Exchange](https://www.psx.com.pk)                                          | XKAR     | 🇵🇰 Pakistan       | Asia-Pacific  |\n| [Tel Aviv Stock Exchange](https://www.tase.co.il/Eng/Pages/Homepage.aspx)                  | XTAE     | 🇮🇱 Israel         | Middle East   |\n| [Saudi Stock Exchange](https://www.saudiexchange.sa)                                       | XSAU     | 🇸🇦 Saudi Arabia   | Middle East   |\n| [Johannesburg Stock Exchange](https://www.jse.co.za/z)                                     | XJSE     | 🇿🇦 South Africa   | Africa        |\n\n\u003e Note that exchange calendars are defined by their [ISO-10383](https://www.iso20022.org/10383/iso-10383-market-identifier-codes) market identifier code (MIC).\n\nLicense\n-------\n\n    MIT License\n    \n    Copyright (c) 2024, Apptastic Software\n    \n    Permission is hereby granted, free of charge, to any person obtaining a copy\n    of this software and associated documentation files (the \"Software\"), to deal\n    in the Software without restriction, including without limitation the rights\n    to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n    copies of the Software, and to permit persons to whom the Software is\n    furnished to do so, subject to the following conditions:\n    \n    The above copyright notice and this permission notice shall be included in all\n    copies or substantial portions of the Software.\n    \n    THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n    IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n    FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n    AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n    LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n    OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\n    SOFTWARE.\n\n[1]: https://hub.docker.com/r/apptasticsoftware/trading-calendar\n[2]: https://github.com/apptastic-software/trading-calendar/pkgs/container/trading-calendar\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fapptastic-software%2Ftrading-calendar","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fapptastic-software%2Ftrading-calendar","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fapptastic-software%2Ftrading-calendar/lists"}