UNPKG

@tinkoff/invest-js

Version:
196 lines (195 loc) 9.31 kB
import { BinaryReader, BinaryWriter } from "@bufbuild/protobuf/wire"; import { type CallContext, type CallOptions } from "nice-grpc-common"; import { Page, PageResponse, Quotation } from "./common"; /** Тип стратегии. */ export declare enum StrategyType { /** STRATEGY_TYPE_UNSPECIFIED - Не определен. */ STRATEGY_TYPE_UNSPECIFIED = 0, /** STRATEGY_TYPE_TECHNICAL - Техническая стратегия. */ STRATEGY_TYPE_TECHNICAL = 1, /** STRATEGY_TYPE_FUNDAMENTAL - Фундаментальная стратегия. */ STRATEGY_TYPE_FUNDAMENTAL = 2, UNRECOGNIZED = -1 } export declare function strategyTypeFromJSON(object: any): StrategyType; export declare function strategyTypeToJSON(object: StrategyType): string; /** Направление сигнала. */ export declare enum SignalDirection { /** SIGNAL_DIRECTION_UNSPECIFIED - Не определен. */ SIGNAL_DIRECTION_UNSPECIFIED = 0, /** SIGNAL_DIRECTION_BUY - Покупка. */ SIGNAL_DIRECTION_BUY = 1, /** SIGNAL_DIRECTION_SELL - Продажа. */ SIGNAL_DIRECTION_SELL = 2, UNRECOGNIZED = -1 } export declare function signalDirectionFromJSON(object: any): SignalDirection; export declare function signalDirectionToJSON(object: SignalDirection): string; /** Статус сигнала. */ export declare enum SignalState { /** SIGNAL_STATE_UNSPECIFIED - Не определен. */ SIGNAL_STATE_UNSPECIFIED = 0, /** SIGNAL_STATE_ACTIVE - Активный сигнал. */ SIGNAL_STATE_ACTIVE = 1, /** SIGNAL_STATE_CLOSED - Закрытый сигнал. */ SIGNAL_STATE_CLOSED = 2, /** SIGNAL_STATE_ALL - Все состояния. */ SIGNAL_STATE_ALL = 3, UNRECOGNIZED = -1 } export declare function signalStateFromJSON(object: any): SignalState; export declare function signalStateToJSON(object: SignalState): string; /** Запрос стратегий. */ export interface GetStrategiesRequest { /** Идентификатор стратегии */ strategyId?: string | undefined; } /** Стратегии */ export interface GetStrategiesResponse { strategies: Strategy[]; } /** Стратегия */ export interface Strategy { /** Идентификатор стратегии. */ strategyId: string; /** Название стратегии. */ strategyName: string; /** Описание стратегии. */ strategyDescription?: string | undefined; /** Ссылка на страницу с описанием стратегии. */ strategyUrl?: string | undefined; /** Тип стратегии. */ strategyType: StrategyType; /** Количество активных сигналов. */ activeSignals: number; /** Общее количество сигналов. */ totalSignals: number; /** Среднее время нахождения сигнала в позиции. */ timeInPosition: number; /** Средняя доходность сигнала в стратегии. */ averageSignalYield: Quotation | undefined; /** Средняя доходность сигналов в стратегии за последний год. */ averageSignalYieldYear: Quotation | undefined; /** Доходность стратегии. */ yield: Quotation | undefined; /** Доходность стратегии за последний год. */ yieldYear: Quotation | undefined; } /** Запрос сигналов. */ export interface GetSignalsRequest { /** Идентификатор сигнала. */ signalId?: string | undefined; /** Идентификатор стратегии. */ strategyId?: string | undefined; /** Тип стратегии. */ strategyType?: StrategyType | undefined; /** Идентификатор бумаги */ instrumentUid?: string | undefined; /** Дата начала запрашиваемого интервала в часовом поясе UTC. */ from?: Date | undefined; /** Дата конца запрашиваемого интервала в часовом поясе UTC. */ to?: Date | undefined; /** Направление сигнала. */ direction?: SignalDirection | undefined; /** Состояние сигнала. */ active?: SignalState | undefined; /** Настройки пагинации. */ paging?: Page | undefined; } /** Сигналы. */ export interface GetSignalsResponse { /** Массив сигналов. */ signals: Signal[]; /** Данные по пагинации. */ paging: PageResponse | undefined; } /** Сигнал. */ export interface Signal { /** Идентификатор сигнала. */ signalId: string; /** Идентификатор стратегии. */ strategyId: string; /** Название стратегии. */ strategyName: string; /** Идентификатор бумаги. */ instrumentUid: string; /** Дата и время создания сигнала в часовом поясе UTC. */ createDt: Date | undefined; /** Направление сигнала */ direction: SignalDirection; /** Цена бумаги на момент формирования сигнала */ initialPrice: Quotation | undefined; /** Дополнительная информация о сигнале. */ info?: string | undefined; /** Название сигнала. */ name: string; /** Целевая цена. */ targetPrice: Quotation | undefined; /** Дата и время дедлайна сигнала в часовом поясе UTC. */ endDt: Date | undefined; /** Вероятность сигнала. */ probability?: number | undefined; /** Порог закрытия сигнала по стоплосс. */ stoploss?: Quotation | undefined; /** Цена закрытия сигнала. */ closePrice?: Quotation | undefined; /** Дата и время закрытия сигнала в часовом поясе UTC. */ closeDt?: Date | undefined; } export declare const GetStrategiesRequest: MessageFns<GetStrategiesRequest>; export declare const GetStrategiesResponse: MessageFns<GetStrategiesResponse>; export declare const Strategy: MessageFns<Strategy>; export declare const GetSignalsRequest: MessageFns<GetSignalsRequest>; export declare const GetSignalsResponse: MessageFns<GetSignalsResponse>; export declare const Signal: MessageFns<Signal>; /** Сервис для получения технических сигналов и мнений аналитиков по инструментам */ export type SignalServiceDefinition = typeof SignalServiceDefinition; export declare const SignalServiceDefinition: { readonly name: "SignalService"; readonly fullName: "tinkoff.public.invest.api.contract.v1.SignalService"; readonly methods: { /** Запросить стратегии. */ readonly getStrategies: { readonly name: "GetStrategies"; readonly requestType: MessageFns<GetStrategiesRequest>; readonly requestStream: false; readonly responseType: MessageFns<GetStrategiesResponse>; readonly responseStream: false; readonly options: {}; }; /** Запросить сигналы. */ readonly getSignals: { readonly name: "GetSignals"; readonly requestType: MessageFns<GetSignalsRequest>; readonly requestStream: false; readonly responseType: MessageFns<GetSignalsResponse>; readonly responseStream: false; readonly options: {}; }; }; }; export interface SignalServiceImplementation<CallContextExt = {}> { /** Запросить стратегии. */ getStrategies(request: GetStrategiesRequest, context: CallContext & CallContextExt): Promise<DeepPartial<GetStrategiesResponse>>; /** Запросить сигналы. */ getSignals(request: GetSignalsRequest, context: CallContext & CallContextExt): Promise<DeepPartial<GetSignalsResponse>>; } export interface SignalServiceClient<CallOptionsExt = {}> { /** Запросить стратегии. */ getStrategies(request: DeepPartial<GetStrategiesRequest>, options?: CallOptions & CallOptionsExt): Promise<GetStrategiesResponse>; /** Запросить сигналы. */ getSignals(request: DeepPartial<GetSignalsRequest>, options?: CallOptions & CallOptionsExt): Promise<GetSignalsResponse>; } type Builtin = Date | Function | Uint8Array | string | number | boolean | undefined; type DeepPartial<T> = T extends Builtin ? T : T extends globalThis.Array<infer U> ? globalThis.Array<DeepPartial<U>> : T extends ReadonlyArray<infer U> ? ReadonlyArray<DeepPartial<U>> : T extends {} ? { [K in keyof T]?: DeepPartial<T[K]>; } : Partial<T>; interface MessageFns<T> { encode(message: T, writer?: BinaryWriter): BinaryWriter; decode(input: BinaryReader | Uint8Array, length?: number): T; fromJSON(object: any): T; toJSON(message: T): unknown; create(base?: DeepPartial<T>): T; fromPartial(object: DeepPartial<T>): T; } export {};