tinkoff-invest-api
Version:
Node.js SDK for Tinkoff Invest API
1,632 lines (1,554 loc) • 597 kB
text/typescript
/* eslint-disable */
import Long from "long";
import type { CallContext, CallOptions } from "nice-grpc-common";
import _m0 from "protobufjs/minimal.js";
import {
BrandData,
InstrumentStatus,
instrumentStatusFromJSON,
instrumentStatusToJSON,
InstrumentType,
instrumentTypeFromJSON,
instrumentTypeToJSON,
MoneyValue,
Page,
PageResponse,
Quotation,
SecurityTradingStatus,
securityTradingStatusFromJSON,
securityTradingStatusToJSON,
} from "./common.js";
import { Timestamp } from "./google/protobuf/timestamp.js";
export const protobufPackage = "tinkoff.public.invest.api.contract.v1";
/** Тип купонов. */
export enum CouponType {
/** COUPON_TYPE_UNSPECIFIED - Неопределённое значение. */
COUPON_TYPE_UNSPECIFIED = 0,
/** COUPON_TYPE_CONSTANT - Постоянный. */
COUPON_TYPE_CONSTANT = 1,
/** COUPON_TYPE_FLOATING - Плавающий. */
COUPON_TYPE_FLOATING = 2,
/** COUPON_TYPE_DISCOUNT - Дисконт. */
COUPON_TYPE_DISCOUNT = 3,
/** COUPON_TYPE_MORTGAGE - Ипотечный. */
COUPON_TYPE_MORTGAGE = 4,
/** COUPON_TYPE_FIX - Фиксированный. */
COUPON_TYPE_FIX = 5,
/** COUPON_TYPE_VARIABLE - Переменный. */
COUPON_TYPE_VARIABLE = 6,
/** COUPON_TYPE_OTHER - Прочее. */
COUPON_TYPE_OTHER = 7,
UNRECOGNIZED = -1,
}
export function couponTypeFromJSON(object: any): CouponType {
switch (object) {
case 0:
case "COUPON_TYPE_UNSPECIFIED":
return CouponType.COUPON_TYPE_UNSPECIFIED;
case 1:
case "COUPON_TYPE_CONSTANT":
return CouponType.COUPON_TYPE_CONSTANT;
case 2:
case "COUPON_TYPE_FLOATING":
return CouponType.COUPON_TYPE_FLOATING;
case 3:
case "COUPON_TYPE_DISCOUNT":
return CouponType.COUPON_TYPE_DISCOUNT;
case 4:
case "COUPON_TYPE_MORTGAGE":
return CouponType.COUPON_TYPE_MORTGAGE;
case 5:
case "COUPON_TYPE_FIX":
return CouponType.COUPON_TYPE_FIX;
case 6:
case "COUPON_TYPE_VARIABLE":
return CouponType.COUPON_TYPE_VARIABLE;
case 7:
case "COUPON_TYPE_OTHER":
return CouponType.COUPON_TYPE_OTHER;
case -1:
case "UNRECOGNIZED":
default:
return CouponType.UNRECOGNIZED;
}
}
export function couponTypeToJSON(object: CouponType): string {
switch (object) {
case CouponType.COUPON_TYPE_UNSPECIFIED:
return "COUPON_TYPE_UNSPECIFIED";
case CouponType.COUPON_TYPE_CONSTANT:
return "COUPON_TYPE_CONSTANT";
case CouponType.COUPON_TYPE_FLOATING:
return "COUPON_TYPE_FLOATING";
case CouponType.COUPON_TYPE_DISCOUNT:
return "COUPON_TYPE_DISCOUNT";
case CouponType.COUPON_TYPE_MORTGAGE:
return "COUPON_TYPE_MORTGAGE";
case CouponType.COUPON_TYPE_FIX:
return "COUPON_TYPE_FIX";
case CouponType.COUPON_TYPE_VARIABLE:
return "COUPON_TYPE_VARIABLE";
case CouponType.COUPON_TYPE_OTHER:
return "COUPON_TYPE_OTHER";
case CouponType.UNRECOGNIZED:
default:
return "UNRECOGNIZED";
}
}
/** Тип опциона по направлению сделки. */
export enum OptionDirection {
/** OPTION_DIRECTION_UNSPECIFIED - Тип не определён. */
OPTION_DIRECTION_UNSPECIFIED = 0,
/** OPTION_DIRECTION_PUT - Опцион на продажу. */
OPTION_DIRECTION_PUT = 1,
/** OPTION_DIRECTION_CALL - Опцион на покупку. */
OPTION_DIRECTION_CALL = 2,
UNRECOGNIZED = -1,
}
export function optionDirectionFromJSON(object: any): OptionDirection {
switch (object) {
case 0:
case "OPTION_DIRECTION_UNSPECIFIED":
return OptionDirection.OPTION_DIRECTION_UNSPECIFIED;
case 1:
case "OPTION_DIRECTION_PUT":
return OptionDirection.OPTION_DIRECTION_PUT;
case 2:
case "OPTION_DIRECTION_CALL":
return OptionDirection.OPTION_DIRECTION_CALL;
case -1:
case "UNRECOGNIZED":
default:
return OptionDirection.UNRECOGNIZED;
}
}
export function optionDirectionToJSON(object: OptionDirection): string {
switch (object) {
case OptionDirection.OPTION_DIRECTION_UNSPECIFIED:
return "OPTION_DIRECTION_UNSPECIFIED";
case OptionDirection.OPTION_DIRECTION_PUT:
return "OPTION_DIRECTION_PUT";
case OptionDirection.OPTION_DIRECTION_CALL:
return "OPTION_DIRECTION_CALL";
case OptionDirection.UNRECOGNIZED:
default:
return "UNRECOGNIZED";
}
}
/** Тип расчётов по опциону. */
export enum OptionPaymentType {
/** OPTION_PAYMENT_TYPE_UNSPECIFIED - Тип не определён. */
OPTION_PAYMENT_TYPE_UNSPECIFIED = 0,
/** OPTION_PAYMENT_TYPE_PREMIUM - Опционы с использованием премии в расчётах. */
OPTION_PAYMENT_TYPE_PREMIUM = 1,
/** OPTION_PAYMENT_TYPE_MARGINAL - Маржируемые опционы. */
OPTION_PAYMENT_TYPE_MARGINAL = 2,
UNRECOGNIZED = -1,
}
export function optionPaymentTypeFromJSON(object: any): OptionPaymentType {
switch (object) {
case 0:
case "OPTION_PAYMENT_TYPE_UNSPECIFIED":
return OptionPaymentType.OPTION_PAYMENT_TYPE_UNSPECIFIED;
case 1:
case "OPTION_PAYMENT_TYPE_PREMIUM":
return OptionPaymentType.OPTION_PAYMENT_TYPE_PREMIUM;
case 2:
case "OPTION_PAYMENT_TYPE_MARGINAL":
return OptionPaymentType.OPTION_PAYMENT_TYPE_MARGINAL;
case -1:
case "UNRECOGNIZED":
default:
return OptionPaymentType.UNRECOGNIZED;
}
}
export function optionPaymentTypeToJSON(object: OptionPaymentType): string {
switch (object) {
case OptionPaymentType.OPTION_PAYMENT_TYPE_UNSPECIFIED:
return "OPTION_PAYMENT_TYPE_UNSPECIFIED";
case OptionPaymentType.OPTION_PAYMENT_TYPE_PREMIUM:
return "OPTION_PAYMENT_TYPE_PREMIUM";
case OptionPaymentType.OPTION_PAYMENT_TYPE_MARGINAL:
return "OPTION_PAYMENT_TYPE_MARGINAL";
case OptionPaymentType.UNRECOGNIZED:
default:
return "UNRECOGNIZED";
}
}
/** Тип опциона по стилю. */
export enum OptionStyle {
/** OPTION_STYLE_UNSPECIFIED - Тип не определён. */
OPTION_STYLE_UNSPECIFIED = 0,
/** OPTION_STYLE_AMERICAN - Американский опцион. */
OPTION_STYLE_AMERICAN = 1,
/** OPTION_STYLE_EUROPEAN - Европейский опцион. */
OPTION_STYLE_EUROPEAN = 2,
UNRECOGNIZED = -1,
}
export function optionStyleFromJSON(object: any): OptionStyle {
switch (object) {
case 0:
case "OPTION_STYLE_UNSPECIFIED":
return OptionStyle.OPTION_STYLE_UNSPECIFIED;
case 1:
case "OPTION_STYLE_AMERICAN":
return OptionStyle.OPTION_STYLE_AMERICAN;
case 2:
case "OPTION_STYLE_EUROPEAN":
return OptionStyle.OPTION_STYLE_EUROPEAN;
case -1:
case "UNRECOGNIZED":
default:
return OptionStyle.UNRECOGNIZED;
}
}
export function optionStyleToJSON(object: OptionStyle): string {
switch (object) {
case OptionStyle.OPTION_STYLE_UNSPECIFIED:
return "OPTION_STYLE_UNSPECIFIED";
case OptionStyle.OPTION_STYLE_AMERICAN:
return "OPTION_STYLE_AMERICAN";
case OptionStyle.OPTION_STYLE_EUROPEAN:
return "OPTION_STYLE_EUROPEAN";
case OptionStyle.UNRECOGNIZED:
default:
return "UNRECOGNIZED";
}
}
/** Тип опциона по способу исполнения. */
export enum OptionSettlementType {
/** OPTION_EXECUTION_TYPE_UNSPECIFIED - Тип не определён. */
OPTION_EXECUTION_TYPE_UNSPECIFIED = 0,
/** OPTION_EXECUTION_TYPE_PHYSICAL_DELIVERY - Поставочный тип опциона. */
OPTION_EXECUTION_TYPE_PHYSICAL_DELIVERY = 1,
/** OPTION_EXECUTION_TYPE_CASH_SETTLEMENT - Расчётный тип опциона. */
OPTION_EXECUTION_TYPE_CASH_SETTLEMENT = 2,
UNRECOGNIZED = -1,
}
export function optionSettlementTypeFromJSON(object: any): OptionSettlementType {
switch (object) {
case 0:
case "OPTION_EXECUTION_TYPE_UNSPECIFIED":
return OptionSettlementType.OPTION_EXECUTION_TYPE_UNSPECIFIED;
case 1:
case "OPTION_EXECUTION_TYPE_PHYSICAL_DELIVERY":
return OptionSettlementType.OPTION_EXECUTION_TYPE_PHYSICAL_DELIVERY;
case 2:
case "OPTION_EXECUTION_TYPE_CASH_SETTLEMENT":
return OptionSettlementType.OPTION_EXECUTION_TYPE_CASH_SETTLEMENT;
case -1:
case "UNRECOGNIZED":
default:
return OptionSettlementType.UNRECOGNIZED;
}
}
export function optionSettlementTypeToJSON(object: OptionSettlementType): string {
switch (object) {
case OptionSettlementType.OPTION_EXECUTION_TYPE_UNSPECIFIED:
return "OPTION_EXECUTION_TYPE_UNSPECIFIED";
case OptionSettlementType.OPTION_EXECUTION_TYPE_PHYSICAL_DELIVERY:
return "OPTION_EXECUTION_TYPE_PHYSICAL_DELIVERY";
case OptionSettlementType.OPTION_EXECUTION_TYPE_CASH_SETTLEMENT:
return "OPTION_EXECUTION_TYPE_CASH_SETTLEMENT";
case OptionSettlementType.UNRECOGNIZED:
default:
return "UNRECOGNIZED";
}
}
/** Тип идентификатора инструмента. [Подробнее об идентификации инструментов](https://russianinvestments.github.io/investAPI/faq_identification/). */
export enum InstrumentIdType {
/** INSTRUMENT_ID_UNSPECIFIED - Значение не определено. */
INSTRUMENT_ID_UNSPECIFIED = 0,
/** INSTRUMENT_ID_TYPE_FIGI - FIGI. */
INSTRUMENT_ID_TYPE_FIGI = 1,
/** INSTRUMENT_ID_TYPE_TICKER - Ticker. */
INSTRUMENT_ID_TYPE_TICKER = 2,
/** INSTRUMENT_ID_TYPE_UID - Уникальный идентификатор. */
INSTRUMENT_ID_TYPE_UID = 3,
/** INSTRUMENT_ID_TYPE_POSITION_UID - Идентификатор позиции. */
INSTRUMENT_ID_TYPE_POSITION_UID = 4,
UNRECOGNIZED = -1,
}
export function instrumentIdTypeFromJSON(object: any): InstrumentIdType {
switch (object) {
case 0:
case "INSTRUMENT_ID_UNSPECIFIED":
return InstrumentIdType.INSTRUMENT_ID_UNSPECIFIED;
case 1:
case "INSTRUMENT_ID_TYPE_FIGI":
return InstrumentIdType.INSTRUMENT_ID_TYPE_FIGI;
case 2:
case "INSTRUMENT_ID_TYPE_TICKER":
return InstrumentIdType.INSTRUMENT_ID_TYPE_TICKER;
case 3:
case "INSTRUMENT_ID_TYPE_UID":
return InstrumentIdType.INSTRUMENT_ID_TYPE_UID;
case 4:
case "INSTRUMENT_ID_TYPE_POSITION_UID":
return InstrumentIdType.INSTRUMENT_ID_TYPE_POSITION_UID;
case -1:
case "UNRECOGNIZED":
default:
return InstrumentIdType.UNRECOGNIZED;
}
}
export function instrumentIdTypeToJSON(object: InstrumentIdType): string {
switch (object) {
case InstrumentIdType.INSTRUMENT_ID_UNSPECIFIED:
return "INSTRUMENT_ID_UNSPECIFIED";
case InstrumentIdType.INSTRUMENT_ID_TYPE_FIGI:
return "INSTRUMENT_ID_TYPE_FIGI";
case InstrumentIdType.INSTRUMENT_ID_TYPE_TICKER:
return "INSTRUMENT_ID_TYPE_TICKER";
case InstrumentIdType.INSTRUMENT_ID_TYPE_UID:
return "INSTRUMENT_ID_TYPE_UID";
case InstrumentIdType.INSTRUMENT_ID_TYPE_POSITION_UID:
return "INSTRUMENT_ID_TYPE_POSITION_UID";
case InstrumentIdType.UNRECOGNIZED:
default:
return "UNRECOGNIZED";
}
}
/** Тип акций. */
export enum ShareType {
/** SHARE_TYPE_UNSPECIFIED - Значение не определено. */
SHARE_TYPE_UNSPECIFIED = 0,
/** SHARE_TYPE_COMMON - Обыкновенная. */
SHARE_TYPE_COMMON = 1,
/** SHARE_TYPE_PREFERRED - Привилегированная. */
SHARE_TYPE_PREFERRED = 2,
/** SHARE_TYPE_ADR - Американские депозитарные расписки. */
SHARE_TYPE_ADR = 3,
/** SHARE_TYPE_GDR - Глобальные депозитарные расписки. */
SHARE_TYPE_GDR = 4,
/** SHARE_TYPE_MLP - Товарищество с ограниченной ответственностью. */
SHARE_TYPE_MLP = 5,
/** SHARE_TYPE_NY_REG_SHRS - Акции из реестра Нью-Йорка. */
SHARE_TYPE_NY_REG_SHRS = 6,
/** SHARE_TYPE_CLOSED_END_FUND - Закрытый инвестиционный фонд. */
SHARE_TYPE_CLOSED_END_FUND = 7,
/** SHARE_TYPE_REIT - Траст недвижимости. */
SHARE_TYPE_REIT = 8,
UNRECOGNIZED = -1,
}
export function shareTypeFromJSON(object: any): ShareType {
switch (object) {
case 0:
case "SHARE_TYPE_UNSPECIFIED":
return ShareType.SHARE_TYPE_UNSPECIFIED;
case 1:
case "SHARE_TYPE_COMMON":
return ShareType.SHARE_TYPE_COMMON;
case 2:
case "SHARE_TYPE_PREFERRED":
return ShareType.SHARE_TYPE_PREFERRED;
case 3:
case "SHARE_TYPE_ADR":
return ShareType.SHARE_TYPE_ADR;
case 4:
case "SHARE_TYPE_GDR":
return ShareType.SHARE_TYPE_GDR;
case 5:
case "SHARE_TYPE_MLP":
return ShareType.SHARE_TYPE_MLP;
case 6:
case "SHARE_TYPE_NY_REG_SHRS":
return ShareType.SHARE_TYPE_NY_REG_SHRS;
case 7:
case "SHARE_TYPE_CLOSED_END_FUND":
return ShareType.SHARE_TYPE_CLOSED_END_FUND;
case 8:
case "SHARE_TYPE_REIT":
return ShareType.SHARE_TYPE_REIT;
case -1:
case "UNRECOGNIZED":
default:
return ShareType.UNRECOGNIZED;
}
}
export function shareTypeToJSON(object: ShareType): string {
switch (object) {
case ShareType.SHARE_TYPE_UNSPECIFIED:
return "SHARE_TYPE_UNSPECIFIED";
case ShareType.SHARE_TYPE_COMMON:
return "SHARE_TYPE_COMMON";
case ShareType.SHARE_TYPE_PREFERRED:
return "SHARE_TYPE_PREFERRED";
case ShareType.SHARE_TYPE_ADR:
return "SHARE_TYPE_ADR";
case ShareType.SHARE_TYPE_GDR:
return "SHARE_TYPE_GDR";
case ShareType.SHARE_TYPE_MLP:
return "SHARE_TYPE_MLP";
case ShareType.SHARE_TYPE_NY_REG_SHRS:
return "SHARE_TYPE_NY_REG_SHRS";
case ShareType.SHARE_TYPE_CLOSED_END_FUND:
return "SHARE_TYPE_CLOSED_END_FUND";
case ShareType.SHARE_TYPE_REIT:
return "SHARE_TYPE_REIT";
case ShareType.UNRECOGNIZED:
default:
return "UNRECOGNIZED";
}
}
/** Тип актива. */
export enum AssetType {
/** ASSET_TYPE_UNSPECIFIED - Тип не определён. */
ASSET_TYPE_UNSPECIFIED = 0,
/** ASSET_TYPE_CURRENCY - Валюта. */
ASSET_TYPE_CURRENCY = 1,
/** ASSET_TYPE_COMMODITY - Товар. */
ASSET_TYPE_COMMODITY = 2,
/** ASSET_TYPE_INDEX - Индекс. */
ASSET_TYPE_INDEX = 3,
/** ASSET_TYPE_SECURITY - Ценная бумага. */
ASSET_TYPE_SECURITY = 4,
UNRECOGNIZED = -1,
}
export function assetTypeFromJSON(object: any): AssetType {
switch (object) {
case 0:
case "ASSET_TYPE_UNSPECIFIED":
return AssetType.ASSET_TYPE_UNSPECIFIED;
case 1:
case "ASSET_TYPE_CURRENCY":
return AssetType.ASSET_TYPE_CURRENCY;
case 2:
case "ASSET_TYPE_COMMODITY":
return AssetType.ASSET_TYPE_COMMODITY;
case 3:
case "ASSET_TYPE_INDEX":
return AssetType.ASSET_TYPE_INDEX;
case 4:
case "ASSET_TYPE_SECURITY":
return AssetType.ASSET_TYPE_SECURITY;
case -1:
case "UNRECOGNIZED":
default:
return AssetType.UNRECOGNIZED;
}
}
export function assetTypeToJSON(object: AssetType): string {
switch (object) {
case AssetType.ASSET_TYPE_UNSPECIFIED:
return "ASSET_TYPE_UNSPECIFIED";
case AssetType.ASSET_TYPE_CURRENCY:
return "ASSET_TYPE_CURRENCY";
case AssetType.ASSET_TYPE_COMMODITY:
return "ASSET_TYPE_COMMODITY";
case AssetType.ASSET_TYPE_INDEX:
return "ASSET_TYPE_INDEX";
case AssetType.ASSET_TYPE_SECURITY:
return "ASSET_TYPE_SECURITY";
case AssetType.UNRECOGNIZED:
default:
return "UNRECOGNIZED";
}
}
/** Тип структурной ноты. */
export enum StructuredProductType {
/** SP_TYPE_UNSPECIFIED - Тип не определён. */
SP_TYPE_UNSPECIFIED = 0,
/** SP_TYPE_DELIVERABLE - Поставочный. */
SP_TYPE_DELIVERABLE = 1,
/** SP_TYPE_NON_DELIVERABLE - Беспоставочный. */
SP_TYPE_NON_DELIVERABLE = 2,
UNRECOGNIZED = -1,
}
export function structuredProductTypeFromJSON(object: any): StructuredProductType {
switch (object) {
case 0:
case "SP_TYPE_UNSPECIFIED":
return StructuredProductType.SP_TYPE_UNSPECIFIED;
case 1:
case "SP_TYPE_DELIVERABLE":
return StructuredProductType.SP_TYPE_DELIVERABLE;
case 2:
case "SP_TYPE_NON_DELIVERABLE":
return StructuredProductType.SP_TYPE_NON_DELIVERABLE;
case -1:
case "UNRECOGNIZED":
default:
return StructuredProductType.UNRECOGNIZED;
}
}
export function structuredProductTypeToJSON(object: StructuredProductType): string {
switch (object) {
case StructuredProductType.SP_TYPE_UNSPECIFIED:
return "SP_TYPE_UNSPECIFIED";
case StructuredProductType.SP_TYPE_DELIVERABLE:
return "SP_TYPE_DELIVERABLE";
case StructuredProductType.SP_TYPE_NON_DELIVERABLE:
return "SP_TYPE_NON_DELIVERABLE";
case StructuredProductType.UNRECOGNIZED:
default:
return "UNRECOGNIZED";
}
}
/** Тип действия со списком избранных инструментов. */
export enum EditFavoritesActionType {
/** EDIT_FAVORITES_ACTION_TYPE_UNSPECIFIED - Тип не определён. */
EDIT_FAVORITES_ACTION_TYPE_UNSPECIFIED = 0,
/** EDIT_FAVORITES_ACTION_TYPE_ADD - Добавить в список. */
EDIT_FAVORITES_ACTION_TYPE_ADD = 1,
/** EDIT_FAVORITES_ACTION_TYPE_DEL - Удалить из списка. */
EDIT_FAVORITES_ACTION_TYPE_DEL = 2,
UNRECOGNIZED = -1,
}
export function editFavoritesActionTypeFromJSON(object: any): EditFavoritesActionType {
switch (object) {
case 0:
case "EDIT_FAVORITES_ACTION_TYPE_UNSPECIFIED":
return EditFavoritesActionType.EDIT_FAVORITES_ACTION_TYPE_UNSPECIFIED;
case 1:
case "EDIT_FAVORITES_ACTION_TYPE_ADD":
return EditFavoritesActionType.EDIT_FAVORITES_ACTION_TYPE_ADD;
case 2:
case "EDIT_FAVORITES_ACTION_TYPE_DEL":
return EditFavoritesActionType.EDIT_FAVORITES_ACTION_TYPE_DEL;
case -1:
case "UNRECOGNIZED":
default:
return EditFavoritesActionType.UNRECOGNIZED;
}
}
export function editFavoritesActionTypeToJSON(object: EditFavoritesActionType): string {
switch (object) {
case EditFavoritesActionType.EDIT_FAVORITES_ACTION_TYPE_UNSPECIFIED:
return "EDIT_FAVORITES_ACTION_TYPE_UNSPECIFIED";
case EditFavoritesActionType.EDIT_FAVORITES_ACTION_TYPE_ADD:
return "EDIT_FAVORITES_ACTION_TYPE_ADD";
case EditFavoritesActionType.EDIT_FAVORITES_ACTION_TYPE_DEL:
return "EDIT_FAVORITES_ACTION_TYPE_DEL";
case EditFavoritesActionType.UNRECOGNIZED:
default:
return "UNRECOGNIZED";
}
}
/** Реальная площадка исполнения расчётов. */
export enum RealExchange {
/** REAL_EXCHANGE_UNSPECIFIED - Тип не определён. */
REAL_EXCHANGE_UNSPECIFIED = 0,
/** REAL_EXCHANGE_MOEX - Московская биржа. */
REAL_EXCHANGE_MOEX = 1,
/** REAL_EXCHANGE_RTS - Санкт-Петербургская биржа. */
REAL_EXCHANGE_RTS = 2,
/** REAL_EXCHANGE_OTC - Внебиржевой инструмент. */
REAL_EXCHANGE_OTC = 3,
/** REAL_EXCHANGE_DEALER - Инструмент, торгуемый на площадке брокера. */
REAL_EXCHANGE_DEALER = 4,
UNRECOGNIZED = -1,
}
export function realExchangeFromJSON(object: any): RealExchange {
switch (object) {
case 0:
case "REAL_EXCHANGE_UNSPECIFIED":
return RealExchange.REAL_EXCHANGE_UNSPECIFIED;
case 1:
case "REAL_EXCHANGE_MOEX":
return RealExchange.REAL_EXCHANGE_MOEX;
case 2:
case "REAL_EXCHANGE_RTS":
return RealExchange.REAL_EXCHANGE_RTS;
case 3:
case "REAL_EXCHANGE_OTC":
return RealExchange.REAL_EXCHANGE_OTC;
case 4:
case "REAL_EXCHANGE_DEALER":
return RealExchange.REAL_EXCHANGE_DEALER;
case -1:
case "UNRECOGNIZED":
default:
return RealExchange.UNRECOGNIZED;
}
}
export function realExchangeToJSON(object: RealExchange): string {
switch (object) {
case RealExchange.REAL_EXCHANGE_UNSPECIFIED:
return "REAL_EXCHANGE_UNSPECIFIED";
case RealExchange.REAL_EXCHANGE_MOEX:
return "REAL_EXCHANGE_MOEX";
case RealExchange.REAL_EXCHANGE_RTS:
return "REAL_EXCHANGE_RTS";
case RealExchange.REAL_EXCHANGE_OTC:
return "REAL_EXCHANGE_OTC";
case RealExchange.REAL_EXCHANGE_DEALER:
return "REAL_EXCHANGE_DEALER";
case RealExchange.UNRECOGNIZED:
default:
return "UNRECOGNIZED";
}
}
export enum Recommendation {
/** RECOMMENDATION_UNSPECIFIED - Не определено. */
RECOMMENDATION_UNSPECIFIED = 0,
/** RECOMMENDATION_BUY - Покупать. */
RECOMMENDATION_BUY = 1,
/** RECOMMENDATION_HOLD - Держать. */
RECOMMENDATION_HOLD = 2,
/** RECOMMENDATION_SELL - Продавать. */
RECOMMENDATION_SELL = 3,
UNRECOGNIZED = -1,
}
export function recommendationFromJSON(object: any): Recommendation {
switch (object) {
case 0:
case "RECOMMENDATION_UNSPECIFIED":
return Recommendation.RECOMMENDATION_UNSPECIFIED;
case 1:
case "RECOMMENDATION_BUY":
return Recommendation.RECOMMENDATION_BUY;
case 2:
case "RECOMMENDATION_HOLD":
return Recommendation.RECOMMENDATION_HOLD;
case 3:
case "RECOMMENDATION_SELL":
return Recommendation.RECOMMENDATION_SELL;
case -1:
case "UNRECOGNIZED":
default:
return Recommendation.UNRECOGNIZED;
}
}
export function recommendationToJSON(object: Recommendation): string {
switch (object) {
case Recommendation.RECOMMENDATION_UNSPECIFIED:
return "RECOMMENDATION_UNSPECIFIED";
case Recommendation.RECOMMENDATION_BUY:
return "RECOMMENDATION_BUY";
case Recommendation.RECOMMENDATION_HOLD:
return "RECOMMENDATION_HOLD";
case Recommendation.RECOMMENDATION_SELL:
return "RECOMMENDATION_SELL";
case Recommendation.UNRECOGNIZED:
default:
return "UNRECOGNIZED";
}
}
/** Уровень риска облигации. */
export enum RiskLevel {
/** RISK_LEVEL_UNSPECIFIED - Не указан. */
RISK_LEVEL_UNSPECIFIED = 0,
/** RISK_LEVEL_LOW - Низкий уровень риска. */
RISK_LEVEL_LOW = 1,
/** RISK_LEVEL_MODERATE - Средний уровень риска. */
RISK_LEVEL_MODERATE = 2,
/** RISK_LEVEL_HIGH - Высокий уровень риска. */
RISK_LEVEL_HIGH = 3,
UNRECOGNIZED = -1,
}
export function riskLevelFromJSON(object: any): RiskLevel {
switch (object) {
case 0:
case "RISK_LEVEL_UNSPECIFIED":
return RiskLevel.RISK_LEVEL_UNSPECIFIED;
case 1:
case "RISK_LEVEL_LOW":
return RiskLevel.RISK_LEVEL_LOW;
case 2:
case "RISK_LEVEL_MODERATE":
return RiskLevel.RISK_LEVEL_MODERATE;
case 3:
case "RISK_LEVEL_HIGH":
return RiskLevel.RISK_LEVEL_HIGH;
case -1:
case "UNRECOGNIZED":
default:
return RiskLevel.UNRECOGNIZED;
}
}
export function riskLevelToJSON(object: RiskLevel): string {
switch (object) {
case RiskLevel.RISK_LEVEL_UNSPECIFIED:
return "RISK_LEVEL_UNSPECIFIED";
case RiskLevel.RISK_LEVEL_LOW:
return "RISK_LEVEL_LOW";
case RiskLevel.RISK_LEVEL_MODERATE:
return "RISK_LEVEL_MODERATE";
case RiskLevel.RISK_LEVEL_HIGH:
return "RISK_LEVEL_HIGH";
case RiskLevel.UNRECOGNIZED:
default:
return "UNRECOGNIZED";
}
}
export enum BondType {
/** BOND_TYPE_UNSPECIFIED - Тип облигации не определён. */
BOND_TYPE_UNSPECIFIED = 0,
/** BOND_TYPE_REPLACED - Замещающая облигация. */
BOND_TYPE_REPLACED = 1,
UNRECOGNIZED = -1,
}
export function bondTypeFromJSON(object: any): BondType {
switch (object) {
case 0:
case "BOND_TYPE_UNSPECIFIED":
return BondType.BOND_TYPE_UNSPECIFIED;
case 1:
case "BOND_TYPE_REPLACED":
return BondType.BOND_TYPE_REPLACED;
case -1:
case "UNRECOGNIZED":
default:
return BondType.UNRECOGNIZED;
}
}
export function bondTypeToJSON(object: BondType): string {
switch (object) {
case BondType.BOND_TYPE_UNSPECIFIED:
return "BOND_TYPE_UNSPECIFIED";
case BondType.BOND_TYPE_REPLACED:
return "BOND_TYPE_REPLACED";
case BondType.UNRECOGNIZED:
default:
return "UNRECOGNIZED";
}
}
/** Площадка торговли. */
export enum InstrumentExchangeType {
/** INSTRUMENT_EXCHANGE_UNSPECIFIED - Площадка торговли не определена. */
INSTRUMENT_EXCHANGE_UNSPECIFIED = 0,
/** INSTRUMENT_EXCHANGE_DEALER - Бумага, торгуемая у дилера. */
INSTRUMENT_EXCHANGE_DEALER = 1,
UNRECOGNIZED = -1,
}
export function instrumentExchangeTypeFromJSON(object: any): InstrumentExchangeType {
switch (object) {
case 0:
case "INSTRUMENT_EXCHANGE_UNSPECIFIED":
return InstrumentExchangeType.INSTRUMENT_EXCHANGE_UNSPECIFIED;
case 1:
case "INSTRUMENT_EXCHANGE_DEALER":
return InstrumentExchangeType.INSTRUMENT_EXCHANGE_DEALER;
case -1:
case "UNRECOGNIZED":
default:
return InstrumentExchangeType.UNRECOGNIZED;
}
}
export function instrumentExchangeTypeToJSON(object: InstrumentExchangeType): string {
switch (object) {
case InstrumentExchangeType.INSTRUMENT_EXCHANGE_UNSPECIFIED:
return "INSTRUMENT_EXCHANGE_UNSPECIFIED";
case InstrumentExchangeType.INSTRUMENT_EXCHANGE_DEALER:
return "INSTRUMENT_EXCHANGE_DEALER";
case InstrumentExchangeType.UNRECOGNIZED:
default:
return "UNRECOGNIZED";
}
}
/** Запрос расписания торгов. */
export interface TradingSchedulesRequest {
/** Наименование биржи или расчетного календаря. </br>Если не передаётся, возвращается информация по всем доступным торговым площадкам. */
exchange?:
| string
| undefined;
/** Начало периода по UTC. */
from?:
| Date
| undefined;
/** Окончание периода по UTC. */
to?: Date | undefined;
}
/** Список торговых площадок. */
export interface TradingSchedulesResponse {
/** Список торговых площадок и режимов торгов. */
exchanges: TradingSchedule[];
}
/** Данные по торговой площадке. */
export interface TradingSchedule {
/** Наименование торговой площадки. */
exchange: string;
/** Массив с торговыми и неторговыми днями. */
days: TradingDay[];
}
/** Информация о времени торгов. */
export interface TradingDay {
/** Дата. */
date?:
| Date
| undefined;
/** Признак торгового дня на бирже. */
isTradingDay: boolean;
/** Время начала торгов по UTC. */
startTime?:
| Date
| undefined;
/** Время окончания торгов по UTC. */
endTime?:
| Date
| undefined;
/** Время начала аукциона открытия по UTC. */
openingAuctionStartTime?:
| Date
| undefined;
/** Время окончания аукциона закрытия по UTC. */
closingAuctionEndTime?:
| Date
| undefined;
/** Время начала аукциона открытия вечерней сессии по UTC. */
eveningOpeningAuctionStartTime?:
| Date
| undefined;
/** Время начала вечерней сессии по UTC. */
eveningStartTime?:
| Date
| undefined;
/** Время окончания вечерней сессии по UTC. */
eveningEndTime?:
| Date
| undefined;
/** Время начала основного клиринга по UTC. */
clearingStartTime?:
| Date
| undefined;
/** Время окончания основного клиринга по UTC. */
clearingEndTime?:
| Date
| undefined;
/** Время начала премаркета по UTC. */
premarketStartTime?:
| Date
| undefined;
/** Время окончания премаркета по UTC. */
premarketEndTime?:
| Date
| undefined;
/** Время начала аукциона закрытия по UTC. */
closingAuctionStartTime?:
| Date
| undefined;
/** Время окончания аукциона открытия по UTC. */
openingAuctionEndTime?:
| Date
| undefined;
/** Торговые интервалы. */
intervals: TradingInterval[];
}
/** Запрос получения инструмента по идентификатору. */
export interface InstrumentRequest {
/** Тип идентификатора инструмента. Возможные значения — `figi`, `ticker`. [Подробнее об идентификации инструментов](https://russianinvestments.github.io/investAPI/faq_identification/). */
idType: InstrumentIdType;
/** Идентификатор `class_code`. Обязательный, если `id_type = ticker`. */
classCode?:
| string
| undefined;
/** Идентификатор запрашиваемого инструмента. */
id: string;
}
/** Запрос получения инструментов. */
export interface InstrumentsRequest {
/** Статус запрашиваемых инструментов. [Возможные значения](#instrumentstatus). */
instrumentStatus?:
| InstrumentStatus
| undefined;
/** Тип площадки торговли. [Возможные значения](#instrumentexchangetype). */
instrumentExchange?: InstrumentExchangeType | undefined;
}
/** Параметры фильтрации опционов. */
export interface FilterOptionsRequest {
/** Идентификатор базового актива опциона. Обязательный параметр. */
basicAssetUid?:
| string
| undefined;
/** Идентификатор позиции базового актива опциона. */
basicAssetPositionUid?: string | undefined;
}
/** Информация об облигации. */
export interface BondResponse {
/** Информация об облигации. */
instrument?: Bond | undefined;
}
/** Список облигаций. */
export interface BondsResponse {
/** Массив облигаций. */
instruments: Bond[];
}
/** Запрос купонов по облигации. */
export interface GetBondCouponsRequest {
/**
* FIGI-идентификатор инструмента.
*
* @deprecated
*/
figi: string;
/** Начало запрашиваемого периода по UTC. Фильтрация по `coupon_date` — дата выплаты купона. */
from?:
| Date
| undefined;
/** Окончание запрашиваемого периода по UTC. Фильтрация по `coupon_date` — дата выплаты купона. */
to?:
| Date
| undefined;
/** Идентификатор инструмента — `figi` или `instrument_uid`. */
instrumentId: string;
}
/** Купоны по облигации. */
export interface GetBondCouponsResponse {
events: Coupon[];
}
/** События по облигации. */
export interface GetBondEventsRequest {
/** Начало запрашиваемого периода по UTC. */
from?:
| Date
| undefined;
/** Окончание запрашиваемого периода по UTC. */
to?:
| Date
| undefined;
/** Идентификатор инструмента — `figi` или `instrument_uid`. */
instrumentId: string;
/** Тип события */
type: GetBondEventsRequest_EventType;
}
export enum GetBondEventsRequest_EventType {
/** EVENT_TYPE_UNSPECIFIED - Неопределённое значение. */
EVENT_TYPE_UNSPECIFIED = 0,
/** EVENT_TYPE_CPN - Купон. */
EVENT_TYPE_CPN = 1,
/** EVENT_TYPE_CALL - Опцион (оферта). */
EVENT_TYPE_CALL = 2,
/** EVENT_TYPE_MTY - Погашение. */
EVENT_TYPE_MTY = 3,
/** EVENT_TYPE_CONV - Конвертация. */
EVENT_TYPE_CONV = 4,
UNRECOGNIZED = -1,
}
export function getBondEventsRequest_EventTypeFromJSON(object: any): GetBondEventsRequest_EventType {
switch (object) {
case 0:
case "EVENT_TYPE_UNSPECIFIED":
return GetBondEventsRequest_EventType.EVENT_TYPE_UNSPECIFIED;
case 1:
case "EVENT_TYPE_CPN":
return GetBondEventsRequest_EventType.EVENT_TYPE_CPN;
case 2:
case "EVENT_TYPE_CALL":
return GetBondEventsRequest_EventType.EVENT_TYPE_CALL;
case 3:
case "EVENT_TYPE_MTY":
return GetBondEventsRequest_EventType.EVENT_TYPE_MTY;
case 4:
case "EVENT_TYPE_CONV":
return GetBondEventsRequest_EventType.EVENT_TYPE_CONV;
case -1:
case "UNRECOGNIZED":
default:
return GetBondEventsRequest_EventType.UNRECOGNIZED;
}
}
export function getBondEventsRequest_EventTypeToJSON(object: GetBondEventsRequest_EventType): string {
switch (object) {
case GetBondEventsRequest_EventType.EVENT_TYPE_UNSPECIFIED:
return "EVENT_TYPE_UNSPECIFIED";
case GetBondEventsRequest_EventType.EVENT_TYPE_CPN:
return "EVENT_TYPE_CPN";
case GetBondEventsRequest_EventType.EVENT_TYPE_CALL:
return "EVENT_TYPE_CALL";
case GetBondEventsRequest_EventType.EVENT_TYPE_MTY:
return "EVENT_TYPE_MTY";
case GetBondEventsRequest_EventType.EVENT_TYPE_CONV:
return "EVENT_TYPE_CONV";
case GetBondEventsRequest_EventType.UNRECOGNIZED:
default:
return "UNRECOGNIZED";
}
}
/** Объект передачи информации о событии облигации. */
export interface GetBondEventsResponse {
events: GetBondEventsResponse_BondEvent[];
}
export interface GetBondEventsResponse_BondEvent {
/** Идентификатор инструмента. */
instrumentId: string;
/** Номер события для данного типа события. */
eventNumber: number;
/** Дата события. */
eventDate?:
| Date
| undefined;
/** Тип события. */
eventType: GetBondEventsRequest_EventType;
/** Полное количество бумаг, задействованных в событии. */
eventTotalVol?:
| Quotation
| undefined;
/** Дата фиксации владельцев для участия в событии. */
fixDate?:
| Date
| undefined;
/** Дата определения даты или факта события. */
rateDate?:
| Date
| undefined;
/** Дата дефолта, если применимо. */
defaultDate?:
| Date
| undefined;
/** Дата реального исполнения обязательства. */
realPayDate?:
| Date
| undefined;
/** Дата выплаты. */
payDate?:
| Date
| undefined;
/** Выплата на одну облигацию. */
payOneBond?:
| MoneyValue
| undefined;
/** Выплаты на все бумаги, задействованные в событии. */
moneyFlowVal?:
| MoneyValue
| undefined;
/** Признак исполнения. */
execution: string;
/** Тип операции. */
operationType: string;
/** Стоимость операции — ставка купона, доля номинала, цена выкупа или коэффициент конвертации. */
value?:
| Quotation
| undefined;
/** Примечание. */
note: string;
/** ID выпуска бумаг, в который произведена конвертация (для конвертаций). */
convertToFinToolId: string;
/** Начало купонного периода. */
couponStartDate?:
| Date
| undefined;
/** Окончание купонного периода. */
couponEndDate?:
| Date
| undefined;
/** Купонный период. */
couponPeriod: number;
/** Ставка купона, процентов годовых. */
couponInterestRate?: Quotation | undefined;
}
/** Объект передачи информации о купоне облигации. */
export interface Coupon {
/** FIGI-идентификатор инструмента. */
figi: string;
/** Дата выплаты купона. */
couponDate?:
| Date
| undefined;
/** Номер купона. */
couponNumber: number;
/** Дата фиксации реестра для выплаты купона — опционально. */
fixDate?:
| Date
| undefined;
/** Выплата на одну облигацию. */
payOneBond?:
| MoneyValue
| undefined;
/** Тип купона. */
couponType: CouponType;
/** Начало купонного периода. */
couponStartDate?:
| Date
| undefined;
/** Окончание купонного периода. */
couponEndDate?:
| Date
| undefined;
/** Купонный период в днях. */
couponPeriod: number;
}
/** Данные по валюте. */
export interface CurrencyResponse {
/** Информация о валюте. */
instrument?: Currency | undefined;
}
/** Данные по валютам. */
export interface CurrenciesResponse {
/** Массив валют. */
instruments: Currency[];
}
/** Данные по фонду. */
export interface EtfResponse {
/** Информация о фонде. */
instrument?: Etf | undefined;
}
/** Данные по фондам. */
export interface EtfsResponse {
/** Массив фондов. */
instruments: Etf[];
}
/** Данные по фьючерсу. */
export interface FutureResponse {
/** Информация о фьючерсу. */
instrument?: Future | undefined;
}
/** Данные по фьючерсам. */
export interface FuturesResponse {
/** Массив фьючерсов. */
instruments: Future[];
}
/** Данные по опциону. */
export interface OptionResponse {
/** Информация по опциону. */
instrument?: Option | undefined;
}
/** Данные по опционам. */
export interface OptionsResponse {
/** Массив данных по опциону. */
instruments: Option[];
}
/** Опцион. */
export interface Option {
/** Уникальный идентификатор инструмента. */
uid: string;
/** Уникальный идентификатор позиции. */
positionUid: string;
/** Тикер инструмента. */
ticker: string;
/** Класс-код. */
classCode: string;
/** Уникальный идентификатор позиции основного инструмента. */
basicAssetPositionUid: string;
/** Текущий режим торгов инструмента. */
tradingStatus: SecurityTradingStatus;
/** Реальная площадка исполнения расчётов (биржа). */
realExchange: RealExchange;
/** Направление опциона. */
direction: OptionDirection;
/** Тип расчётов по опциону. */
paymentType: OptionPaymentType;
/** Стиль опциона. */
style: OptionStyle;
/** Способ исполнения опциона. */
settlementType: OptionSettlementType;
/** Название инструмента. */
name: string;
/** Валюта. */
currency: string;
/** Валюта, в которой оценивается контракт. */
settlementCurrency: string;
/** Тип актива. */
assetType: string;
/** Основной актив. */
basicAsset: string;
/** Tорговая площадка (секция биржи). */
exchange: string;
/** Код страны рисков. */
countryOfRisk: string;
/** Наименование страны рисков. */
countryOfRiskName: string;
/** Сектор экономики. */
sector: string;
/** Информация о бренде. */
brand?:
| BrandData
| undefined;
/** Количество бумаг в лоте. */
lot: number;
/** Размер основного актива. */
basicAssetSize?:
| Quotation
| undefined;
/** Коэффициент ставки риска длинной позиции по клиенту. 2 – клиент со стандартным уровнем риска (КСУР); 1 – клиент с повышенным уровнем риска (КПУР). */
klong?:
| Quotation
| undefined;
/** Коэффициент ставки риска короткой позиции по клиенту. 2 – клиент со стандартным уровнем риска (КСУР); 1 – клиент с повышенным уровнем риска (КПУР). */
kshort?:
| Quotation
| undefined;
/**
* Ставка риска начальной маржи для КСУР лонг. [Подробнее про ставки риска](https://www.tbank.ru/invest/help/brokerage/account/margin/about/#q5).
*
* @deprecated
*/
dlong?:
| Quotation
| undefined;
/**
* Ставка риска начальной маржи для КСУР шорт. [Подробнее про ставки риска](https://www.tbank.ru/invest/help/brokerage/account/margin/about/#q5).
*
* @deprecated
*/
dshort?:
| Quotation
| undefined;
/**
* Ставка риска начальной маржи для КПУР лонг. [Подробнее про ставки риска](https://www.tbank.ru/invest/help/brokerage/account/margin/about/#q5).
*
* @deprecated
*/
dlongMin?:
| Quotation
| undefined;
/**
* Ставка риска начальной маржи для КПУР шорт. [Подробнее про ставки риска](https://www.tbank.ru/invest/help/brokerage/account/margin/about/#q5).
*
* @deprecated
*/
dshortMin?:
| Quotation
| undefined;
/** Минимальный шаг цены. */
minPriceIncrement?:
| Quotation
| undefined;
/** Цена страйка. */
strikePrice?:
| MoneyValue
| undefined;
/** Ставка риска в лонг, с учетом текущего уровня риска портфеля клиента. [Подробнее про ставки риска](https://www.tbank.ru/invest/help/brokerage/account/margin/about/#q5). */
dlongClient?:
| Quotation
| undefined;
/** Ставка риска в шорт, с учетом текущего уровня риска портфеля клиента. [Подробнее про ставки риска](https://www.tbank.ru/invest/help/brokerage/account/margin/about/#q5). */
dshortClient?:
| Quotation
| undefined;
/** Дата истечения срока в формате UTC. */
expirationDate?:
| Date
| undefined;
/** Дата начала обращения контракта в формате UTC. */
firstTradeDate?:
| Date
| undefined;
/** Дата исполнения в формате UTC. */
lastTradeDate?:
| Date
| undefined;
/** Дата первой минутной свечи в формате UTC. */
first1minCandleDate?:
| Date
| undefined;
/** Дата первой дневной свечи в формате UTC. */
first1dayCandleDate?:
| Date
| undefined;
/** Признак доступности для операций шорт. */
shortEnabledFlag: boolean;
/** Возможность покупки или продажи на ИИС. */
forIisFlag: boolean;
/** Флаг, используемый ранее для определения внебиржевых инструментов. На данный момент не используется для торгуемых через API инструментов. Может использоваться как фильтр для операций, совершавшихся некоторое время назад на ОТС площадке. */
otcFlag: boolean;
/** Признак доступности для покупки. */
buyAvailableFlag: boolean;
/** Признак доступности для продажи. */
sellAvailableFlag: boolean;
/** Флаг, отображающий доступность торговли инструментом только для квалифицированных инвесторов. */
forQualInvestorFlag: boolean;
/** Флаг, отображающий доступность торговли инструментом по выходным. */
weekendFlag: boolean;
/** Флаг заблокированного ТКС. */
blockedTcaFlag: boolean;
/** Возможность торговать инструментом через API. */
apiTradeAvailableFlag: boolean;
}
/** Данные по акции. */
export interface ShareResponse {
/** Информация об акции. */
instrument?: Share | undefined;
}
/** Данные по акциям. */
export interface SharesResponse {
/** Массив акций. */
instruments: Share[];
}
/** Объект передачи информации об облигации. */
export interface Bond {
/** FIGI-идентификатор инструмента. */
figi: string;
/** Тикер инструмента. */
ticker: string;
/** Класс-код (секция торгов). */
classCode: string;
/** ISIN-идентификатор инструмента. */
isin: string;
/** Лотность инструмента. Возможно совершение операций только на количества ценной бумаги, кратные параметру `lot`. [Подробнее](https://russianinvestments.github.io/investAPI/glossary#lot). */
lot: number;
/** Валюта расчётов. */
currency: string;
/** Коэффициент ставки риска длинной позиции по клиенту. 2 – клиент со стандартным уровнем риска (КСУР); 1 – клиент с повышенным уровнем риска (КПУР). */
klong?:
| Quotation
| undefined;
/** Коэффициент ставки риска короткой позиции по клиенту. 2 – клиент со стандартным уровнем риска (КСУР); 1 – клиент с повышенным уровнем риска (КПУР). */
kshort?:
| Quotation
| undefined;
/**
* Ставка риска начальной маржи для КСУР лонг. [Подробнее про ставки риска](https://www.tbank.ru/invest/help/brokerage/account/margin/about/#q5).
*
* @deprecated
*/
dlong?:
| Quotation
| undefined;
/**
* Ставка риска начальной маржи для КСУР шорт. [Подробнее про ставки риска](https://www.tbank.ru/invest/help/brokerage/account/margin/about/#q5).
*
* @deprecated
*/
dshort?:
| Quotation
| undefined;
/**
* Ставка риска начальной маржи для КПУР лонг. [Подробнее про ставки риска](https://www.tbank.ru/invest/help/brokerage/account/margin/about/#q5).
*
* @deprecated
*/
dlongMin?:
| Quotation
| undefined;
/**
* Ставка риска начальной маржи для КПУР шорт. [Подробнее про ставки риска](https://www.tbank.ru/invest/help/brokerage/account/margin/about/#q5).
*
* @deprecated
*/
dshortMin?:
| Quotation
| undefined;
/** Признак доступности для операций в шорт. */
shortEnabledFlag: boolean;
/** Название инструмента. */
name: string;
/** Tорговая площадка (секция биржи). */
exchange: string;
/** Количество выплат по купонам в год. */
couponQuantityPerYear: number;
/** Дата погашения облигации по UTC. */
maturityDate?:
| Date
| undefined;
/** Номинал облигации. */
nominal?:
| MoneyValue
| undefined;
/** Первоначальный номинал облигации. */
initialNominal?:
| MoneyValue
| undefined;
/** Дата выпуска облигации по UTC. */
stateRegDate?:
| Date
| undefined;
/** Дата размещения по UTC. */
placementDate?:
| Date
| undefined;
/** Цена размещения. */
placementPrice?:
| MoneyValue
| undefined;
/** Значение НКД (накопленного купонного дохода) на дату. */
aciValue?:
| MoneyValue
| undefined;
/** Код страны риска — то есть страны, в которой компания ведёт основной бизнес. */
countryOfRisk: string;
/** Наименование страны риска — то есть страны, в которой компания ведёт основной бизнес. */
countryOfRiskName: string;
/** Сектор экономики. */
sector: string;
/** Форма выпуска. Возможные значения: </br>**documentary** — документарная; </br>**non_documentary** — бездокументарная. */
issueKind: string;
/** Размер выпуска. */
issueSize: number;
/** Плановый размер выпуска. */
issueSizePlan: number;
/** Текущий режим торгов инструмента. */
tradingStatus: SecurityTradingStatus;
/** Флаг, используемый ранее для определения внебиржевых инструментов. На данный момент не используется для торгуемых через API инструментов. Может использоваться как фильтр для операций, совершавшихся некоторое время назад на ОТС площадке. */
otcFlag: boolean;
/** Признак доступности для покупки. */
buyAvailableFlag: boolean;
/** Признак доступности для продажи. */
sellAvailableFlag: boolean;
/** Признак облигации с плавающим купоном. */
floatingCouponFlag: boolean;
/** Признак бессрочной облигации. */
perpetualFlag: boolean;
/** Признак облигации с амортизацией долга. */
amortizationFlag: boolean;
/** Шаг цены. */
minPriceIncrement?:
| Quotation
| undefined;
/** Параметр указывает на возможность торговать инструментом через API. */
apiTradeAvailableFlag: boolean;
/** Уникальный идентификатор инструмента. */
uid: string;
/** Реальная площадка исполнения расчётов. (биржа) */
realExchange: RealExchange;
/** Уникальный идентификатор позиции инструмента. */
positionUid: string;
/** Уникальный идентификатор актива. */
assetUid: string;
/** Признак доступности для ИИС. */
forIisFlag: boolean;
/** Флаг, отображающий доступность торговли инструментом только для квалифицированных инвесторов. */
forQualInvestorFlag: boolean;
/** Флаг, отображающий доступность торговли инструментом по выходным. */
weekendFlag: boolean;
/** Флаг заблокированного ТКС. */
blockedTcaFlag: boolean;
/** Признак субординированной облигации. */
subordinatedFlag: boolean;
/** Флаг достаточной ликвидности. */
liquidityFlag: boolean;
/** Дата первой минутной свечи. */
first1minCandleDate?:
| Date
| undefined;
/** Дата первой дневной свечи. */
first1dayCandleDate?:
| Date
| undefined;
/** Уровень риска. */
riskLevel: RiskLevel;
/** Информация о бренде. */
brand?:
| BrandData
| undefined;
/** Тип облигации. */
bondType: BondType;
/** Дата погашения облигации. */
callDate?:
| Date
| undefined;
/** Ставка риска в лонг, с учетом текущего уровня риска портфеля клиента. [Подробнее про ставки риска](https://www.tbank.ru/invest/help/brokerage/account/margin/about/#q5). */
dlongClient?:
| Quotation
| undefined;
/** Ставка риска в шорт, с учетом текущего уровня риска портфеля клиента. [Подробнее про ставки риска](https://www.tbank.ru/invest/help/brokerage/account/margin/about/#q5). */
dshortClient?: Quotation | undefined;
}
/** Объект передачи информации о валюте. */
export interface Currency {
/** FIGI-идентификатор инструмента. */
figi: string;
/** Тикер инструмента. */
ticker: string;
/** Класс-код (секция торгов). */
classCode: string;
/** ISIN-идентификатор инструмента. */
isin: string;
/** Лотность инструмента. Возможно совершение операций только на количества ценной бумаги, кратные параметру `lot`. [Подробнее](https://russianinvestments.github.io/investAPI/glossary#lot). */
lot: number;
/** Валюта расчётов. */
currency: string;
/** Коэффициент ставки риска длинной позиции по клиенту. 2 – клиент со стандартным уровнем риска (КСУР); 1 – клиент с повышенным уровнем риска (КПУР). */
klong?:
| Quotation
| undefined;
/** Коэффициент ставки риска короткой позиции по клиенту. 2 – клиент со стандартным уровнем риска (КСУР); 1 – клиент с повышенным уровнем риска (КПУР). */
kshort?:
| Quotation
| undefined;
/**
* Ставка риска начальной маржи для КСУР лонг. [Подробнее про ставки риска](https://www.tbank.ru/invest/help/brokerage/account/margin/about/#q5).
*
* @deprecated
*/
dlong?:
| Quotation
| undefined;
/**
* Ставка риска начальной маржи для КСУР шорт. [Подробнее про ставки риска](https://www.tbank.ru/invest/help/brokerage/account/margin/about/#q5).
*
* @deprecated
*/
dshort?:
| Quotation
| undefined;
/**
* Ставка риска начальной маржи для КПУР лонг. [Подробнее про ставки риска](https://www.tbank.ru/invest/help/brokerage/account/margin/about/#q5).
*
* @deprecated
*/
dlongMin?:
| Quotation
| undefined;
/**
* Ставка риска начальной маржи для КПУР шорт. [Подробнее про ставки риска](https://www.tbank.ru/invest/help/brokerage/account/margin/about/#q5).
*
* @deprecated
*/
dshortMin?:
| Quotation
| undefined;
/** Признак доступности для операций в шорт. */
shortEnabledFlag: boolean;
/** Название инструмента. */
name: string;
/** Tорговая площадка (секция биржи). */
exchange: string;
/** Номинал. */
nominal?:
| MoneyValue
| undefined;
/** Код страны риска — то есть страны, в которой компания ведёт основной бизнес. */
countryOfRisk: string;
/** Наименование страны риска — то есть страны, в которой компания ведёт основной бизнес. */
countryOfRiskName: string;
/** Текущий режим торгов инструмента. */
tradingStatus: SecurityTradingStatus;
/** Флаг, используемый ранее для определения внебиржевых инструментов. На данный момент не используется для торгуемых через API инструментов. Может использоваться как фильтр для операций, совершавшихся некоторое время назад на ОТС площадке. */
otcFlag: boolean;
/** Признак доступности для покупки. */
buyAvailableFlag: boolean;
/** Признак доступности для продажи. */
sellAvailableFlag: boolean;
/** Строковый ISO-код валюты. */
isoCurrencyName: string;
/** Шаг цены. */
minPriceIncrement?:
| Quotation
| undefined;
/** Параметр указывает на возможность торговать инструментом через API. */
apiTradeAvailableFlag: boolean;
/** Уникальный идентификатор инструмента. */
uid: string;
/** Реальная площадка исполнения расчётов (биржа). */
realExchange: RealExchange;
/** Уникальный идентификатор позиции инструмента. */
positionUid: string;
/** Признак доступности для ИИС. */
forIisFlag: boolean;
/** Флаг, отображающий доступность торговли инструментом только для квалифицированных инвесторов. */
forQualInvestorFlag: boolean;
/** Флаг, отображающий доступность торговли инструментом по выходным. */
weekendFlag: boolean;
/** Флаг заблокированного ТКС. */
blockedTcaFlag: boolean;
/** Дата первой минутной свечи. */
first1minCandleDate?:
| Date
| undefined;
/** Дата первой дневной свечи. */
first1dayCandleDate?:
| Date
| undefined;
/** Информация о бренде. */
brand?:
| BrandData
| undefined;
/** Ставка риска в лонг, с учетом текущего уровня риска портфеля клиента. [Подробнее про ставки риска](https://www.tbank.ru/invest/help/brokerage/account/margin/about/#q5). */
dlongClient?:
| Quotation
| undefined;
/** Ставка риска в шорт, с учетом текущего уровня риска портфеля клиента. [Подробнее про ставки риска](https://www.tbank.ru/invest/help/brokerage/account/margin/about/#q5). */
dshortClient?: Quotation | undefined;
}
/** Объект передачи информации об инвестиционном фонде. */
export interface Etf {
/** FIGI-идентификатор инструмента. */
figi: string;
/** Тикер инструмента. */
ticker: string;
/** Класс-код (секция торгов). */
classCode: string;
/** ISIN-идентификатор инструмента. */
isin: string;
/** Лотность инструмента. Возможно совершение операций только на количества ценной бумаги, кратные параметру `lot`. [Подробнее](