Skip to content

[Bug] Незакрытые свечи в SubscribeCandlesRequest #236

@Stark-lnk

Description

@Stark-lnk

Что случилось?

Добрый день!

Столкнулся с багом когда при подписке на стрим свечей с указанием waiting_close=True приходят незакрытые свечи (см скриншот). Т.е приходят данные за 8:36 в нулевую секунду этой свечи (в 8:36:00 вместо 8:36:59).
Свеча может придти не только в самом начале самой себя, но и середине и за 5 секунд до конца).

image

При использовании
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 working

Type

No type
No fields configured for issues without a type.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions