investgo

package
v1.4.6 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Aug 7, 2023 License: Apache-2.0 Imports: 24 Imported by: 3

Documentation

Overview

Package investgo предоставляет инструменты для работы с Tinkoff InvestAPI.

Client

Сначала нужно заполнить investgo.Config, затем с помощью функции investgo.NewClient() создать клиента. У каждого клиента есть свой конфиг, который привязывает его к определенному счету и токену. Если есть потребность использовать разные счета и токены, нужно создавать разных клиентов. investgo.Client предоставляет функции-конcтрукторы для всех сервисов Tinkoff InvestAPI.

Подробнее смотрите в директории examples.

Index

Constants

View Source
const BILLION int64 = 1000000000
View Source
const (
	// WAIT_BETWEEN - Время ожидания между ретраями
	WAIT_BETWEEN time.Duration = 500 * time.Millisecond
)

Variables

This section is empty.

Functions

func CreateUid

func CreateUid() string

CreateUid - возвращает строку - уникальный идентификатор длинной 16 байт

func FloatToQuotation added in v1.4.5

func FloatToQuotation(number float64, step *pb.Quotation) *pb.Quotation

FloatToQuotation - Перевод float в Quotation, step - шаг цены для инструмента (min_price_increment)

func MessageFromHeader

func MessageFromHeader(md metadata.MD) string

MessageFromHeader - Метод извлечения сообщения из заголовка

func RemainingLimitFromHeader

func RemainingLimitFromHeader(md metadata.MD) int

RemainingLimitFromHeader - Метод извлечения остатка запросов из заголовка, возвращает -1 при ошибке

func TimeToTimestamp

func TimeToTimestamp(t time.Time) *timestamppb.Timestamp

TimeToTimestamp - convert time.Time to *timestamp.Timestamp

Types

type AssetResponse

type AssetResponse struct {
	*pb.AssetResponse
	Header metadata.MD
}

func (*AssetResponse) GetHeader

func (p *AssetResponse) GetHeader() metadata.MD

type AssetsResponse

type AssetsResponse struct {
	*pb.AssetsResponse
	Header metadata.MD
}

func (*AssetsResponse) GetHeader

func (p *AssetsResponse) GetHeader() metadata.MD

type BondResponse

type BondResponse struct {
	*pb.BondResponse
	Header metadata.MD
}

func (*BondResponse) GetHeader

func (p *BondResponse) GetHeader() metadata.MD

type BondsResponse

type BondsResponse struct {
	*pb.BondsResponse
	Header metadata.MD
}

func (*BondsResponse) GetHeader

func (p *BondsResponse) GetHeader() metadata.MD

type Brand

type Brand struct {
	*pb.Brand
	Header metadata.MD
}

func (*Brand) GetHeader

func (p *Brand) GetHeader() metadata.MD

type CancelOrderResponse

type CancelOrderResponse struct {
	*pb.CancelOrderResponse
	Header metadata.MD
}

func (*CancelOrderResponse) GetHeader

func (p *CancelOrderResponse) GetHeader() metadata.MD

type CancelStopOrderResponse

type CancelStopOrderResponse struct {
	*pb.CancelStopOrderResponse
	Header metadata.MD
}

func (*CancelStopOrderResponse) GetHeader

func (p *CancelStopOrderResponse) GetHeader() metadata.MD

type Client

type Client struct {
	Config Config
	Logger Logger
	// contains filtered or unexported fields
}

func NewClient

func NewClient(ctx context.Context, conf Config, l Logger) (*Client, error)

NewClient - создание клиента для API Тинькофф инвестиций

func (*Client) NewInstrumentsServiceClient

func (c *Client) NewInstrumentsServiceClient() *InstrumentsServiceClient

NewInstrumentsServiceClient - создание клиента сервиса инструментов

func (*Client) NewMDStreamClient deprecated

func (c *Client) NewMDStreamClient() *MDStreamClient

NewMDStreamClient - создание клиента для сервиса стримов маркетадаты

Deprecated: Use NewMarketDataStreamClient

func (*Client) NewMarketDataServiceClient

func (c *Client) NewMarketDataServiceClient() *MarketDataServiceClient

NewMarketDataServiceClient - создание клиента сервиса маркетдаты

func (*Client) NewMarketDataStreamClient added in v1.2.1

func (c *Client) NewMarketDataStreamClient() *MarketDataStreamClient

NewMarketDataStreamClient - создание клиента для сервиса стримов маркетадаты

func (*Client) NewOperationsServiceClient

func (c *Client) NewOperationsServiceClient() *OperationsServiceClient

NewOperationsServiceClient - создание клиента сервиса операций

func (*Client) NewOperationsStreamClient

func (c *Client) NewOperationsStreamClient() *OperationsStreamClient

NewOperationsStreamClient - создание клиента стримов обновлений портфеля

func (*Client) NewOrdersServiceClient

func (c *Client) NewOrdersServiceClient() *OrdersServiceClient

NewOrdersServiceClient - создание клиента сервиса ордеров

func (*Client) NewOrdersStreamClient

func (c *Client) NewOrdersStreamClient() *OrdersStreamClient

NewOrdersStreamClient - создание клиента стримов сделок

func (*Client) NewSandboxServiceClient

func (c *Client) NewSandboxServiceClient() *SandboxServiceClient

NewSandboxServiceClient - создание клиента для работы с песочницей

func (*Client) NewStopOrdersServiceClient

func (c *Client) NewStopOrdersServiceClient() *StopOrdersServiceClient

NewStopOrdersServiceClient - создание клиента сервиса стоп-ордеров

func (*Client) NewUsersServiceClient

func (c *Client) NewUsersServiceClient() *UsersServiceClient

NewUsersServiceClient - создание клиента сервиса счетов

func (*Client) Stop

func (c *Client) Stop() error

Stop - корректное завершение работы клиента

type CloseSandboxAccountResponse

type CloseSandboxAccountResponse struct {
	*pb.CloseSandboxAccountResponse
	Header metadata.MD
}

func (*CloseSandboxAccountResponse) GetHeader

func (p *CloseSandboxAccountResponse) GetHeader() metadata.MD

type Config

type Config struct {
	// EndPoint - Для работы с реальным контуром и контуром песочницы нужны разные эндпоинты.
	// По умолчанию = sandbox-invest-public-api.tinkoff.ru:443
	//https://tinkoff.github.io/investAPI/url_difference/
	EndPoint string `yaml:"EndPoint"`
	// Token - Ваш токен для Tinkoff InvestAPI
	Token string `yaml:"APIToken"`
	// AppName - Название вашего приложения, по умолчанию = tinkoff-api-go-sdk
	AppName string `yaml:"AppName"`
	// AccountId - Если уже есть аккаунт для апи можно указать напрямую,
	// по умолчанию откроется новый счет в песочнице
	AccountId string `yaml:"AccountId"`
	// DisableResourceExhaustedRetry - Если true, то сдк не пытается ретраить, после получения ошибки об исчерпывании
	// лимита запросов, если false, то сдк ждет нужное время и пытается выполнить запрос снова. По умолчанию = false
	DisableResourceExhaustedRetry bool `yaml:"DisableResourceExhaustedRetry"`
	// DisableAllRetry - Отключение всех ретраев
	DisableAllRetry bool `yaml:"DisableAllRetry"`
	// MaxRetries - Максимальное количество попыток переподключения, по умолчанию = 3
	// (если указать значение 0 это не отключит ретраи, для отключения нужно прописать DisableAllRetry = true)
	MaxRetries uint `yaml:"MaxRetries"`
}

Config - структура для кофигурации SDK

func LoadConfig

func LoadConfig(filename string) (Config, error)

LoadConfig - загрузка конфигурации для сдк из .yaml файла

type CurrenciesResponse

type CurrenciesResponse struct {
	*pb.CurrenciesResponse
	Header metadata.MD
}

func (*CurrenciesResponse) CurrencyResponse

func (p *CurrenciesResponse) CurrencyResponse() metadata.MD

type CurrencyResponse

type CurrencyResponse struct {
	*pb.CurrencyResponse
	Header metadata.MD
}

type EditFavoritesResponse

type EditFavoritesResponse struct {
	*pb.EditFavoritesResponse
	Header metadata.MD
}

func (*EditFavoritesResponse) GetHeader

func (p *EditFavoritesResponse) GetHeader() metadata.MD

type EtfResponse

type EtfResponse struct {
	*pb.EtfResponse
	Header metadata.MD
}

func (*EtfResponse) GetHeader

func (p *EtfResponse) GetHeader() metadata.MD

type EtfsResponse

type EtfsResponse struct {
	*pb.EtfsResponse
	Header metadata.MD
}

func (*EtfsResponse) GetHeader

func (p *EtfsResponse) GetHeader() metadata.MD

type Event added in v1.4.4

type Event int

Event - события, START - сигнал к запуску, STOP - сигнал к остановке

const (
	DAY   time.Duration = time.Hour * 24
	START Event         = iota
	STOP
)

type FindInstrumentResponse

type FindInstrumentResponse struct {
	*pb.FindInstrumentResponse
	Header metadata.MD
}

func (*FindInstrumentResponse) GetHeader

func (p *FindInstrumentResponse) GetHeader() metadata.MD

type FutureResponse

type FutureResponse struct {
	*pb.FutureResponse
	Header metadata.MD
}

func (*FutureResponse) GetHeader

func (p *FutureResponse) GetHeader() metadata.MD

type FuturesResponse

type FuturesResponse struct {
	*pb.FuturesResponse
	Header metadata.MD
}

func (*FuturesResponse) GetHeader

func (p *FuturesResponse) GetHeader() metadata.MD

type GenerateBrokerReportResponse

type GenerateBrokerReportResponse struct {
	*pb.GenerateBrokerReportResponse
	Header metadata.MD
}

func (*GenerateBrokerReportResponse) GetHeader

func (p *GenerateBrokerReportResponse) GetHeader() metadata.MD

type GetAccountsResponse

type GetAccountsResponse struct {
	*pb.GetAccountsResponse
	Header metadata.MD
}

func (*GetAccountsResponse) GetHeader

func (p *GetAccountsResponse) GetHeader() metadata.MD

type GetAccruedInterestsResponse

type GetAccruedInterestsResponse struct {
	*pb.GetAccruedInterestsResponse
	Header metadata.MD
}

func (*GetAccruedInterestsResponse) GetHeader

func (p *GetAccruedInterestsResponse) GetHeader() metadata.MD

type GetBondCouponsResponse

type GetBondCouponsResponse struct {
	*pb.GetBondCouponsResponse
	Header metadata.MD
}

func (*GetBondCouponsResponse) GetHeader

func (p *GetBondCouponsResponse) GetHeader() metadata.MD

type GetBrandsResponse

type GetBrandsResponse struct {
	*pb.GetBrandsResponse
	Header metadata.MD
}

func (*GetBrandsResponse) GetHeader

func (p *GetBrandsResponse) GetHeader() metadata.MD

type GetBrokerReportResponse

type GetBrokerReportResponse struct {
	*pb.GetBrokerReportResponse
	Header metadata.MD
}

func (*GetBrokerReportResponse) GetHeader

func (p *GetBrokerReportResponse) GetHeader() metadata.MD

type GetCandlesResponse

type GetCandlesResponse struct {
	*pb.GetCandlesResponse
	Header metadata.MD
}

func (*GetCandlesResponse) GetHeader

func (p *GetCandlesResponse) GetHeader() metadata.MD

type GetClosePricesResponse

type GetClosePricesResponse struct {
	*pb.GetClosePricesResponse
	Header metadata.MD
}

func (*GetClosePricesResponse) GetHeader

func (p *GetClosePricesResponse) GetHeader() metadata.MD

type GetCountriesResponse

type GetCountriesResponse struct {
	*pb.GetCountriesResponse
	Header metadata.MD
}

func (*GetCountriesResponse) GetHeader

func (p *GetCountriesResponse) GetHeader() metadata.MD

type GetDividendsForeignIssuerResponse

type GetDividendsForeignIssuerResponse struct {
	*pb.GetDividendsForeignIssuerResponse
	Header metadata.MD
}

func (*GetDividendsForeignIssuerResponse) GetHeader

type GetDividendsResponse

type GetDividendsResponse struct {
	*pb.GetDividendsResponse
	Header metadata.MD
}

func (*GetDividendsResponse) GetHeader

func (p *GetDividendsResponse) GetHeader() metadata.MD

type GetFavoritesResponse

type GetFavoritesResponse struct {
	*pb.GetFavoritesResponse
	Header metadata.MD
}

func (*GetFavoritesResponse) GetHeader

func (p *GetFavoritesResponse) GetHeader() metadata.MD

type GetFuturesMarginResponse

type GetFuturesMarginResponse struct {
	*pb.GetFuturesMarginResponse
	Header metadata.MD
}

func (*GetFuturesMarginResponse) GetHeader

func (p *GetFuturesMarginResponse) GetHeader() metadata.MD

type GetHistoricCandlesRequest

type GetHistoricCandlesRequest struct {
	Instrument string
	Interval   pb.CandleInterval
	From       time.Time
	To         time.Time
	File       bool
	FileName   string
}

type GetInfoResponse

type GetInfoResponse struct {
	*pb.GetInfoResponse
	Header metadata.MD
}

func (*GetInfoResponse) GetHeader

func (p *GetInfoResponse) GetHeader() metadata.MD

type GetLastPricesResponse

type GetLastPricesResponse struct {
	*pb.GetLastPricesResponse
	Header metadata.MD
}

func (*GetLastPricesResponse) GetHeader

func (p *GetLastPricesResponse) GetHeader() metadata.MD

type GetLastTradesResponse

type GetLastTradesResponse struct {
	*pb.GetLastTradesResponse
	Header metadata.MD
}

func (*GetLastTradesResponse) GetHeader

func (p *GetLastTradesResponse) GetHeader() metadata.MD

type GetMarginAttributesResponse

type GetMarginAttributesResponse struct {
	*pb.GetMarginAttributesResponse
	Header metadata.MD
}

func (*GetMarginAttributesResponse) GetHeader

func (p *GetMarginAttributesResponse) GetHeader() metadata.MD

type GetOperationsByCursorRequest

type GetOperationsByCursorRequest struct {
	AccountId          string
	InstrumentId       string
	From               time.Time
	To                 time.Time
	Cursor             string
	Limit              int32
	OperationTypes     []pb.OperationType
	State              pb.OperationState
	WithoutCommissions bool
	WithoutTrades      bool
	WithoutOvernights  bool
}

type GetOperationsByCursorResponse

type GetOperationsByCursorResponse struct {
	*pb.GetOperationsByCursorResponse
	Header metadata.MD
}

func (*GetOperationsByCursorResponse) GetHeader

func (p *GetOperationsByCursorResponse) GetHeader() metadata.MD

type GetOperationsRequest

type GetOperationsRequest struct {
	Figi      string
	AccountId string
	State     pb.OperationState
	From      time.Time
	To        time.Time
}

type GetOrderBookResponse

type GetOrderBookResponse struct {
	*pb.GetOrderBookResponse
	Header metadata.MD
}

func (*GetOrderBookResponse) GetHeader

func (p *GetOrderBookResponse) GetHeader() metadata.MD

type GetOrderStateResponse

type GetOrderStateResponse struct {
	*pb.OrderState
	Header metadata.MD
}

func (*GetOrderStateResponse) GetHeader

func (p *GetOrderStateResponse) GetHeader() metadata.MD

type GetOrdersResponse

type GetOrdersResponse struct {
	*pb.GetOrdersResponse
	Header metadata.MD
}

func (*GetOrdersResponse) GetHeader

func (p *GetOrdersResponse) GetHeader() metadata.MD

type GetStopOrdersResponse

type GetStopOrdersResponse struct {
	*pb.GetStopOrdersResponse
	Header metadata.MD
}

func (*GetStopOrdersResponse) GetHeader

func (p *GetStopOrdersResponse) GetHeader() metadata.MD

type GetTradingStatusResponse

type GetTradingStatusResponse struct {
	*pb.GetTradingStatusResponse
	Header metadata.MD
}

func (*GetTradingStatusResponse) GetHeader

func (p *GetTradingStatusResponse) GetHeader() metadata.MD

type GetTradingStatusesResponse

type GetTradingStatusesResponse struct {
	*pb.GetTradingStatusesResponse
	Header metadata.MD
}

func (*GetTradingStatusesResponse) GetHeader

func (p *GetTradingStatusesResponse) GetHeader() metadata.MD

type GetUserTariffResponse

type GetUserTariffResponse struct {
	*pb.GetUserTariffResponse
	Header metadata.MD
}

func (*GetUserTariffResponse) GetHeader

func (p *GetUserTariffResponse) GetHeader() metadata.MD

type InstrumentResponse

type InstrumentResponse struct {
	*pb.InstrumentResponse
	Header metadata.MD
}

func (*InstrumentResponse) GetHeader

func (p *InstrumentResponse) GetHeader() metadata.MD

type InstrumentsServiceClient

type InstrumentsServiceClient struct {
	// contains filtered or unexported fields
}

func (*InstrumentsServiceClient) BondByFigi

func (is *InstrumentsServiceClient) BondByFigi(id string) (*BondResponse, error)

BondByFigi - Метод получения облигации по figi

func (*InstrumentsServiceClient) BondByPositionUid

func (is *InstrumentsServiceClient) BondByPositionUid(id string) (*BondResponse, error)

BondByPositionUid - Метод получения облигации по PositionUid

func (*InstrumentsServiceClient) BondByTicker

func (is *InstrumentsServiceClient) BondByTicker(id string, classCode string) (*BondResponse, error)

BondByTicker - Метод получения облигации по Ticker

func (*InstrumentsServiceClient) BondByUid

func (is *InstrumentsServiceClient) BondByUid(id string) (*BondResponse, error)

BondByUid - Метод получения облигации по Uid

func (*InstrumentsServiceClient) Bonds

Bonds - Метод получения списка облигаций

func (*InstrumentsServiceClient) Currencies

Currencies - Метод получения списка валют

func (*InstrumentsServiceClient) CurrencyByFigi

func (is *InstrumentsServiceClient) CurrencyByFigi(id string) (*CurrencyResponse, error)

CurrencyByFigi - Метод получения валюты по Figi

func (*InstrumentsServiceClient) CurrencyByPositionUid

func (is *InstrumentsServiceClient) CurrencyByPositionUid(id string) (*CurrencyResponse, error)

CurrencyByPositionUid - Метод получения валюты по PositionUid

func (*InstrumentsServiceClient) CurrencyByTicker

func (is *InstrumentsServiceClient) CurrencyByTicker(id string, classCode string) (*CurrencyResponse, error)

CurrencyByTicker - Метод получения валюты по Ticker

func (*InstrumentsServiceClient) CurrencyByUid

func (is *InstrumentsServiceClient) CurrencyByUid(id string) (*CurrencyResponse, error)

CurrencyByUid - Метод получения валюты по Uid

func (*InstrumentsServiceClient) EditFavorites

func (is *InstrumentsServiceClient) EditFavorites(instruments []string, actionType pb.EditFavoritesActionType) (*EditFavoritesResponse, error)

EditFavorites - Метод редактирования списка избранных инструментов

func (*InstrumentsServiceClient) EtfByFigi

func (is *InstrumentsServiceClient) EtfByFigi(id string) (*EtfResponse, error)

EtfByFigi - Метод получения инвестиционного фонда по Figi

func (*InstrumentsServiceClient) EtfByPositionUid

func (is *InstrumentsServiceClient) EtfByPositionUid(id string) (*EtfResponse, error)

EtfByPositionUid - Метод получения инвестиционного фонда по PositionUid

func (*InstrumentsServiceClient) EtfByTicker

func (is *InstrumentsServiceClient) EtfByTicker(id string, classCode string) (*EtfResponse, error)

EtfByTicker - Метод получения инвестиционного фонда по Ticker

func (*InstrumentsServiceClient) EtfByUid

func (is *InstrumentsServiceClient) EtfByUid(id string) (*EtfResponse, error)

EtfByUid - Метод получения инвестиционного фонда по Uid

func (*InstrumentsServiceClient) Etfs

Etfs - Метод получения списка инвестиционных фондов

func (*InstrumentsServiceClient) FindInstrument

func (is *InstrumentsServiceClient) FindInstrument(query string) (*FindInstrumentResponse, error)

FindInstrument - Метод поиска инструмента, например по тикеру или названию компании

func (*InstrumentsServiceClient) FutureByFigi

func (is *InstrumentsServiceClient) FutureByFigi(id string) (*FutureResponse, error)

FutureByFigi - Метод получения фьючерса по Figi

func (*InstrumentsServiceClient) FutureByPositionUid

func (is *InstrumentsServiceClient) FutureByPositionUid(id string) (*FutureResponse, error)

FutureByPositionUid - Метод получения фьючерса по PositionUid

func (*InstrumentsServiceClient) FutureByTicker

func (is *InstrumentsServiceClient) FutureByTicker(id string, classCode string) (*FutureResponse, error)

FutureByTicker - Метод получения фьючерса по Ticker

func (*InstrumentsServiceClient) FutureByUid

func (is *InstrumentsServiceClient) FutureByUid(id string) (*FutureResponse, error)

FutureByUid - Метод получения фьючерса по Uid

func (*InstrumentsServiceClient) Futures

Futures - Метод получения списка фьючерсов

func (*InstrumentsServiceClient) GetAccruedInterests

func (is *InstrumentsServiceClient) GetAccruedInterests(figi string, from, to time.Time) (*GetAccruedInterestsResponse, error)

GetAccruedInterests - Метод получения накопленного купонного дохода по облигации

func (*InstrumentsServiceClient) GetAssetBy

func (is *InstrumentsServiceClient) GetAssetBy(id string) (*AssetResponse, error)

GetAssetBy - Метод получения актива по его uid идентификатору.

func (*InstrumentsServiceClient) GetAssets

func (is *InstrumentsServiceClient) GetAssets() (*AssetsResponse, error)

GetAssets - Метод получения списка активов

func (*InstrumentsServiceClient) GetBondCoupons

func (is *InstrumentsServiceClient) GetBondCoupons(figi string, from, to time.Time) (*GetBondCouponsResponse, error)

GetBondCoupons - Метод получения графика выплат купонов по облигации

func (*InstrumentsServiceClient) GetBrandBy

func (is *InstrumentsServiceClient) GetBrandBy(id string) (*Brand, error)

GetBrandBy - Метод получения бренда по его uid идентификатору

func (*InstrumentsServiceClient) GetBrands

func (is *InstrumentsServiceClient) GetBrands() (*GetBrandsResponse, error)

GetBrands - Метод получения списка брендов

func (*InstrumentsServiceClient) GetCountries

func (is *InstrumentsServiceClient) GetCountries() (*GetCountriesResponse, error)

GetCountries - Метод получения списка стран

func (*InstrumentsServiceClient) GetDividents

func (is *InstrumentsServiceClient) GetDividents(figi string, from, to time.Time) (*GetDividendsResponse, error)

GetDividents - Метод для получения событий выплаты дивидендов по инструменту

func (*InstrumentsServiceClient) GetFavorites

func (is *InstrumentsServiceClient) GetFavorites() (*GetFavoritesResponse, error)

GetFavorites - Метод получения списка избранных инструментов

func (*InstrumentsServiceClient) GetFuturesMargin

func (is *InstrumentsServiceClient) GetFuturesMargin(figi string) (*GetFuturesMarginResponse, error)

GetFuturesMargin - Метод получения размера гарантийного обеспечения по фьючерсам

func (*InstrumentsServiceClient) InstrumentByFigi

func (is *InstrumentsServiceClient) InstrumentByFigi(id string) (*InstrumentResponse, error)

InstrumentByFigi - Метод получения основной информации об инструменте

func (*InstrumentsServiceClient) InstrumentByPositionUid

func (is *InstrumentsServiceClient) InstrumentByPositionUid(id string) (*InstrumentResponse, error)

InstrumentByPositionUid - Метод получения основной информации об инструменте

func (*InstrumentsServiceClient) InstrumentByTicker

func (is *InstrumentsServiceClient) InstrumentByTicker(id string, classCode string) (*InstrumentResponse, error)

InstrumentByTicker - Метод получения основной информации об инструменте

func (*InstrumentsServiceClient) InstrumentByUid

func (is *InstrumentsServiceClient) InstrumentByUid(id string) (*InstrumentResponse, error)

InstrumentByUid - Метод получения основной информации об инструменте

func (*InstrumentsServiceClient) LotByFigi added in v1.4.3

func (is *InstrumentsServiceClient) LotByFigi(figi string) (int64, error)

LotByFigi - Метод получения лотности инструмента по его FIGI

func (*InstrumentsServiceClient) LotByUid added in v1.4.3

func (is *InstrumentsServiceClient) LotByUid(uid string) (int64, error)

LotByUid - Метод получения лотности инструмента по его Uid

func (*InstrumentsServiceClient) OptionByPositionUid

func (is *InstrumentsServiceClient) OptionByPositionUid(id string) (*OptionResponse, error)

OptionByPositionUid - Метод получения опциона по PositionUid

func (*InstrumentsServiceClient) OptionByTicker

func (is *InstrumentsServiceClient) OptionByTicker(id string, classCode string) (*OptionResponse, error)

OptionByTicker - Метод получения опциона по Ticker

func (*InstrumentsServiceClient) OptionByUid

func (is *InstrumentsServiceClient) OptionByUid(id string) (*OptionResponse, error)

OptionByUid - Метод получения опциона по Uid

func (*InstrumentsServiceClient) Options deprecated

Options - Метод получения списка опционов

Deprecated: Do not use

func (*InstrumentsServiceClient) ShareByFigi

func (is *InstrumentsServiceClient) ShareByFigi(id string) (*ShareResponse, error)

ShareByFigi - Метод получения акции по Figi

func (*InstrumentsServiceClient) ShareByPositionUid

func (is *InstrumentsServiceClient) ShareByPositionUid(id string) (*ShareResponse, error)

ShareByPositionUid - Метод получения акции по PositionUid

func (*InstrumentsServiceClient) ShareByTicker

func (is *InstrumentsServiceClient) ShareByTicker(id string, classCode string) (*ShareResponse, error)

ShareByTicker - Метод получения акции по Ticker

func (*InstrumentsServiceClient) ShareByUid

func (is *InstrumentsServiceClient) ShareByUid(id string) (*ShareResponse, error)

ShareByUid - Метод получения акции по Uid

func (*InstrumentsServiceClient) Shares

Shares - Метод получения списка акций

func (*InstrumentsServiceClient) TradingSchedules

func (is *InstrumentsServiceClient) TradingSchedules(exchange string, from, to time.Time) (*TradingSchedulesResponse, error)

TradingSchedules - Метод получения расписания торгов торговых площадок

type Logger

type Logger interface {
	Infof(template string, args ...any)
	Errorf(template string, args ...any)
	Fatalf(template string, args ...any)
}

type MDStream deprecated

type MDStream struct {
	*MarketDataStream
}

Deprecated: Use MarketDataStream

type MDStreamClient deprecated

type MDStreamClient struct {
	// contains filtered or unexported fields
}

Deprecated: Use MarketDataStreamClient

func (*MDStreamClient) MarketDataStream deprecated

func (c *MDStreamClient) MarketDataStream() (*MDStream, error)

MarketDataStream - метод возвращает стрим биржевой информации

Deprecated: Use MarketDataStreamClient.MarketDataStream()

type MarketDataServiceClient

type MarketDataServiceClient struct {
	// contains filtered or unexported fields
}

func (*MarketDataServiceClient) GetAllHistoricCandles

func (md *MarketDataServiceClient) GetAllHistoricCandles(req *GetHistoricCandlesRequest) ([]*pb.HistoricCandle, error)

GetAllHistoricCandles - Метод получения всех свечей по инструменту, поля from, to игнорируются

func (*MarketDataServiceClient) GetCandles

func (md *MarketDataServiceClient) GetCandles(instrumentId string, interval pb.CandleInterval, from, to time.Time) (*GetCandlesResponse, error)

GetCandles - Метод запроса исторических свечей по инструменту

func (*MarketDataServiceClient) GetClosePrices

func (md *MarketDataServiceClient) GetClosePrices(instrumentIds []string) (*GetClosePricesResponse, error)

GetClosePrices - Метод запроса цен закрытия торговой сессии по инструментам

func (*MarketDataServiceClient) GetHistoricCandles

func (md *MarketDataServiceClient) GetHistoricCandles(req *GetHistoricCandlesRequest) ([]*pb.HistoricCandle, error)

GetHistoricCandles - Метод загрузки исторических свечей. Если указать File = true, то создастся .csv файл с записями свечей в формате: instrumentId;time;open;close;high;low;volume. Имя файла по умолчанию: "candles hh:mm:ss"

func (*MarketDataServiceClient) GetLastPrices

func (md *MarketDataServiceClient) GetLastPrices(instrumentIds []string) (*GetLastPricesResponse, error)

GetLastPrices - Метод запроса цен последних сделок по инструментам

func (*MarketDataServiceClient) GetLastTrades

func (md *MarketDataServiceClient) GetLastTrades(instrumentId string, from, to time.Time) (*GetLastTradesResponse, error)

GetLastTrades - Метод запроса обезличенных сделок за последний час

func (*MarketDataServiceClient) GetOrderBook

func (md *MarketDataServiceClient) GetOrderBook(instrumentId string, depth int32) (*GetOrderBookResponse, error)

GetOrderBook - Метод получения стакана по инструменту

func (*MarketDataServiceClient) GetTradingStatus

func (md *MarketDataServiceClient) GetTradingStatus(instrumentId string) (*GetTradingStatusResponse, error)

GetTradingStatus - Метод запроса статуса торгов по инструменту

func (*MarketDataServiceClient) GetTradingStatuses

func (md *MarketDataServiceClient) GetTradingStatuses(instrumentIds []string) (*GetTradingStatusesResponse, error)

GetTradingStatuses - Метод запроса статуса торгов по инструментам

type MarketDataStream added in v1.2.1

type MarketDataStream struct {
	// contains filtered or unexported fields
}

MarketDataStream - стрим биржевой информации

func (*MarketDataStream) GetMySubscriptions added in v1.2.1

func (mds *MarketDataStream) GetMySubscriptions() error

GetMySubscriptions - метод получения подписок в рамках данного стрима

func (*MarketDataStream) Listen added in v1.2.1

func (mds *MarketDataStream) Listen() error

Listen - метод начинает слушать стрим и отправлять информацию в каналы

func (*MarketDataStream) Stop added in v1.2.1

func (mds *MarketDataStream) Stop()

Stop - Завершение работы стрима

func (*MarketDataStream) SubscribeCandle added in v1.2.1

func (mds *MarketDataStream) SubscribeCandle(ids []string, interval pb.SubscriptionInterval, waitingClose bool) (<-chan *pb.Candle, error)

SubscribeCandle - Метод подписки на свечи с заданным интервалом

func (*MarketDataStream) SubscribeInfo added in v1.2.1

func (mds *MarketDataStream) SubscribeInfo(ids []string) (<-chan *pb.TradingStatus, error)

SubscribeInfo - метод подписки на торговые статусы инструментов

func (*MarketDataStream) SubscribeLastPrice added in v1.2.1

func (mds *MarketDataStream) SubscribeLastPrice(ids []string) (<-chan *pb.LastPrice, error)

SubscribeLastPrice - метод подписки на последние цены инструментов

func (*MarketDataStream) SubscribeOrderBook added in v1.2.1

func (mds *MarketDataStream) SubscribeOrderBook(ids []string, depth int32) (<-chan *pb.OrderBook, error)

SubscribeOrderBook - метод подписки на стаканы инструментов с одинаковой глубиной

func (*MarketDataStream) SubscribeTrade added in v1.2.1

func (mds *MarketDataStream) SubscribeTrade(ids []string) (<-chan *pb.Trade, error)

SubscribeTrade - метод подписки на ленту обезличенных сделок

func (*MarketDataStream) UnSubscribeAll added in v1.2.1

func (mds *MarketDataStream) UnSubscribeAll() error

UnSubscribeAll - Метод отписки от всей информации, отслеживаемой на данный момент

func (*MarketDataStream) UnSubscribeCandle added in v1.2.1

func (mds *MarketDataStream) UnSubscribeCandle(ids []string, interval pb.SubscriptionInterval, waitingClose bool) error

UnSubscribeCandle - Метод отписки от свечей

func (*MarketDataStream) UnSubscribeInfo added in v1.2.1

func (mds *MarketDataStream) UnSubscribeInfo(ids []string) error

UnSubscribeInfo - метод отписки от торговых статусов инструментов

func (*MarketDataStream) UnSubscribeLastPrice added in v1.2.1

func (mds *MarketDataStream) UnSubscribeLastPrice(ids []string) error

UnSubscribeLastPrice - метод отписки от последних цен инструментов

func (*MarketDataStream) UnSubscribeOrderBook added in v1.2.1

func (mds *MarketDataStream) UnSubscribeOrderBook(ids []string) error

UnSubscribeOrderBook - метод отдписки от стаканов инструментов

func (*MarketDataStream) UnSubscribeTrade added in v1.2.1

func (mds *MarketDataStream) UnSubscribeTrade(ids []string) error

UnSubscribeTrade - метод отписки от ленты обезличенных сделок

type MarketDataStreamClient added in v1.2.1

type MarketDataStreamClient struct {
	// contains filtered or unexported fields
}

func (*MarketDataStreamClient) MarketDataStream added in v1.2.1

func (c *MarketDataStreamClient) MarketDataStream() (*MarketDataStream, error)

MarketDataStream - метод возвращает стрим биржевой информации

type OpenSandboxAccountResponse

type OpenSandboxAccountResponse struct {
	*pb.OpenSandboxAccountResponse
	Header metadata.MD
}

func (*OpenSandboxAccountResponse) GetHeader

func (p *OpenSandboxAccountResponse) GetHeader() metadata.MD

type OperationsResponse

type OperationsResponse struct {
	*pb.OperationsResponse
	Header metadata.MD
}

func (*OperationsResponse) GetHeader

func (p *OperationsResponse) GetHeader() metadata.MD

type OperationsServiceClient

type OperationsServiceClient struct {
	// contains filtered or unexported fields
}

func (*OperationsServiceClient) GenerateBrokerReport

func (os *OperationsServiceClient) GenerateBrokerReport(accountId string, from, to time.Time) (*GenerateBrokerReportResponse, error)

GenerateBrokerReport - Метод получения брокерского отчёта

func (*OperationsServiceClient) GenerateDividentsForeignIssuer

func (os *OperationsServiceClient) GenerateDividentsForeignIssuer(accountId string, from, to time.Time) (*GetDividendsForeignIssuerResponse, error)

GenerateDividentsForeignIssuer - Метод получения отчёта "Справка о доходах за пределами РФ"

func (*OperationsServiceClient) GetBrokerReport

func (os *OperationsServiceClient) GetBrokerReport(taskId string, page int32) (*GetBrokerReportResponse, error)

GetBrokerReport - Метод получения брокерского отчёта

func (*OperationsServiceClient) GetDividentsForeignIssuer

func (os *OperationsServiceClient) GetDividentsForeignIssuer(taskId string, page int32) (*GetDividendsForeignIssuerResponse, error)

GetDividentsForeignIssuer - Метод получения отчёта "Справка о доходах за пределами РФ"

func (*OperationsServiceClient) GetOperations

GetOperations - Метод получения списка операций по счёту

func (*OperationsServiceClient) GetOperationsByCursor

GetOperationsByCursor - Метод получения списка операций по счёту с пагинацией

func (*OperationsServiceClient) GetOperationsByCursorShort

func (os *OperationsServiceClient) GetOperationsByCursorShort(accountId string) (*GetOperationsByCursorResponse, error)

GetOperationsByCursorShort - Метод получения списка операций по счёту с пагинацией

func (*OperationsServiceClient) GetPortfolio

GetPortfolio - Метод получения портфеля по счёту

func (*OperationsServiceClient) GetPositions

func (os *OperationsServiceClient) GetPositions(accountId string) (*PositionsResponse, error)

GetPositions - Метод получения списка позиций по счёту

func (*OperationsServiceClient) GetWithdrawLimits

func (os *OperationsServiceClient) GetWithdrawLimits(accountId string) (*WithdrawLimitsResponse, error)

GetWithdrawLimits - Метод получения доступного остатка для вывода средств

type OperationsStreamClient

type OperationsStreamClient struct {
	// contains filtered or unexported fields
}

func (*OperationsStreamClient) PortfolioStream

func (o *OperationsStreamClient) PortfolioStream(accounts []string) (*PortfolioStream, error)

PortfolioStream - Server-side stream обновлений портфеля

func (*OperationsStreamClient) PositionsStream

func (o *OperationsStreamClient) PositionsStream(accounts []string) (*PositionsStream, error)

PositionsStream - Server-side stream обновлений информации по изменению позиций портфеля

type OptionResponse

type OptionResponse struct {
	*pb.OptionResponse
	Header metadata.MD
}

func (*OptionResponse) GetHeader

func (p *OptionResponse) GetHeader() metadata.MD

type OptionsResponse

type OptionsResponse struct {
	*pb.OptionsResponse
	Header metadata.MD
}

func (*OptionsResponse) GetHeader

func (p *OptionsResponse) GetHeader() metadata.MD

type OrdersServiceClient

type OrdersServiceClient struct {
	// contains filtered or unexported fields
}

func (*OrdersServiceClient) Buy

Buy - Метод выставления поручения на покупку инструмента

func (*OrdersServiceClient) CancelOrder

func (os *OrdersServiceClient) CancelOrder(accountId, orderId string) (*CancelOrderResponse, error)

CancelOrder - Метод отмены биржевой заявки

func (*OrdersServiceClient) GetOrderState

func (os *OrdersServiceClient) GetOrderState(accountId, orderId string) (*GetOrderStateResponse, error)

GetOrderState - Метод получения статуса торгового поручения

func (*OrdersServiceClient) GetOrders

func (os *OrdersServiceClient) GetOrders(accountId string) (*GetOrdersResponse, error)

GetOrders - Метод получения списка активных заявок по счёту

func (*OrdersServiceClient) PostOrder

PostOrder - Метод выставления биржевой заявки

func (*OrdersServiceClient) ReplaceOrder

ReplaceOrder - Метод изменения выставленной заявки

func (*OrdersServiceClient) Sell

Sell - Метод выставления поручения на продажу инструмента

type OrdersStreamClient

type OrdersStreamClient struct {
	// contains filtered or unexported fields
}

func (*OrdersStreamClient) TradesStream

func (o *OrdersStreamClient) TradesStream(accounts []string) (*TradesStream, error)

TradesStream - Стрим сделок по запрашиваемым аккаунтам

type PortfolioResponse

type PortfolioResponse struct {
	*pb.PortfolioResponse
	Header metadata.MD
}

func (*PortfolioResponse) GetHeader

func (p *PortfolioResponse) GetHeader() metadata.MD

type PortfolioStream

type PortfolioStream struct {
	// contains filtered or unexported fields
}

func (*PortfolioStream) Listen

func (p *PortfolioStream) Listen() error

Listen - метод начинает слушать стрим и отправлять информацию в канал, для получения канала: Portfolios()

func (*PortfolioStream) Portfolios

func (p *PortfolioStream) Portfolios() <-chan *pb.PortfolioResponse

Portfolios - Метод возвращает канал для чтения обновлений портфеля

func (*PortfolioStream) Stop

func (p *PortfolioStream) Stop()

Stop - Завершение работы стрима

type PositionsResponse

type PositionsResponse struct {
	*pb.PositionsResponse
	Header metadata.MD
}

func (*PositionsResponse) GetHeader

func (p *PositionsResponse) GetHeader() metadata.MD

type PositionsStream

type PositionsStream struct {
	// contains filtered or unexported fields
}

func (*PositionsStream) Listen

func (p *PositionsStream) Listen() error

Listen - метод начинает слушать стрим и отправлять информацию в канал, для получения канала: Positions()

func (*PositionsStream) Positions

func (p *PositionsStream) Positions() <-chan *pb.PositionData

Positions - Метод возвращает канал для чтения обновлений информации по изменению позиций портфеля

func (*PositionsStream) Stop

func (p *PositionsStream) Stop()

Stop - Завершение работы стрима

type PostOrderRequest

type PostOrderRequest struct {
	InstrumentId string
	Quantity     int64
	Price        *pb.Quotation
	Direction    pb.OrderDirection
	AccountId    string
	OrderType    pb.OrderType
	OrderId      string
}

type PostOrderRequestShort

type PostOrderRequestShort struct {
	InstrumentId string
	Quantity     int64
	Price        *pb.Quotation
	AccountId    string
	OrderType    pb.OrderType
	OrderId      string
}

type PostOrderResponse

type PostOrderResponse struct {
	*pb.PostOrderResponse
	Header metadata.MD
}

func (*PostOrderResponse) CurrencyResponse

func (p *PostOrderResponse) CurrencyResponse() metadata.MD

func (*PostOrderResponse) GetHeader

func (p *PostOrderResponse) GetHeader() metadata.MD

type PostStopOrderRequest

type PostStopOrderRequest struct {
	InstrumentId   string
	Quantity       int64
	Price          *pb.Quotation
	StopPrice      *pb.Quotation
	Direction      pb.StopOrderDirection
	AccountId      string
	ExpirationType pb.StopOrderExpirationType
	StopOrderType  pb.StopOrderType
	ExpireDate     time.Time
}

type PostStopOrderResponse

type PostStopOrderResponse struct {
	*pb.PostStopOrderResponse
	Header metadata.MD
}

func (*PostStopOrderResponse) GetHeader

func (p *PostStopOrderResponse) GetHeader() metadata.MD

type ReplaceOrderRequest

type ReplaceOrderRequest struct {
	AccountId  string
	OrderId    string
	NewOrderId string
	Quantity   int64
	Price      *pb.Quotation
	PriceType  pb.PriceType
}

type SandboxPayInRequest

type SandboxPayInRequest struct {
	AccountId string
	Currency  string
	Unit      int64
	Nano      int32
}

type SandboxPayInResponse

type SandboxPayInResponse struct {
	*pb.SandboxPayInResponse
	Header metadata.MD
}

func (*SandboxPayInResponse) GetHeader

func (p *SandboxPayInResponse) GetHeader() metadata.MD

type SandboxServiceClient

type SandboxServiceClient struct {
	// contains filtered or unexported fields
}

func (*SandboxServiceClient) CancelSandboxOrder

func (s *SandboxServiceClient) CancelSandboxOrder(accountId, orderId string) (*CancelOrderResponse, error)

CancelSandboxOrder - Метод отмены торгового поручения в песочнице

func (*SandboxServiceClient) CloseSandboxAccount

func (s *SandboxServiceClient) CloseSandboxAccount(accountId string) (*CloseSandboxAccountResponse, error)

CloseSandboxAccount - Метод закрытия счёта в песочнице

func (*SandboxServiceClient) GetSandboxAccounts

func (s *SandboxServiceClient) GetSandboxAccounts() (*GetAccountsResponse, error)

GetSandboxAccounts - Метод получения счетов в песочнице

func (*SandboxServiceClient) GetSandboxOperations

func (s *SandboxServiceClient) GetSandboxOperations(req *GetOperationsRequest) (*OperationsResponse, error)

GetSandboxOperations - Метод получения операций в песочнице по номеру счёта

func (*SandboxServiceClient) GetSandboxOperationsByCursor

GetSandboxOperationsByCursor - Метод получения операций в песочнице по номеру счета с пагинацией

func (*SandboxServiceClient) GetSandboxOrderState

func (s *SandboxServiceClient) GetSandboxOrderState(accountId, orderId string) (*GetOrderStateResponse, error)

GetSandboxOrderState - Метод получения статуса заявки в песочнице

func (*SandboxServiceClient) GetSandboxOrders

func (s *SandboxServiceClient) GetSandboxOrders(accountId string) (*GetOrdersResponse, error)

GetSandboxOrders - Метод получения списка активных заявок по счёту в песочнице

func (*SandboxServiceClient) GetSandboxPortfolio

func (s *SandboxServiceClient) GetSandboxPortfolio(accountId string, currency pb.PortfolioRequest_CurrencyRequest) (*PortfolioResponse, error)

GetSandboxPortfolio - Метод получения портфолио в песочнице

func (*SandboxServiceClient) GetSandboxPositions

func (s *SandboxServiceClient) GetSandboxPositions(accountId string) (*PositionsResponse, error)

GetSandboxPositions - Метод получения позиций по виртуальному счёту песочницы

func (*SandboxServiceClient) GetSandboxWithdrawLimits

func (s *SandboxServiceClient) GetSandboxWithdrawLimits(accountId string) (*WithdrawLimitsResponse, error)

GetSandboxWithdrawLimits - Метод получения доступного остатка для вывода средств в песочнице

func (*SandboxServiceClient) OpenSandboxAccount

func (s *SandboxServiceClient) OpenSandboxAccount() (*OpenSandboxAccountResponse, error)

OpenSandboxAccount - Метод регистрации счёта в песочнице

func (*SandboxServiceClient) PostSandboxOrder

func (s *SandboxServiceClient) PostSandboxOrder(req *PostOrderRequest) (*PostOrderResponse, error)

PostSandboxOrder - Метод выставления торгового поручения в песочнице

func (*SandboxServiceClient) ReplaceSandboxOrder

func (s *SandboxServiceClient) ReplaceSandboxOrder(req *ReplaceOrderRequest) (*PostOrderResponse, error)

ReplaceSandboxOrder - Метод изменения выставленной заявки

func (*SandboxServiceClient) SandboxPayIn

SandboxPayIn - Метод пополнения счёта в песочнице

type ShareResponse

type ShareResponse struct {
	*pb.ShareResponse
	Header metadata.MD
}

func (*ShareResponse) GetHeader

func (p *ShareResponse) GetHeader() metadata.MD

type SharesResponse

type SharesResponse struct {
	*pb.SharesResponse
	Header metadata.MD
}

func (*SharesResponse) GetHeader

func (p *SharesResponse) GetHeader() metadata.MD

type StopOrdersServiceClient

type StopOrdersServiceClient struct {
	// contains filtered or unexported fields
}

func (*StopOrdersServiceClient) CancelStopOrder

func (s *StopOrdersServiceClient) CancelStopOrder(accountId, stopOrderId string) (*CancelStopOrderResponse, error)

CancelStopOrder - Метод отмены стоп-заявки

func (*StopOrdersServiceClient) GetStopOrders

func (s *StopOrdersServiceClient) GetStopOrders(accountId string) (*GetStopOrdersResponse, error)

GetStopOrders - Метод получения списка активных стоп заявок по счёту

func (*StopOrdersServiceClient) PostStopOrder

PostStopOrder - Метод выставления стоп-заявки

type Timer added in v1.4.4

type Timer struct {
	// contains filtered or unexported fields
}

func NewTimer added in v1.4.4

func NewTimer(c *Client, exchange string, cancelAhead time.Duration) *Timer

NewTimer - Таймер сигнализирует о начале/завершении основной торговой сессии на конкретной бирже

func (*Timer) Events added in v1.4.4

func (t *Timer) Events() chan Event

Events - Канал событий об открытии/закрытии торгов

func (*Timer) Start added in v1.4.4

func (t *Timer) Start(ctx context.Context) error

Start - Запуск таймера

func (*Timer) Stop added in v1.4.4

func (t *Timer) Stop()

Stop - Завершение работы таймера

type TradesStream

type TradesStream struct {
	// contains filtered or unexported fields
}

func (*TradesStream) Listen

func (t *TradesStream) Listen() error

Listen - метод начинает слушать стрим и отправлять информацию в канал, для получения канала: Trades()

func (*TradesStream) Stop

func (t *TradesStream) Stop()

Stop - Завершение работы стрима

func (*TradesStream) Trades

func (t *TradesStream) Trades() <-chan *pb.OrderTrades

Trades - Метод возвращает канал для чтения информации о торговых поручениях

type TradingSchedulesResponse

type TradingSchedulesResponse struct {
	*pb.TradingSchedulesResponse
	Header metadata.MD
}

func (*TradingSchedulesResponse) GetHeader

func (p *TradingSchedulesResponse) GetHeader() metadata.MD

type UsersServiceClient

type UsersServiceClient struct {
	// contains filtered or unexported fields
}

func (*UsersServiceClient) GetAccounts

func (us *UsersServiceClient) GetAccounts() (*GetAccountsResponse, error)

GetAccounts - Метод получения счетов пользователя

func (*UsersServiceClient) GetInfo

func (us *UsersServiceClient) GetInfo() (*GetInfoResponse, error)

GetInfo - Метод получения информации о пользователе

func (*UsersServiceClient) GetMarginAttributes

func (us *UsersServiceClient) GetMarginAttributes(accountId string) (*GetMarginAttributesResponse, error)

GetMarginAttributes - Расчёт маржинальных показателей по счёту

func (*UsersServiceClient) GetUserTariff

func (us *UsersServiceClient) GetUserTariff() (*GetUserTariffResponse, error)

GetUserTariff - Запрос тарифа пользователя

type WithdrawLimitsResponse

type WithdrawLimitsResponse struct {
	*pb.WithdrawLimitsResponse
	Header metadata.MD
}

func (*WithdrawLimitsResponse) GetHeader

func (p *WithdrawLimitsResponse) GetHeader() metadata.MD

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL