Path: blob/master/ invest-robot-contest_tinkoff_invest_robot-main/src/algotrading/get_candles.py
7815 views
import time1from datetime import timedelta23from tinkoff.invest import (4CandleInstrument,5MarketDataRequest,6SubscribeCandlesRequest,7SubscriptionAction,8SubscriptionInterval,9CandleInterval,10)1112from tinkoff.invest.utils import now1314from src.algotrading import glossary151617def get_all_candles(client, figi, periud_day, timeframe):18candles = client.get_all_candles(19figi=figi,20from_=now() - timedelta(days=periud_day),21interval=timeframe,22)2324return candles252627def request_iterator(figi, timeframe):28print(timeframe)29if timeframe == 1:30interval = SubscriptionInterval.SUBSCRIPTION_INTERVAL_ONE_MINUTE31else:32interval = SubscriptionInterval.SUBSCRIPTION_INTERVAL_FIVE_MINUTES3334yield MarketDataRequest(35subscribe_candles_request=SubscribeCandlesRequest(36subscription_action=SubscriptionAction.SUBSCRIPTION_ACTION_SUBSCRIBE,37instruments=[38CandleInstrument(39figi=figi,40interval=interval,41)42],43)44)45while True:46time.sleep(10)474849