Блог им. Yougin |Парсинг капитализации с MOEX

Знаю, что были уже посты на тему парсинга данных с MOEX. Решил поделится кодом для GoogleTab:

=ПОДСТАВИТЬ(IMPORTxml(«iss.moex.com/iss/engines/stock/markets/shares/securities.xml?iss.meta=off&iss.only=marketdata&marketdata.columns=SECID,ISSUECAPITALIZATION»;"//document//data//rows//row[@SECID='"&B2&"']/@ISSUECAPITALIZATION");".";",")

Где: B2 это ячейка с кодом инструмента, например - ABIO.

Если нужно парсить не 5-10 акций, а например 100-200, то вот вариант с оптимизацией:

=ЕСЛИ(ЕПУСТО(D2);
ПОДСТАВИТЬ(
REGEXEXTRACT(
TEXTJOIN(" "; ИСТИНА; IMPORTDATA(«iss.moex.com/iss/engines/stock/markets/shares/securities.xml?iss.meta=off&iss.only=marketdata&marketdata.columns=SECID,ISSUECAPITALIZATION»));
«SECID=»"" & B2 & """ ISSUECAPITALIZATION=""([^""]+)"""
);
"."; ","
);
D2
)

Где D2 — буферная ячейка (укажите любую пустую ячейку), а B2 - ячейка с кодом инструмента, например - ABIO.

Буферная ячейка помогает решить проблему с количеством обновляемых запросов. К примеру, если примените первый код, то у вас в некоторых местах появится «Загрузка» и так будет сменятся, тк автообновление работает. Второй код решит проблему. 



( Читать дальше )

....все тэги
UPDONW
Новый дизайн
OSZAR »