Tinkoff / investAPI

399 stars 136 forks source link

TradesStream в OrdersService не работает в песочнице #176

Closed somnoynadno closed 2 years ago

somnoynadno commented 2 years ago

Доброго времени!

Никак не получается подружить стрим сервиса торговых поручений с ID аккаунта, сгенерированного в песочнице и, видимо, на текущий момент API это не поддерживает. Получаю ошибку 50004 | NOT_FOUND. В итоге торговые стратегии, опирающиеся на TradesStream, становится довольно затруднительно тестировать.

Возможно, проблема известная, но прикрепляю код на языке Go, которым пытался выполнить данную операцию.

        accountID, err := sandboxService.OpenSandboxAccount()
        if err != nil {
        return fmt.Errorf("can not create account: %v", err)
    }

        oss := sdk.NewOrdersStreamService()
    tradesStream, err := oss.TradesStream(&pb.TradesStreamRequest{Accounts: []string{accountID}})
    if err != nil {
                // если использовать существующий accountID
                // (не из песочницы), то всё работает ОК
            return err // а именно на accountID песочницы тут вылетает ошика 50004
    }
borjomeeee commented 2 years ago

@somnoynadno По идее должен быть отдельный метод для создания стрима отдельно для sandbox (Теоретически, не знаю как в go sdk)

somnoynadno commented 2 years ago

@borjomeeee Мне сообщили, что такой возможности сейчас не имеется.

В protobuf для SandboxService этого не завезли, но если где-то действительно есть такие методы, то будет здорово хотя бы пополнить этим документацию.

b1ng0o commented 2 years ago

Добавили контур для песочницы и описали различия https://tinkoff.github.io/investAPI/url_difference/