-
Notifications
You must be signed in to change notification settings - Fork 56
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Пользовательские провайдеры для котировок #77
Comments
Добрый день! Это вам для IB нужно? А откуда бы вы стали тянуть эти котировки? Котировки с Питерской биржи вам не подойдут? (требуется наличие аккаунта в Тинькофф) |
Если это имеет значение, то бумаги в IB. Для примера, https://www.justetf.com/en/etf-profile.html?isin=IE00B4L5Y983 -- в зависимости от биржи там будет разный тикер (на LSE в долларах это IWDA). Откуда в итоге тянуть котировки -- не так важно. Важно, что в данный момент возможность получения котировок ограничена текущими провайдерами. А так, я смотрю на таблицы Google Docs (через =GOOGLEFINANCE) или Yahoo Finance. По поводу котировок из СПБ Биржи через Тинькова, я не очень понял суть вопроса... Если суть была в том, чтобы попробовать поставить токен для брокера-тинькова и должны подтянуться данные, то для примера выше (IWDA на LSE) после заполнения brokers/tinkoff/api_token фокус не удался (подтянулись только курсы валют, золота и серебра):
Вообще на finnhub для IWDA с LSE тикер будет IWDA.L
Но с тиньковым это ситуацию не поменяло (да и не должно по идее):
|
Да - это имеет значение, т. к. в программе есть некоторое (очень упрощённое) понимание торговых площадок, и для IB'шного портфеля она просто так на Питерскую биржу не пойдет. Но вам бы это и вряд ли помогло, т. к. всяких IWDA на ней нет - разве что только если брать данные с Тиньковской внебиржи (не знаю - возможно для получения котировок нужен Премиум тариф). Ок, я вас понял - давайте сделаю кастомный провайдер. Я их уже столько сменил, что новый добавляется без особых проблем. |
Добавил кастомный провайдер. Попробуйте - честно говоря, прям совсем по-честному не тестировал, но на вид должно работать. |
Спасибо! Проверил, и работает для
Прокси -- https://gist.github.com/dim0xff/7798ffa5d362215ab361bdd47f9f7391 |
Кстати, глянул на апи тинькова, и IWDA там есть) Что, конечно, не означает, что там есть все интересующие инструменты. $ curl -X POST -v 'https://sandbox-invest-public-api.tinkoff.ru/rest/tinkoff.public.invest.api.contract.v1.InstrumentsService/EtfBy' \
-H 'Content-Type: application/json' \
-H 'Authorization: Bearer ******' \
--data '{"id_type":"INSTRUMENT_ID_TYPE_TICKER","class_code":"IWDA","id":"IWDA"}'
{
"instrument": {
"figi": "BBG000PH9DS6",
"ticker": "IWDA",
"classCode": "IWDA",
"isin": "IE00B4L5Y983",
"lot": 1,
"currency": "usd",
"shortEnabledFlag": false,
"name": "iShares Core MSCI World UCITS",
"exchange": "lse",
"focusType": "equity",
"countryOfRisk": "",
"countryOfRiskName": "",
"sector": "",
"rebalancingFreq": "",
"tradingStatus": "SECURITY_TRADING_STATUS_NOT_AVAILABLE_FOR_TRADING",
"otcFlag": true,
"buyAvailableFlag": false,
"sellAvailableFlag": false,
"apiTradeAvailableFlag": false,
"uid": "a2328651-1a20-45b6-afb7-29e3ca427df8",
"realExchange": "REAL_EXCHANGE_OTC",
"positionUid": "dae2c819-9fb8-4132-8a8f-a395de4b1915",
"forIisFlag": false,
"forQualInvestorFlag": true,
"weekendFlag": false,
"blockedTcaFlag": false
}
}
* Connection #0 to host sandbox-invest-public-api.tinkoff.ru left intact
$ curl -X POST -v 'https://sandbox-invest-public-api.tinkoff.ru/rest/tinkoff.public.invest.api.contract.v1.MarketDataService/GetLastPrices' \
-H 'Content-Type: application/json' \
-H 'Authorization: Bearer ******' \
--data '{"instrumentId":["a2328651-1a20-45b6-afb7-29e3ca427df8"]}'
{
"lastPrices": [{
"figi": "BBG000PH9DS6",
"price": {
"units": "79",
"nano": 880000000
},
"time": "2023-04-14T15:14:03Z",
"instrumentUid": "a2328651-1a20-45b6-afb7-29e3ca427df8"
}]
}
* Connection #0 to host sandbox-invest-public-api.tinkoff.ru left intact |
То же самое для |
Дальше программа скармливает тикеры провайдерам котировок - и вот по идее уже они, зная свою специфику, должны дорисовывать всякие
А у вас обычный тариф или премиальный (на котором доступна внебиржа)? В целом наверное да - имеет смысл таскать данные ещё и оттуда. Не делал это потому что:
Пожалуй, да - сделаю стягивание данных с OTC, но воткну его после Finnhub-провайдера, чтобы как раз где есть котировки, стягивались честные, а за случаями вроде IWDA ходили в Тинькофф. |
Я не думаю, что наличие данных по котировкам связано с тарифом (если нужно, то смогу проверить). Про У меня всё работает, и в целом, наверное, задачу можно закрывать. Спасибо за труд! ЗЫ: если есть куда, я готов закинуть на кофе с десертом. |
Приветствую!
Столкнулся с проблемой, что finnhub отдаёт данные только по US бумагам. Поэтому возникла идея использовать собственный прокси-провайдер для предоставления данных.
Если возможности/времени на добавление провайдера нет, то просьба дать возможность задания урл для провайдера в файле настроек, чтобы заворачивать трафик на свой сервер, который будет отдавать данные в таком-же формате как и исходный провайдер.
investments/src/quotes/finnhub.rs
Lines 22 to 26 in 135a172
Или в приложении уже есть решение данного вопроса?
The text was updated successfully, but these errors were encountered: