-
Notifications
You must be signed in to change notification settings - Fork 96
[Bug] Незакрытые свечи в SubscribeCandlesRequest #236
Copy link
Copy link
Open
Labels
bugSomething isn't workingSomething isn't working
Description
Что случилось?
Добрый день!
Столкнулся с багом когда при подписке на стрим свечей с указанием waiting_close=True приходят незакрытые свечи (см скриншот). Т.е приходят данные за 8:36 в нулевую секунду этой свечи (в 8:36:00 вместо 8:36:59).
Свеча может придти не только в самом начале самой себя, но и середине и за 5 секунд до конца).
При использовании
market_data_stream: AsyncMarketDataStreamManager = (client.create_market_data_stream()) market_data_stream.candles.waiting_close().subscribe(figi_instruments)
Аналогичная проблема(
Воспроизведение
import asyncio
from tinkoff.invest import (
AsyncClient,
SubscriptionInterval,
)
from tinkoff.invest import CandleInstrument, MarketDataRequest, SubscribeCandlesRequest, SubscriptionAction
INSTRUMENTS = [
{"ticker": "SBER", "figi": "BBG004730N88"},
]
async def request_iterator(instruments):
figi_instruments = list(map(lambda instrument: CandleInstrument(instrument["figi"],
interval=SubscriptionInterval.SUBSCRIPTION_INTERVAL_ONE_MINUTE),
instruments))
yield MarketDataRequest(
subscribe_candles_request=SubscribeCandlesRequest(
waiting_close=True,
subscription_action=SubscriptionAction.SUBSCRIPTION_ACTION_SUBSCRIBE,
instruments=figi_instruments,
)
)
while True:
await asyncio.sleep(1)
async def update_data_and_start_strategy(client):
async for marketdata in client.market_data_stream.market_data_stream(
request_iterator(INSTRUMENTS)):
print(marketdata)
async def main():
async with AsyncClient(TOKEN) as client:
tasks = [asyncio.ensure_future(update_data_and_start_strategy(client))]
await asyncio.wait(tasks)Tinkoff Invest Version
0.2.0-beta58
Python Version
3.11
OS
Mac OS (m1)
Логи
No response
Metadata
Metadata
Assignees
Labels
bugSomething isn't workingSomething isn't working