Skip to main content

MOEX ISS API

Project description

MOEX ISS API

https://github.com/WLM1ke/apimoex/workflows/tests/badge.svg https://codecov.io/gh/WLM1ke/apimoex/branch/master/graph/badge.svg https://badge.fury.io/py/apimoex.svg

Реализация части запросов к MOEX Informational & Statistical Server.

Документация

https://wlm1ke.github.io/apimoex/

Основные возможности

Реализовано несколько функций-запросов информации о торгуемых акциях и их исторических котировках, результаты которых напрямую конвертируются в pandas.DataFrame.

Работа функций базируется на универсальном клиенте, позволяющем осуществлять произвольные запросы к MOEX ISS, поэтому перечень доступных функций-запросов может быть легко расширен. При необходимости добавления функций воспользуйтесь Issues на GitHub с указанием ссылки на описание запроса:

Начало работы

Установка

$ pip install apimoex

Пример использования реализованных запросов

История котировок SNGSP в режиме TQBR:

import requests

import apimoex
import pandas as pd


with requests.Session() as session:
    data = apimoex.get_board_history(session, 'SNGSP')
    df = pd.DataFrame(data)
    df.set_index('TRADEDATE', inplace=True)
    print(df.head(), '\n')
    print(df.tail(), '\n')
    df.info()
           BOARDID  CLOSE    VOLUME         VALUE
TRADEDATE
2014-06-09    TQBR  27.48  12674200  3.484352e+08
2014-06-10    TQBR  27.55  14035900  3.856417e+08
2014-06-11    TQBR  28.15  27208800  7.602146e+08
2014-06-16    TQBR  28.27  68059900  1.913160e+09
2014-06-17    TQBR  28.20  22101600  6.292844e+08

           BOARDID   CLOSE     VOLUME         VALUE
TRADEDATE
2019-09-04    TQBR  38.060  243010500  9.348435e+09
2019-09-05    TQBR  36.140  129366600  4.704949e+09
2019-09-06    TQBR  35.475   62389000  2.201887e+09
2019-09-09    TQBR  34.570   54331300  1.905837e+09
2019-09-10    TQBR  35.250   45966000  1.605849e+09

<class 'pandas.core.frame.DataFrame'>
Index: 1326 entries, 2014-06-09 to 2019-09-10
Data columns (total 4 columns):
BOARDID    1326 non-null object
CLOSE      1326 non-null float64
VOLUME     1326 non-null int64
VALUE      1326 non-null float64
dtypes: float64(2), int64(1), object(1)
memory usage: 51.8+ KB

Пример реализации запроса с помощью клиента

Перечень акций, торгующихся в режиме TQBR (описание запроса):

import requests

import apimoex
import pandas as pd


request_url = ('https://iss.moex.com/iss/engines/stock/'
               'markets/shares/boards/TQBR/securities.json')
arguments = {'securities.columns': ('SECID,'
                                    'REGNUMBER,'
                                    'LOTSIZE,'
                                    'SHORTNAME')}
with requests.Session() as session:
    iss = apimoex.ISSClient(session, request_url, arguments)
    data = iss.get()
    df = pd.DataFrame(data['securities'])
    df.set_index('SECID', inplace=True)
    print(df.head(), '\n')
    print(df.tail(), '\n')
    df.info()
          REGNUMBER  LOTSIZE   SHORTNAME
SECID
ABRD   1-02-12500-A       10  АбрауДюрсо
AFKS   1-05-01669-A      100  Система ао
AFLT   1-01-00010-A       10    Аэрофлот
AGRO           None        1    AGRO-гдр
AKRN   1-03-00207-A        1       Акрон

          REGNUMBER  LOTSIZE   SHORTNAME
SECID
YNDX           None        1  Yandex clA
YRSB   1-01-50099-A       10     ТНСэнЯр
YRSBP  2-01-50099-A       10   ТНСэнЯр-п
ZILL   1-02-00036-A        1      ЗИЛ ао
ZVEZ   1-01-00169-D     1000   ЗВЕЗДА ао

<class 'pandas.core.frame.DataFrame'>
Index: 264 entries, ABRD to ZVEZ
Data columns (total 3 columns):
REGNUMBER    255 non-null object
LOTSIZE      264 non-null int64
SHORTNAME    264 non-null object
dtypes: int64(1), object(2)
memory usage: 8.2+ KB

Project details


Download files

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

Files for apimoex, version 1.1.2
Filename, size File type Python version Upload date Hashes
Filename, size apimoex-1.1.2-py3-none-any.whl (11.1 kB) File type Wheel Python version py3 Upload date Hashes View hashes
Filename, size apimoex-1.1.2.tar.gz (11.1 kB) File type Source Python version None Upload date Hashes View hashes

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN SignalFx SignalFx Supporter DigiCert DigiCert EV certificate StatusPage StatusPage Status page