Moex Iss
Реализация части запросов к MOEX Informational & Statistical Server.
Реализовано несколько функций-запросов информации о торгуемых ценных бумаг, результаты которых напрямую конвертируются в Ruby класс.
Класс ценной бумаги имеет методы для получения наиболее часто использумеых показателей ценной бумаги а так же метод для получения полного ответа полученного от MOEX ISS.
Установка
# Gemfile
gem "moex_iss"А затем выполнить:
$ bundle install
Или установите его самостоятельно как:
$ gem install moex_iss
Поддерживаемые Ruby версии
- Ruby (MRI) >= 2.7.0
- JRuby >= 9.3.0
Использование
Создаем клиент
client = MoexIss.clientВалюты
Для получения последних актульных данных о курсах валют:
currencies = client.currencies # => MoexIss::Market::Currencies
currencies.map(&:short_name) # -> ["USDRUB_TOM", "EURRUB_TOM", "CNYRUB_TOM"]
cny_rub = currencies.cny_rub # => MoexIss::Market::Currency
cny_rub.price = 12.5762
...Акции
Для получения последних актульных данных:
- Все акции
client.stocks # => MoexIss::Market::StocksПолучаем класс, по которому можно итерироваться а так же вызывать искомую ценную бумагу по ее isin
stocks.sber # => MoexIss::Market::Stock- Одна Акция
client.stock(:sber) # => MoexIss::Market::Stock- Для получения данные об исторических данных:
client.stock(:sber, from: '2023-12-01', till: '2023-12-05') # => MoexIss::Market::History::StocksЕсть возможность работы с коллекцией через дату:
stocks = client.stock(:sber, from: '2023-12-01', till: '2023-12-05') # => MoexIss::Market::History::Stocks
stocks['2023-12-03'] # => MoexIss::Market::History::StockМаксимальное количесво дней: 100
Аргументы from и till можно использовать по одиночке
Обратите внимание
Все экземпляры классов отвечает на метод response, который содержит полный ответ от MOEX ISS, из которого можно получать доп.параметры,
так же у каждого класса свой набор специфических методов для удобства работы с данными.
# Пример
client.stock(:sber).market_price # => 271.37
client.stock(:sber).prev_date # => 2023-12-2
...Лицензия
Исходный код распространяется под лицензией MIT License.