Комментарии 40
Спасибо за статью, но в самом начале сформулирован вопрос, на который нет ответа в целой большой и полезной статье.
И т.п.
официальное API Яху Финанс было закрыто три года назад, однако практически сразу же появилась его недокументированная работоспособная версия, которая жива до сих пор.Вопрос: что конспирологи и другие исследователи этого мира думают по поводу такого артефакта? Кто платит за этот банкет со стороны Яху и зачем они это делают?
И т.п.
Скорее всего это баг — то что им можно пользоваться.
Баг — это дыра, а вот платить 3+ года за поддержку офиц. закрытого — это не баг, а фича. Но заради чего или кого, Холмс?
Так же советую посмотреть тиньков инвестиции API. Тоже интересно, можно делать даже торговые боты с управление в ТГ (как пример).
Это другая тема конечно. Среди российских брокеров наверное по пальцам одной руки можно пересчитать кто имеет своё API. И Тинькофф банк один из них.
Вот обсуждение было: habr.com/ru/post/496722/#comment_21491254
Не могу ответить там. Альфа-директ имеет своё API задолго до появления Тинькова
Вы имеете в виду для отчетов или что-то другое?
Для всех операций, которые можно делать через терминал. В том числе, для подачи заявок.
Подскажите, а где подробнее можно про это почитать?
А вот это сложный вопрос :))) Вроде, оно закопано где-то в глубинах их сайта. Это частый вопрос новичков в чате АД. Но текущей 4-й версией API я уже не интересовался и документацию не видел. Ну и в текущей версии они делают больше упор на программирование роботов и индикаторов внутри самого терминала, на каком-то C#-подобном языке.
А собственные позиции только в режиме чтения можно через апи в Альфа Директе получать?
Спасибо за статью.
Вопрос: Есть ли какие-нибудь ограничения на количество запросов? Если я, скажем, захочу сделать анализ всех акций сектора и запрошу параллельно несколько тысяч параметров?
Я где-то встречал информацию, что этот API выдает агрегированную информацию за 15 (???) минут.
Вопрос: Есть ли какие-нибудь ограничения на количество запросов? Если я, скажем, захочу сделать анализ всех акций сектора и запрошу параллельно несколько тысяч параметров?
Я где-то встречал информацию, что этот API выдает агрегированную информацию за 15 (???) минут.
А запрос на получение списка всех ценных бумаг (symbols) есть?
Мне о таком неизвестно.
я находил такой инструмент, который перебором бешеное количество выкачивает pypi.org/project/Yahoo-ticker-downloader
Понял, что проще брать то, что нужно (торгуется у брокера)
Понял, что проще брать то, что нужно (торгуется у брокера)
Спасибо!
Похоже в настоящий момент он устарел, потому что в коде используется отключенное АПИ.
Но при этом работает
start
> python3 YahooTickerDownloader.py
Checking if we can resume a old download session
No old downloader found on disk
Starting a new session
Downloading generic
req https://finance.yahoo.com/_finance_doubledown/api/resource/searchassist;searchTerm=b?device=console&returnMeta=true
Got 10 downloaded generic symbols:
Generic B NYQ Barnes Group Inc.
Generic BA NYQ The Boeing Company
ect...
Progress: Query 2/64.
10 unique generic entries collected so far.
req https://finance.yahoo.com/_finance_doubledown/api/resource/searchassist;searchTerm=c?device=console&returnMeta=true
Got 9 downloaded generic symbols:
Generic C NYQ Citigroup Inc.
Generic CALT NMS Calliditas Therapeutics AB (publ)
ect...
Progress: Query 3/64.
19 unique generic entries collected so far.
req https://finance.yahoo.com/_finance_doubledown/api/resource/searchassist;searchTerm=d?device=console&returnMeta=true
Got 10 downloaded generic symbols:
Generic D NYQ Dominion Energy, Inc.
Generic DADA NMS Dada Nexus Limited
ect...
Progress: Query 4/102.
29 unique generic entries collected so far.
................................
Спасибо, очень полезно. С python не особо знаком, на node.js переделаю.
Скрипт получается перебирает просто буквы алфавита? Но при этом в выборку попадает только американский рынок?
Например просто буква g — но в результатах нет gazp.me например, однако если запрос gazp, то эта российская бумага уже в выборке.
Скрипт получается перебирает просто буквы алфавита? Но при этом в выборку попадает только американский рынок?
Например просто буква g — но в результатах нет gazp.me например, однако если запрос gazp, то эта российская бумага уже в выборке.
Я особо не вникал, оставил на ночь, и он собрал мне
150к строк, и там нет газпрома)
видимо возьмет его лишь когда дойдет до gazp.me
Поэтому такой перебор мне не понравился) Может там есть какие-то параметры… но я подумал, что иду не по тому пути)
finance.yahoo.com/_finance_doubledown/api/resource/searchassist;searchTerm=gazp.me?device=console&returnMeta=true
150к строк, и там нет газпрома)
видимо возьмет его лишь когда дойдет до gazp.me
Поэтому такой перебор мне не понравился) Может там есть какие-то параметры… но я подумал, что иду не по тому пути)
finance.yahoo.com/_finance_doubledown/api/resource/searchassist;searchTerm=gazp.me?device=console&returnMeta=true
Вот скрипт выборки всех бумаг с nasdaq — прямо с их ftp:
#!/bin/bash
echo -n '["' > stocks.json
curl -o nasdaq.txt ftp://ftp.nasdaqtrader.com/symboldirectory/nasdaqtraded.txt
cat nasdaq.txt | grep -Eo '^\w\|\w*' | sed 's/^\w|//g' | sed 'H;1h;$!d;x;y/\n/,/' | sed 's/,/\",\"/g' >> stocks.json
echo '"]' >> stocks.json
sed -i ':a;N;$!ba;s/\n//' stocks.json
rm nasdaq.txt
Скрипт на каждой итерации получается добавляет +1 букву?
буква
буква+буква
буква+буква+буква
…
буква
буква+буква
буква+буква+буква
…
А можете последовательность как он перебирает символы сбросить?
Занятно, что Yahoo.Finance выдаёт Sector и Industry для компаний, торгующихся только в России, тоже. Например:
query1.finance.yahoo.com/v10/finance/quoteSummary/OBUV.ME?modules=assetProfile
query1.finance.yahoo.com/v10/finance/quoteSummary/OBUV.ME?modules=assetProfile
industry: "Footwear & Accessories",
sector: "Consumer Cyclical",
Вообще получение истории цен это супер возможность, спасибо! А то у меня функция GOOGLEFINANCE в Google Spreadsheets периодически глючит, либо начиная выдавать ошибку N/A, либо зависая в Loading… Может, перейду на использование скриптов (Google App Scripts), откуда буду дёргать Yahoo.Finance.
Жаль конечно, что информации о российских облигациях в Yahoo.Finance, видимо, нет, так же как в GOOGLEFINANCE. Остаёмся на API Московской биржи.
Жаль конечно, что информации о российских облигациях в Yahoo.Finance, видимо, нет, так же как в GOOGLEFINANCE. Остаёмся на API Московской биржи.
Где вы раньше были)
не так давно требовалось скачать историю акций которые есть в Тинькофф, случайно наткнулся на Yahoo.
Заметил, что по российским акциям можно лишь к тикеру .ME прилепить
сгенерил для bash такой скрипт скачивания csv (да, можно было бы и цикл на тикер для красоты)
Заметил, что:
— все же нужна задержка, т.к. запросы повисали наглухо, и как будто банился ip на время
— иногда странные данные, типа 0-е объемы, хотя бумага явно торговалась в этот день, или цена в какие-то дни якобы падала раз в 10. Но по данным другим источников такого не было
прим.: посмотрите график за 5 лет finance.yahoo.com/quote/BANEP.ME
— не показывается данные текущего дня по «американским» акциям, до начала захода Америки, хотя мы уже вовсю торгуем ими. Или я не туда смотрю?
не так давно требовалось скачать историю акций которые есть в Тинькофф, случайно наткнулся на Yahoo.
Заметил, что по российским акциям можно лишь к тикеру .ME прилепить
сгенерил для bash такой скрипт скачивания csv (
only_rus.sh
PERIOD_FROM=`date -d '01/01/2015 00:00:00' +"%s"` # mm/dd/yy
PERIOD_TO=`date -d '01/01/2030 00:00:00' +"%s"` # mm/dd/yy
INTERVAL=1d
SLEEP_SECONDS=1.1
curl -s "https://query1.finance.yahoo.com/v7/finance/download/ABRD.ME?period1=$PERIOD_FROM&period2=$PERIOD_TO&interval=$INTERVAL&events=history" -o ABRD.ME.csv && date && echo " 1 / 122 - ABRD.ME" &&
sleep $SLEEP_SECONDS
curl -s "https://query1.finance.yahoo.com/v7/finance/download/AFKS.ME?period1=$PERIOD_FROM&period2=$PERIOD_TO&interval=$INTERVAL&events=history" -o AFKS.ME.csv && date && echo " 2 / 122 - AFKS.ME" &&
sleep $SLEEP_SECONDS
curl -s "https://query1.finance.yahoo.com/v7/finance/download/AFLT.ME?period1=$PERIOD_FROM&period2=$PERIOD_TO&interval=$INTERVAL&events=history" -o AFLT.ME.csv && date && echo " 3 / 122 - AFLT.ME" &&
sleep $SLEEP_SECONDS
#и т.д.
Заметил, что:
— все же нужна задержка, т.к. запросы повисали наглухо, и как будто банился ip на время
— иногда странные данные, типа 0-е объемы, хотя бумага явно торговалась в этот день, или цена в какие-то дни якобы падала раз в 10. Но по данным другим источников такого не было
прим.: посмотрите график за 5 лет finance.yahoo.com/quote/BANEP.ME
— не показывается данные текущего дня по «американским» акциям, до начала захода Америки, хотя мы уже вовсю торгуем ими. Или я не туда смотрю?
Вот ссылка с запросом на Мосбиржу.
Вообще, оптимальнее воспользоваться апи Московской биржи для этой задачи.
Очень полезная статья, спасибо! Забил основные метрики с яху финас в ibreoffice calc, работает нормально.
Однако, есть претензии к самому яхуфинанс — цифры зачастую не совпадают с информацией с других сайтов, и/или помечена как полученная из сторонних источников различными неназванными методиками. Другими словами, зачастую на яху финанс лежит неверная информация. Отсюда вопрос
А что есть еще, бесплатное, по американским акциям, в формате XML/JSON?
парсить html — не вариант, очень быстро банят айпи, буквально 500-1000 запросов, и все.
Однако, есть претензии к самому яхуфинанс — цифры зачастую не совпадают с информацией с других сайтов, и/или помечена как полученная из сторонних источников различными неназванными методиками. Другими словами, зачастую на яху финанс лежит неверная информация. Отсюда вопрос
А что есть еще, бесплатное, по американским акциям, в формате XML/JSON?
парсить html — не вариант, очень быстро банят айпи, буквально 500-1000 запросов, и все.
Прямо бесплатно не так много вариантов.
Дайте хотя бы один такой бесплатный вариант, если не сложно.
Пока самое полезное что я нашел, это alpha vantage, там доступны вся база данных, но совершенно конские ограничения на число запросов (5 в минуту, 500 в день, если не путаю) — использую только чтобы дополнить или проверить отдельные поля с яхуу.
Еще, вроде бы пишут, что гугл финас до сих пор както работает, но я не нашел их базы данных.
Пока самое полезное что я нашел, это alpha vantage, там доступны вся база данных, но совершенно конские ограничения на число запросов (5 в минуту, 500 в день, если не путаю) — использую только чтобы дополнить или проверить отдельные поля с яхуу.
Еще, вроде бы пишут, что гугл финас до сих пор както работает, но я не нашел их базы данных.
finnhub.io/docs/api
iexcloud.io/docs/api
exchangeratesapi.io
В прошлых моих статьях было обсуждение в комментариях — надо там поискать.
iexcloud.io/docs/api
exchangeratesapi.io
В прошлых моих статьях было обсуждение в комментариях — надо там поискать.
Зарегистрируйтесь на Хабре, чтобы оставить комментарий
Все финансовые рынки мира в API Яху Финанс