Skip to main content

A Python wrapper around the data provided by the ISO 10383 specification.

Project description

A Python wrapper around the data provided by the ISO 10383 specification.

Install

$ pip install iso10383

Usage

The package is relatively easy to use. The MIC class is the enum that contains all the entries:

>>> from iso10383 import MIC
>>> MIC.xnys.value
MICEntry(
    mic='XNYS',
    market_name='NEW YORK STOCK EXCHANGE, INC.',
    market_category_code=<MCC.nspd: 6>,
    creation_date=datetime.date(2005, 5, 23),
    status=<Status.active: 0>,
    city=<City.new_york: 208>,
    operating_mic=None,
    institution_description=None,
    legel_entity_name=None,
    legal_entity_identifier=None,
    acronym='NYSE',
    iso_country_code=<ISOCC.us: 137>,
    website='www.nyse.com',
    last_update_date=datetime.date(2005, 5, 23),
    last_validation_date=None,
    expiry_date=None,
    comments=None
)

Each MICEntry has the following attributes, which correspond to those found in the specification:

mic                     : str
market_name             : str
market_category_code    : MCC
creation_date           : datetime.date
status                  : Status
city                    : City          | None
operating_mic           : MICEntry      | None
institution_description : str           | None
legel_entity_name       : str           | None
legal_entity_identifier : str           | None
acronym                 : str           | None
iso_country_code        : ISOCC         | None
website                 : str           | None
last_update_date        : datetime.date | None
last_validation_date    : datetime.date | None
expiry_date             : datetime.date | None
comments                : str           | None

MCC, Status, City, and ISOCC are supporting enums that can be imported separately.

The operating/segment column is notably not present, and is instead indicated by the presence of the operating_mic attribute (that is, whether or not it is None).

Notes

Given the large number of entries in the ISO 10383 specification, hard-coding an enum would cause major performance issues with intellisense and linters. For this reason, a dummy enum was hardcoded, and is then replaced by deserializing the contents at runtime. This means there is a small performance hit (on the order of milliseconds) at runtime when the module is imported.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

iso10383-2024.10.14.post2.tar.gz (152.6 kB view details)

Uploaded Source

Built Distribution

iso10383-2024.10.14.post2-py3-none-any.whl (151.0 kB view details)

Uploaded Python 3

File details

Details for the file iso10383-2024.10.14.post2.tar.gz.

File metadata

  • Download URL: iso10383-2024.10.14.post2.tar.gz
  • Upload date:
  • Size: 152.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.12.7

File hashes

Hashes for iso10383-2024.10.14.post2.tar.gz
Algorithm Hash digest
SHA256 df3f69b942be114f78fd3ad24957a43148e519a122ef63ed8d9e4011acc1e31b
MD5 61a1850fcffeb392d075cdececf02e20
BLAKE2b-256 f23885b8c24aaeb6ff63f78913a71d0fd43090c3a725451c9fcbea1fe8571bc3

See more details on using hashes here.

File details

Details for the file iso10383-2024.10.14.post2-py3-none-any.whl.

File metadata

File hashes

Hashes for iso10383-2024.10.14.post2-py3-none-any.whl
Algorithm Hash digest
SHA256 60193d19984a31b2081e077d7bc5214e5fb7f9f0580550b5ff46e9b661b1b19a
MD5 bcc503edbb0df08247dd710f6258b871
BLAKE2b-256 1f20f7ac62bf00ba42dfcbb06f994e4c27c3da9a5c3271ec544a1ac6df8169c7

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page