API для функций технического анализа

Чтобы получить все исторические значения для выбранного тикера, нужно использовать входную точку "technical":

https://tr.porti.ru/xapi/market/technical?code=MOEX:GAZP&func=rsi&period=365&token=⟨ТОКЕН⟩&format=json
curl --location "https://tr.porti.ru/xapi/market/technical?code=MOEX:GAZP&func=rsi&period=365&token=⟨ТОКЕН⟩&format=json"
import requests url = f'https://tr.porti.ru/xapi/market/technical?code=MOEX:GAZP&func=rsi&period=365&token=⟨ТОКЕН⟩&format=json' data = requests.get(url).json() print(data)
$curl = curl_init(); curl_setopt_array($curl, array( CURLOPT_URL => 'https://tr.porti.ru/xapi/market/technical?code=MOEX:GAZP&func=rsi&period=365&token=⟨ТОКЕН⟩&format=json', CURLOPT_RETURNTRANSFER => true, CURLOPT_ENCODING => '', CURLOPT_MAXREDIRS => 10, CURLOPT_TIMEOUT => 0, CURLOPT_FOLLOWLOCATION => true, CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1, CURLOPT_CUSTOMREQUEST => 'GET', )); $data = curl_exec($curl); curl_close($curl); try { $data = json_decode($data, true, 512, JSON_THROW_ON_ERROR); var_dump($data); } catch (Exception $e) { echo 'Error. '.$e->getMessage(); }
library(httr) library(jsonlite) url <- 'https://tr.porti.ru/xapi/market/technical?code=MOEX:GAZP&func=rsi&period=365&token=⟨ТОКЕН⟩&format=json' response <- GET(url) if (http_type(response) == "application/json") { content <- content(response, "text", encoding = "UTF-8") cat(content) } else { cat("Error while receiving data\n") }
Пример полученных данных с использованием этого API:
{ time: 1710190800, value: 64.5279560036664 }, { time: 1710277200, value: 63.88384754990922 }, { time: 1710363600, value: 62.24580017683467 }
Параметры:
  1. token (обязательный) - токен получаемый при оформлении подписки (подписка API)
  2. code (обязательный) - тикер актива цены которого нужно получить. Можно использовать полный формат: MOEX:GAZP (рекомендуется, так как один и тот же тикер может принадлежать разным активам с разных бирж), так и краткий формат: GAZP
  3. func (обязательный) - функция которая используется для расчете цен, доступные значение:
    • rsi - индекс относительной силы (wikipedia ). По умолчанию берется 14 дней, задается через value
    • sma - скользящая средняя (wikipedia ). По умолчанию берется 200 дней, задается через value
    • ema - экспоненциальное сглаживание (wikipedia ). По умолчанию берется 200 дней, задается через value
    • wma - взвешенное скользящее среднее (wikipedia ). По умолчанию берется 200 дней, задается через value
    • volatility - волатильность (investopedia ). По умолчанию берется 50 дней, задается через value
    • beta - бета-коэффициент (wikipedia ). По умолчанию берется 365 дней, задается через value. Через code2 задается, то с чем сравнивается, например IMOEX (допустимы индексы: IMOEX, RTS, RGBI, DOW, NASDAQ, NYSE, так и любые ETF)
    • stddev - среднеквадратическое отклонение (wikipedia ). По умолчанию берется 50 дней, задается через value
  4. value (не обязательный) - дополнительный параметр для некоторый функций
  5. period (не обязательный) - период в днях для получение значений, берутся последние значения за указанный период в днях, по умолчанию 365 дней
  6. format (не обязательный) - допустимые значения: json, csv. json - представление данных в формате json, csv - текстовый формат с разделителем.