RAPTOR v18.4: Исправлена отчетность, активированы выходные
This commit is contained in:
@@ -0,0 +1,68 @@
|
||||
"""Example - How to get figi by name of ticker."""
|
||||
import logging
|
||||
import os
|
||||
|
||||
from pandas import DataFrame
|
||||
|
||||
from t_tech.invest import Client, SecurityTradingStatus
|
||||
from t_tech.invest.services import InstrumentsService
|
||||
from t_tech.invest.utils import quotation_to_decimal
|
||||
|
||||
TOKEN = os.environ["INVEST_TOKEN"]
|
||||
|
||||
logging.basicConfig(format="%(asctime)s %(levelname)s:%(message)s", level=logging.DEBUG)
|
||||
logger = logging.getLogger(__name__)
|
||||
|
||||
|
||||
def main():
|
||||
"""Example - How to get figi by name of ticker."""
|
||||
|
||||
ticker = "VTBR" # "BRH3" "SBER" "VTBR"
|
||||
|
||||
with Client(TOKEN) as client:
|
||||
instruments: InstrumentsService = client.instruments
|
||||
tickers = []
|
||||
for method in ["shares", "bonds", "etfs", "currencies", "futures"]:
|
||||
for item in getattr(instruments, method)().instruments:
|
||||
tickers.append(
|
||||
{
|
||||
"name": item.name,
|
||||
"ticker": item.ticker,
|
||||
"class_code": item.class_code,
|
||||
"figi": item.figi,
|
||||
"uid": item.uid,
|
||||
"type": method,
|
||||
"min_price_increment": quotation_to_decimal(
|
||||
item.min_price_increment
|
||||
),
|
||||
"scale": 9 - len(str(item.min_price_increment.nano)) + 1,
|
||||
"lot": item.lot,
|
||||
"trading_status": str(
|
||||
SecurityTradingStatus(item.trading_status).name
|
||||
),
|
||||
"api_trade_available_flag": item.api_trade_available_flag,
|
||||
"currency": item.currency,
|
||||
"exchange": item.exchange,
|
||||
"buy_available_flag": item.buy_available_flag,
|
||||
"sell_available_flag": item.sell_available_flag,
|
||||
"short_enabled_flag": item.short_enabled_flag,
|
||||
"klong": quotation_to_decimal(item.klong),
|
||||
"kshort": quotation_to_decimal(item.kshort),
|
||||
}
|
||||
)
|
||||
|
||||
tickers_df = DataFrame(tickers)
|
||||
|
||||
ticker_df = tickers_df[tickers_df["ticker"] == ticker]
|
||||
if ticker_df.empty:
|
||||
logger.error("There is no such ticker: %s", ticker)
|
||||
return
|
||||
|
||||
figi = ticker_df["figi"].iloc[0]
|
||||
print(f"\nTicker {ticker} have figi={figi}\n")
|
||||
print(f"Additional info for this {ticker} ticker:")
|
||||
print(ticker_df.iloc[0])
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
main()
|
||||
Reference in New Issue
Block a user