tinkoff-invest-api
Version:
Node.js SDK for Tinkoff Invest API
1,171 lines • 147 kB
JavaScript
/* eslint-disable */
import Long from "long";
import _m0 from "protobufjs/minimal.js";
import { ErrorDetail, MoneyValue, Ping, priceTypeFromJSON, priceTypeToJSON, Quotation, ResponseMetadata, resultSubscriptionStatusFromJSON, resultSubscriptionStatusToJSON, } from "./common.js";
import { Timestamp } from "./google/protobuf/timestamp.js";
export const protobufPackage = "tinkoff.public.invest.api.contract.v1";
/** Направление операции. */
export var OrderDirection;
(function (OrderDirection) {
/** ORDER_DIRECTION_UNSPECIFIED - Значение не указано */
OrderDirection[OrderDirection["ORDER_DIRECTION_UNSPECIFIED"] = 0] = "ORDER_DIRECTION_UNSPECIFIED";
/** ORDER_DIRECTION_BUY - Покупка */
OrderDirection[OrderDirection["ORDER_DIRECTION_BUY"] = 1] = "ORDER_DIRECTION_BUY";
/** ORDER_DIRECTION_SELL - Продажа */
OrderDirection[OrderDirection["ORDER_DIRECTION_SELL"] = 2] = "ORDER_DIRECTION_SELL";
OrderDirection[OrderDirection["UNRECOGNIZED"] = -1] = "UNRECOGNIZED";
})(OrderDirection || (OrderDirection = {}));
export function orderDirectionFromJSON(object) {
switch (object) {
case 0:
case "ORDER_DIRECTION_UNSPECIFIED":
return OrderDirection.ORDER_DIRECTION_UNSPECIFIED;
case 1:
case "ORDER_DIRECTION_BUY":
return OrderDirection.ORDER_DIRECTION_BUY;
case 2:
case "ORDER_DIRECTION_SELL":
return OrderDirection.ORDER_DIRECTION_SELL;
case -1:
case "UNRECOGNIZED":
default:
return OrderDirection.UNRECOGNIZED;
}
}
export function orderDirectionToJSON(object) {
switch (object) {
case OrderDirection.ORDER_DIRECTION_UNSPECIFIED:
return "ORDER_DIRECTION_UNSPECIFIED";
case OrderDirection.ORDER_DIRECTION_BUY:
return "ORDER_DIRECTION_BUY";
case OrderDirection.ORDER_DIRECTION_SELL:
return "ORDER_DIRECTION_SELL";
case OrderDirection.UNRECOGNIZED:
default:
return "UNRECOGNIZED";
}
}
/** Тип заявки. */
export var OrderType;
(function (OrderType) {
/** ORDER_TYPE_UNSPECIFIED - Значение не указано */
OrderType[OrderType["ORDER_TYPE_UNSPECIFIED"] = 0] = "ORDER_TYPE_UNSPECIFIED";
/** ORDER_TYPE_LIMIT - Лимитная */
OrderType[OrderType["ORDER_TYPE_LIMIT"] = 1] = "ORDER_TYPE_LIMIT";
/** ORDER_TYPE_MARKET - Рыночная */
OrderType[OrderType["ORDER_TYPE_MARKET"] = 2] = "ORDER_TYPE_MARKET";
/** ORDER_TYPE_BESTPRICE - Лучшая цена */
OrderType[OrderType["ORDER_TYPE_BESTPRICE"] = 3] = "ORDER_TYPE_BESTPRICE";
OrderType[OrderType["UNRECOGNIZED"] = -1] = "UNRECOGNIZED";
})(OrderType || (OrderType = {}));
export function orderTypeFromJSON(object) {
switch (object) {
case 0:
case "ORDER_TYPE_UNSPECIFIED":
return OrderType.ORDER_TYPE_UNSPECIFIED;
case 1:
case "ORDER_TYPE_LIMIT":
return OrderType.ORDER_TYPE_LIMIT;
case 2:
case "ORDER_TYPE_MARKET":
return OrderType.ORDER_TYPE_MARKET;
case 3:
case "ORDER_TYPE_BESTPRICE":
return OrderType.ORDER_TYPE_BESTPRICE;
case -1:
case "UNRECOGNIZED":
default:
return OrderType.UNRECOGNIZED;
}
}
export function orderTypeToJSON(object) {
switch (object) {
case OrderType.ORDER_TYPE_UNSPECIFIED:
return "ORDER_TYPE_UNSPECIFIED";
case OrderType.ORDER_TYPE_LIMIT:
return "ORDER_TYPE_LIMIT";
case OrderType.ORDER_TYPE_MARKET:
return "ORDER_TYPE_MARKET";
case OrderType.ORDER_TYPE_BESTPRICE:
return "ORDER_TYPE_BESTPRICE";
case OrderType.UNRECOGNIZED:
default:
return "UNRECOGNIZED";
}
}
/** Текущий статус заявки (поручения) */
export var OrderExecutionReportStatus;
(function (OrderExecutionReportStatus) {
OrderExecutionReportStatus[OrderExecutionReportStatus["EXECUTION_REPORT_STATUS_UNSPECIFIED"] = 0] = "EXECUTION_REPORT_STATUS_UNSPECIFIED";
/** EXECUTION_REPORT_STATUS_FILL - Исполнена */
OrderExecutionReportStatus[OrderExecutionReportStatus["EXECUTION_REPORT_STATUS_FILL"] = 1] = "EXECUTION_REPORT_STATUS_FILL";
/** EXECUTION_REPORT_STATUS_REJECTED - Отклонена */
OrderExecutionReportStatus[OrderExecutionReportStatus["EXECUTION_REPORT_STATUS_REJECTED"] = 2] = "EXECUTION_REPORT_STATUS_REJECTED";
/** EXECUTION_REPORT_STATUS_CANCELLED - Отменена пользователем */
OrderExecutionReportStatus[OrderExecutionReportStatus["EXECUTION_REPORT_STATUS_CANCELLED"] = 3] = "EXECUTION_REPORT_STATUS_CANCELLED";
/** EXECUTION_REPORT_STATUS_NEW - Новая */
OrderExecutionReportStatus[OrderExecutionReportStatus["EXECUTION_REPORT_STATUS_NEW"] = 4] = "EXECUTION_REPORT_STATUS_NEW";
/** EXECUTION_REPORT_STATUS_PARTIALLYFILL - Частично исполнена */
OrderExecutionReportStatus[OrderExecutionReportStatus["EXECUTION_REPORT_STATUS_PARTIALLYFILL"] = 5] = "EXECUTION_REPORT_STATUS_PARTIALLYFILL";
OrderExecutionReportStatus[OrderExecutionReportStatus["UNRECOGNIZED"] = -1] = "UNRECOGNIZED";
})(OrderExecutionReportStatus || (OrderExecutionReportStatus = {}));
export function orderExecutionReportStatusFromJSON(object) {
switch (object) {
case 0:
case "EXECUTION_REPORT_STATUS_UNSPECIFIED":
return OrderExecutionReportStatus.EXECUTION_REPORT_STATUS_UNSPECIFIED;
case 1:
case "EXECUTION_REPORT_STATUS_FILL":
return OrderExecutionReportStatus.EXECUTION_REPORT_STATUS_FILL;
case 2:
case "EXECUTION_REPORT_STATUS_REJECTED":
return OrderExecutionReportStatus.EXECUTION_REPORT_STATUS_REJECTED;
case 3:
case "EXECUTION_REPORT_STATUS_CANCELLED":
return OrderExecutionReportStatus.EXECUTION_REPORT_STATUS_CANCELLED;
case 4:
case "EXECUTION_REPORT_STATUS_NEW":
return OrderExecutionReportStatus.EXECUTION_REPORT_STATUS_NEW;
case 5:
case "EXECUTION_REPORT_STATUS_PARTIALLYFILL":
return OrderExecutionReportStatus.EXECUTION_REPORT_STATUS_PARTIALLYFILL;
case -1:
case "UNRECOGNIZED":
default:
return OrderExecutionReportStatus.UNRECOGNIZED;
}
}
export function orderExecutionReportStatusToJSON(object) {
switch (object) {
case OrderExecutionReportStatus.EXECUTION_REPORT_STATUS_UNSPECIFIED:
return "EXECUTION_REPORT_STATUS_UNSPECIFIED";
case OrderExecutionReportStatus.EXECUTION_REPORT_STATUS_FILL:
return "EXECUTION_REPORT_STATUS_FILL";
case OrderExecutionReportStatus.EXECUTION_REPORT_STATUS_REJECTED:
return "EXECUTION_REPORT_STATUS_REJECTED";
case OrderExecutionReportStatus.EXECUTION_REPORT_STATUS_CANCELLED:
return "EXECUTION_REPORT_STATUS_CANCELLED";
case OrderExecutionReportStatus.EXECUTION_REPORT_STATUS_NEW:
return "EXECUTION_REPORT_STATUS_NEW";
case OrderExecutionReportStatus.EXECUTION_REPORT_STATUS_PARTIALLYFILL:
return "EXECUTION_REPORT_STATUS_PARTIALLYFILL";
case OrderExecutionReportStatus.UNRECOGNIZED:
default:
return "UNRECOGNIZED";
}
}
/** Алгоритм исполнения заявки */
export var TimeInForceType;
(function (TimeInForceType) {
/** TIME_IN_FORCE_UNSPECIFIED - Значение не определено см. TIME_IN_FORCE_DAY */
TimeInForceType[TimeInForceType["TIME_IN_FORCE_UNSPECIFIED"] = 0] = "TIME_IN_FORCE_UNSPECIFIED";
/** TIME_IN_FORCE_DAY - Заявка действует до конца торгового дня. Значение по умолчанию */
TimeInForceType[TimeInForceType["TIME_IN_FORCE_DAY"] = 1] = "TIME_IN_FORCE_DAY";
/** TIME_IN_FORCE_FILL_AND_KILL - Если в момент выставления возможно исполнение заявки(в т.ч. частичное), заявка будет исполнена или отменена сразу после выставления */
TimeInForceType[TimeInForceType["TIME_IN_FORCE_FILL_AND_KILL"] = 2] = "TIME_IN_FORCE_FILL_AND_KILL";
/** TIME_IN_FORCE_FILL_OR_KILL - Если в момент выставления возможно полное исполнение заявки, заявка будет исполнена или отменена сразу после выставления, недоступно для срочного рынка и торговли по выходным */
TimeInForceType[TimeInForceType["TIME_IN_FORCE_FILL_OR_KILL"] = 3] = "TIME_IN_FORCE_FILL_OR_KILL";
TimeInForceType[TimeInForceType["UNRECOGNIZED"] = -1] = "UNRECOGNIZED";
})(TimeInForceType || (TimeInForceType = {}));
export function timeInForceTypeFromJSON(object) {
switch (object) {
case 0:
case "TIME_IN_FORCE_UNSPECIFIED":
return TimeInForceType.TIME_IN_FORCE_UNSPECIFIED;
case 1:
case "TIME_IN_FORCE_DAY":
return TimeInForceType.TIME_IN_FORCE_DAY;
case 2:
case "TIME_IN_FORCE_FILL_AND_KILL":
return TimeInForceType.TIME_IN_FORCE_FILL_AND_KILL;
case 3:
case "TIME_IN_FORCE_FILL_OR_KILL":
return TimeInForceType.TIME_IN_FORCE_FILL_OR_KILL;
case -1:
case "UNRECOGNIZED":
default:
return TimeInForceType.UNRECOGNIZED;
}
}
export function timeInForceTypeToJSON(object) {
switch (object) {
case TimeInForceType.TIME_IN_FORCE_UNSPECIFIED:
return "TIME_IN_FORCE_UNSPECIFIED";
case TimeInForceType.TIME_IN_FORCE_DAY:
return "TIME_IN_FORCE_DAY";
case TimeInForceType.TIME_IN_FORCE_FILL_AND_KILL:
return "TIME_IN_FORCE_FILL_AND_KILL";
case TimeInForceType.TIME_IN_FORCE_FILL_OR_KILL:
return "TIME_IN_FORCE_FILL_OR_KILL";
case TimeInForceType.UNRECOGNIZED:
default:
return "UNRECOGNIZED";
}
}
/** Тип идентификатора заявки */
export var OrderIdType;
(function (OrderIdType) {
/** ORDER_ID_TYPE_UNSPECIFIED - Тип идентификатора не указан. */
OrderIdType[OrderIdType["ORDER_ID_TYPE_UNSPECIFIED"] = 0] = "ORDER_ID_TYPE_UNSPECIFIED";
/** ORDER_ID_TYPE_EXCHANGE - Биржевой идентификатор */
OrderIdType[OrderIdType["ORDER_ID_TYPE_EXCHANGE"] = 1] = "ORDER_ID_TYPE_EXCHANGE";
/** ORDER_ID_TYPE_REQUEST - Ключ идемпотентности, переданный клиентом */
OrderIdType[OrderIdType["ORDER_ID_TYPE_REQUEST"] = 2] = "ORDER_ID_TYPE_REQUEST";
OrderIdType[OrderIdType["UNRECOGNIZED"] = -1] = "UNRECOGNIZED";
})(OrderIdType || (OrderIdType = {}));
export function orderIdTypeFromJSON(object) {
switch (object) {
case 0:
case "ORDER_ID_TYPE_UNSPECIFIED":
return OrderIdType.ORDER_ID_TYPE_UNSPECIFIED;
case 1:
case "ORDER_ID_TYPE_EXCHANGE":
return OrderIdType.ORDER_ID_TYPE_EXCHANGE;
case 2:
case "ORDER_ID_TYPE_REQUEST":
return OrderIdType.ORDER_ID_TYPE_REQUEST;
case -1:
case "UNRECOGNIZED":
default:
return OrderIdType.UNRECOGNIZED;
}
}
export function orderIdTypeToJSON(object) {
switch (object) {
case OrderIdType.ORDER_ID_TYPE_UNSPECIFIED:
return "ORDER_ID_TYPE_UNSPECIFIED";
case OrderIdType.ORDER_ID_TYPE_EXCHANGE:
return "ORDER_ID_TYPE_EXCHANGE";
case OrderIdType.ORDER_ID_TYPE_REQUEST:
return "ORDER_ID_TYPE_REQUEST";
case OrderIdType.UNRECOGNIZED:
default:
return "UNRECOGNIZED";
}
}
/** Маркер */
export var OrderStateStreamResponse_MarkerType;
(function (OrderStateStreamResponse_MarkerType) {
/** MARKER_UNKNOWN - не определено */
OrderStateStreamResponse_MarkerType[OrderStateStreamResponse_MarkerType["MARKER_UNKNOWN"] = 0] = "MARKER_UNKNOWN";
/** MARKER_BROKER - сделки брокера */
OrderStateStreamResponse_MarkerType[OrderStateStreamResponse_MarkerType["MARKER_BROKER"] = 1] = "MARKER_BROKER";
/** MARKER_CHAT - исполнение поручение, полученного от клиента через каналы связи */
OrderStateStreamResponse_MarkerType[OrderStateStreamResponse_MarkerType["MARKER_CHAT"] = 2] = "MARKER_CHAT";
/** MARKER_PAPER - исполнение поручение, полученного от клиента в бумажной форме */
OrderStateStreamResponse_MarkerType[OrderStateStreamResponse_MarkerType["MARKER_PAPER"] = 3] = "MARKER_PAPER";
/** MARKER_MARGIN - принудительное закрытие позиций */
OrderStateStreamResponse_MarkerType[OrderStateStreamResponse_MarkerType["MARKER_MARGIN"] = 4] = "MARKER_MARGIN";
/** MARKER_TKBNM - сделки по управлению ликвидностью */
OrderStateStreamResponse_MarkerType[OrderStateStreamResponse_MarkerType["MARKER_TKBNM"] = 5] = "MARKER_TKBNM";
/** MARKER_SHORT - сделки РЕПО по привлечению у клиентов бумаг */
OrderStateStreamResponse_MarkerType[OrderStateStreamResponse_MarkerType["MARKER_SHORT"] = 6] = "MARKER_SHORT";
/** MARKER_SPECMM - перенос временно непокрытых позиций */
OrderStateStreamResponse_MarkerType[OrderStateStreamResponse_MarkerType["MARKER_SPECMM"] = 7] = "MARKER_SPECMM";
OrderStateStreamResponse_MarkerType[OrderStateStreamResponse_MarkerType["MARKER_PO"] = 8] = "MARKER_PO";
OrderStateStreamResponse_MarkerType[OrderStateStreamResponse_MarkerType["UNRECOGNIZED"] = -1] = "UNRECOGNIZED";
})(OrderStateStreamResponse_MarkerType || (OrderStateStreamResponse_MarkerType = {}));
export function orderStateStreamResponse_MarkerTypeFromJSON(object) {
switch (object) {
case 0:
case "MARKER_UNKNOWN":
return OrderStateStreamResponse_MarkerType.MARKER_UNKNOWN;
case 1:
case "MARKER_BROKER":
return OrderStateStreamResponse_MarkerType.MARKER_BROKER;
case 2:
case "MARKER_CHAT":
return OrderStateStreamResponse_MarkerType.MARKER_CHAT;
case 3:
case "MARKER_PAPER":
return OrderStateStreamResponse_MarkerType.MARKER_PAPER;
case 4:
case "MARKER_MARGIN":
return OrderStateStreamResponse_MarkerType.MARKER_MARGIN;
case 5:
case "MARKER_TKBNM":
return OrderStateStreamResponse_MarkerType.MARKER_TKBNM;
case 6:
case "MARKER_SHORT":
return OrderStateStreamResponse_MarkerType.MARKER_SHORT;
case 7:
case "MARKER_SPECMM":
return OrderStateStreamResponse_MarkerType.MARKER_SPECMM;
case 8:
case "MARKER_PO":
return OrderStateStreamResponse_MarkerType.MARKER_PO;
case -1:
case "UNRECOGNIZED":
default:
return OrderStateStreamResponse_MarkerType.UNRECOGNIZED;
}
}
export function orderStateStreamResponse_MarkerTypeToJSON(object) {
switch (object) {
case OrderStateStreamResponse_MarkerType.MARKER_UNKNOWN:
return "MARKER_UNKNOWN";
case OrderStateStreamResponse_MarkerType.MARKER_BROKER:
return "MARKER_BROKER";
case OrderStateStreamResponse_MarkerType.MARKER_CHAT:
return "MARKER_CHAT";
case OrderStateStreamResponse_MarkerType.MARKER_PAPER:
return "MARKER_PAPER";
case OrderStateStreamResponse_MarkerType.MARKER_MARGIN:
return "MARKER_MARGIN";
case OrderStateStreamResponse_MarkerType.MARKER_TKBNM:
return "MARKER_TKBNM";
case OrderStateStreamResponse_MarkerType.MARKER_SHORT:
return "MARKER_SHORT";
case OrderStateStreamResponse_MarkerType.MARKER_SPECMM:
return "MARKER_SPECMM";
case OrderStateStreamResponse_MarkerType.MARKER_PO:
return "MARKER_PO";
case OrderStateStreamResponse_MarkerType.UNRECOGNIZED:
default:
return "UNRECOGNIZED";
}
}
/** Дополнительная информация по статусу заявки */
export var OrderStateStreamResponse_StatusCauseInfo;
(function (OrderStateStreamResponse_StatusCauseInfo) {
/** CAUSE_UNSPECIFIED - Не определено */
OrderStateStreamResponse_StatusCauseInfo[OrderStateStreamResponse_StatusCauseInfo["CAUSE_UNSPECIFIED"] = 0] = "CAUSE_UNSPECIFIED";
/** CAUSE_CANCELLED_BY_CLIENT - Отменено клиентом */
OrderStateStreamResponse_StatusCauseInfo[OrderStateStreamResponse_StatusCauseInfo["CAUSE_CANCELLED_BY_CLIENT"] = 15] = "CAUSE_CANCELLED_BY_CLIENT";
/** CAUSE_CANCELLED_BY_EXCHANGE - Отменено биржей */
OrderStateStreamResponse_StatusCauseInfo[OrderStateStreamResponse_StatusCauseInfo["CAUSE_CANCELLED_BY_EXCHANGE"] = 1] = "CAUSE_CANCELLED_BY_EXCHANGE";
/** CAUSE_CANCELLED_NOT_ENOUGH_POSITION - Заявка не выставлена из-за нехватки средств */
OrderStateStreamResponse_StatusCauseInfo[OrderStateStreamResponse_StatusCauseInfo["CAUSE_CANCELLED_NOT_ENOUGH_POSITION"] = 2] = "CAUSE_CANCELLED_NOT_ENOUGH_POSITION";
/** CAUSE_CANCELLED_BY_CLIENT_BLOCK - Отменено из-за блокировки клиента */
OrderStateStreamResponse_StatusCauseInfo[OrderStateStreamResponse_StatusCauseInfo["CAUSE_CANCELLED_BY_CLIENT_BLOCK"] = 3] = "CAUSE_CANCELLED_BY_CLIENT_BLOCK";
/** CAUSE_REJECTED_BY_BROKER - Отклонено брокером */
OrderStateStreamResponse_StatusCauseInfo[OrderStateStreamResponse_StatusCauseInfo["CAUSE_REJECTED_BY_BROKER"] = 4] = "CAUSE_REJECTED_BY_BROKER";
/** CAUSE_REJECTED_BY_EXCHANGE - Отклонено биржей */
OrderStateStreamResponse_StatusCauseInfo[OrderStateStreamResponse_StatusCauseInfo["CAUSE_REJECTED_BY_EXCHANGE"] = 5] = "CAUSE_REJECTED_BY_EXCHANGE";
/** CAUSE_CANCELLED_BY_BROKER - Отменено брокером */
OrderStateStreamResponse_StatusCauseInfo[OrderStateStreamResponse_StatusCauseInfo["CAUSE_CANCELLED_BY_BROKER"] = 6] = "CAUSE_CANCELLED_BY_BROKER";
OrderStateStreamResponse_StatusCauseInfo[OrderStateStreamResponse_StatusCauseInfo["UNRECOGNIZED"] = -1] = "UNRECOGNIZED";
})(OrderStateStreamResponse_StatusCauseInfo || (OrderStateStreamResponse_StatusCauseInfo = {}));
export function orderStateStreamResponse_StatusCauseInfoFromJSON(object) {
switch (object) {
case 0:
case "CAUSE_UNSPECIFIED":
return OrderStateStreamResponse_StatusCauseInfo.CAUSE_UNSPECIFIED;
case 15:
case "CAUSE_CANCELLED_BY_CLIENT":
return OrderStateStreamResponse_StatusCauseInfo.CAUSE_CANCELLED_BY_CLIENT;
case 1:
case "CAUSE_CANCELLED_BY_EXCHANGE":
return OrderStateStreamResponse_StatusCauseInfo.CAUSE_CANCELLED_BY_EXCHANGE;
case 2:
case "CAUSE_CANCELLED_NOT_ENOUGH_POSITION":
return OrderStateStreamResponse_StatusCauseInfo.CAUSE_CANCELLED_NOT_ENOUGH_POSITION;
case 3:
case "CAUSE_CANCELLED_BY_CLIENT_BLOCK":
return OrderStateStreamResponse_StatusCauseInfo.CAUSE_CANCELLED_BY_CLIENT_BLOCK;
case 4:
case "CAUSE_REJECTED_BY_BROKER":
return OrderStateStreamResponse_StatusCauseInfo.CAUSE_REJECTED_BY_BROKER;
case 5:
case "CAUSE_REJECTED_BY_EXCHANGE":
return OrderStateStreamResponse_StatusCauseInfo.CAUSE_REJECTED_BY_EXCHANGE;
case 6:
case "CAUSE_CANCELLED_BY_BROKER":
return OrderStateStreamResponse_StatusCauseInfo.CAUSE_CANCELLED_BY_BROKER;
case -1:
case "UNRECOGNIZED":
default:
return OrderStateStreamResponse_StatusCauseInfo.UNRECOGNIZED;
}
}
export function orderStateStreamResponse_StatusCauseInfoToJSON(object) {
switch (object) {
case OrderStateStreamResponse_StatusCauseInfo.CAUSE_UNSPECIFIED:
return "CAUSE_UNSPECIFIED";
case OrderStateStreamResponse_StatusCauseInfo.CAUSE_CANCELLED_BY_CLIENT:
return "CAUSE_CANCELLED_BY_CLIENT";
case OrderStateStreamResponse_StatusCauseInfo.CAUSE_CANCELLED_BY_EXCHANGE:
return "CAUSE_CANCELLED_BY_EXCHANGE";
case OrderStateStreamResponse_StatusCauseInfo.CAUSE_CANCELLED_NOT_ENOUGH_POSITION:
return "CAUSE_CANCELLED_NOT_ENOUGH_POSITION";
case OrderStateStreamResponse_StatusCauseInfo.CAUSE_CANCELLED_BY_CLIENT_BLOCK:
return "CAUSE_CANCELLED_BY_CLIENT_BLOCK";
case OrderStateStreamResponse_StatusCauseInfo.CAUSE_REJECTED_BY_BROKER:
return "CAUSE_REJECTED_BY_BROKER";
case OrderStateStreamResponse_StatusCauseInfo.CAUSE_REJECTED_BY_EXCHANGE:
return "CAUSE_REJECTED_BY_EXCHANGE";
case OrderStateStreamResponse_StatusCauseInfo.CAUSE_CANCELLED_BY_BROKER:
return "CAUSE_CANCELLED_BY_BROKER";
case OrderStateStreamResponse_StatusCauseInfo.UNRECOGNIZED:
default:
return "UNRECOGNIZED";
}
}
function createBaseTradesStreamRequest() {
return { accounts: [], pingDelayMs: undefined };
}
export const TradesStreamRequest = {
encode(message, writer = _m0.Writer.create()) {
for (const v of message.accounts) {
writer.uint32(10).string(v);
}
if (message.pingDelayMs !== undefined) {
writer.uint32(120).int32(message.pingDelayMs);
}
return writer;
},
decode(input, length) {
const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input);
let end = length === undefined ? reader.len : reader.pos + length;
const message = createBaseTradesStreamRequest();
while (reader.pos < end) {
const tag = reader.uint32();
switch (tag >>> 3) {
case 1:
if (tag !== 10) {
break;
}
message.accounts.push(reader.string());
continue;
case 15:
if (tag !== 120) {
break;
}
message.pingDelayMs = reader.int32();
continue;
}
if ((tag & 7) === 4 || tag === 0) {
break;
}
reader.skipType(tag & 7);
}
return message;
},
fromJSON(object) {
return {
accounts: globalThis.Array.isArray(object?.accounts) ? object.accounts.map((e) => globalThis.String(e)) : [],
pingDelayMs: isSet(object.pingDelayMs) ? globalThis.Number(object.pingDelayMs) : undefined,
};
},
toJSON(message) {
const obj = {};
if (message.accounts?.length) {
obj.accounts = message.accounts;
}
if (message.pingDelayMs !== undefined) {
obj.pingDelayMs = Math.round(message.pingDelayMs);
}
return obj;
},
};
function createBaseTradesStreamResponse() {
return { orderTrades: undefined, ping: undefined, subscription: undefined };
}
export const TradesStreamResponse = {
encode(message, writer = _m0.Writer.create()) {
if (message.orderTrades !== undefined) {
OrderTrades.encode(message.orderTrades, writer.uint32(10).fork()).ldelim();
}
if (message.ping !== undefined) {
Ping.encode(message.ping, writer.uint32(18).fork()).ldelim();
}
if (message.subscription !== undefined) {
SubscriptionResponse.encode(message.subscription, writer.uint32(26).fork()).ldelim();
}
return writer;
},
decode(input, length) {
const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input);
let end = length === undefined ? reader.len : reader.pos + length;
const message = createBaseTradesStreamResponse();
while (reader.pos < end) {
const tag = reader.uint32();
switch (tag >>> 3) {
case 1:
if (tag !== 10) {
break;
}
message.orderTrades = OrderTrades.decode(reader, reader.uint32());
continue;
case 2:
if (tag !== 18) {
break;
}
message.ping = Ping.decode(reader, reader.uint32());
continue;
case 3:
if (tag !== 26) {
break;
}
message.subscription = SubscriptionResponse.decode(reader, reader.uint32());
continue;
}
if ((tag & 7) === 4 || tag === 0) {
break;
}
reader.skipType(tag & 7);
}
return message;
},
fromJSON(object) {
return {
orderTrades: isSet(object.orderTrades) ? OrderTrades.fromJSON(object.orderTrades) : undefined,
ping: isSet(object.ping) ? Ping.fromJSON(object.ping) : undefined,
subscription: isSet(object.subscription) ? SubscriptionResponse.fromJSON(object.subscription) : undefined,
};
},
toJSON(message) {
const obj = {};
if (message.orderTrades !== undefined) {
obj.orderTrades = OrderTrades.toJSON(message.orderTrades);
}
if (message.ping !== undefined) {
obj.ping = Ping.toJSON(message.ping);
}
if (message.subscription !== undefined) {
obj.subscription = SubscriptionResponse.toJSON(message.subscription);
}
return obj;
},
};
function createBaseOrderTrades() {
return { orderId: "", createdAt: undefined, direction: 0, figi: "", trades: [], accountId: "", instrumentUid: "" };
}
export const OrderTrades = {
encode(message, writer = _m0.Writer.create()) {
if (message.orderId !== "") {
writer.uint32(10).string(message.orderId);
}
if (message.createdAt !== undefined) {
Timestamp.encode(toTimestamp(message.createdAt), writer.uint32(18).fork()).ldelim();
}
if (message.direction !== 0) {
writer.uint32(24).int32(message.direction);
}
if (message.figi !== "") {
writer.uint32(34).string(message.figi);
}
for (const v of message.trades) {
OrderTrade.encode(v, writer.uint32(42).fork()).ldelim();
}
if (message.accountId !== "") {
writer.uint32(50).string(message.accountId);
}
if (message.instrumentUid !== "") {
writer.uint32(58).string(message.instrumentUid);
}
return writer;
},
decode(input, length) {
const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input);
let end = length === undefined ? reader.len : reader.pos + length;
const message = createBaseOrderTrades();
while (reader.pos < end) {
const tag = reader.uint32();
switch (tag >>> 3) {
case 1:
if (tag !== 10) {
break;
}
message.orderId = reader.string();
continue;
case 2:
if (tag !== 18) {
break;
}
message.createdAt = fromTimestamp(Timestamp.decode(reader, reader.uint32()));
continue;
case 3:
if (tag !== 24) {
break;
}
message.direction = reader.int32();
continue;
case 4:
if (tag !== 34) {
break;
}
message.figi = reader.string();
continue;
case 5:
if (tag !== 42) {
break;
}
message.trades.push(OrderTrade.decode(reader, reader.uint32()));
continue;
case 6:
if (tag !== 50) {
break;
}
message.accountId = reader.string();
continue;
case 7:
if (tag !== 58) {
break;
}
message.instrumentUid = reader.string();
continue;
}
if ((tag & 7) === 4 || tag === 0) {
break;
}
reader.skipType(tag & 7);
}
return message;
},
fromJSON(object) {
return {
orderId: isSet(object.orderId) ? globalThis.String(object.orderId) : "",
createdAt: isSet(object.createdAt) ? fromJsonTimestamp(object.createdAt) : undefined,
direction: isSet(object.direction) ? orderDirectionFromJSON(object.direction) : 0,
figi: isSet(object.figi) ? globalThis.String(object.figi) : "",
trades: globalThis.Array.isArray(object?.trades) ? object.trades.map((e) => OrderTrade.fromJSON(e)) : [],
accountId: isSet(object.accountId) ? globalThis.String(object.accountId) : "",
instrumentUid: isSet(object.instrumentUid) ? globalThis.String(object.instrumentUid) : "",
};
},
toJSON(message) {
const obj = {};
if (message.orderId !== "") {
obj.orderId = message.orderId;
}
if (message.createdAt !== undefined) {
obj.createdAt = message.createdAt.toISOString();
}
if (message.direction !== 0) {
obj.direction = orderDirectionToJSON(message.direction);
}
if (message.figi !== "") {
obj.figi = message.figi;
}
if (message.trades?.length) {
obj.trades = message.trades.map((e) => OrderTrade.toJSON(e));
}
if (message.accountId !== "") {
obj.accountId = message.accountId;
}
if (message.instrumentUid !== "") {
obj.instrumentUid = message.instrumentUid;
}
return obj;
},
};
function createBaseOrderTrade() {
return { dateTime: undefined, price: undefined, quantity: 0, tradeId: "" };
}
export const OrderTrade = {
encode(message, writer = _m0.Writer.create()) {
if (message.dateTime !== undefined) {
Timestamp.encode(toTimestamp(message.dateTime), writer.uint32(10).fork()).ldelim();
}
if (message.price !== undefined) {
Quotation.encode(message.price, writer.uint32(18).fork()).ldelim();
}
if (message.quantity !== 0) {
writer.uint32(24).int64(message.quantity);
}
if (message.tradeId !== "") {
writer.uint32(34).string(message.tradeId);
}
return writer;
},
decode(input, length) {
const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input);
let end = length === undefined ? reader.len : reader.pos + length;
const message = createBaseOrderTrade();
while (reader.pos < end) {
const tag = reader.uint32();
switch (tag >>> 3) {
case 1:
if (tag !== 10) {
break;
}
message.dateTime = fromTimestamp(Timestamp.decode(reader, reader.uint32()));
continue;
case 2:
if (tag !== 18) {
break;
}
message.price = Quotation.decode(reader, reader.uint32());
continue;
case 3:
if (tag !== 24) {
break;
}
message.quantity = longToNumber(reader.int64());
continue;
case 4:
if (tag !== 34) {
break;
}
message.tradeId = reader.string();
continue;
}
if ((tag & 7) === 4 || tag === 0) {
break;
}
reader.skipType(tag & 7);
}
return message;
},
fromJSON(object) {
return {
dateTime: isSet(object.dateTime) ? fromJsonTimestamp(object.dateTime) : undefined,
price: isSet(object.price) ? Quotation.fromJSON(object.price) : undefined,
quantity: isSet(object.quantity) ? globalThis.Number(object.quantity) : 0,
tradeId: isSet(object.tradeId) ? globalThis.String(object.tradeId) : "",
};
},
toJSON(message) {
const obj = {};
if (message.dateTime !== undefined) {
obj.dateTime = message.dateTime.toISOString();
}
if (message.price !== undefined) {
obj.price = Quotation.toJSON(message.price);
}
if (message.quantity !== 0) {
obj.quantity = Math.round(message.quantity);
}
if (message.tradeId !== "") {
obj.tradeId = message.tradeId;
}
return obj;
},
};
function createBasePostOrderRequest() {
return {
figi: undefined,
quantity: 0,
price: undefined,
direction: 0,
accountId: "",
orderType: 0,
orderId: "",
instrumentId: "",
timeInForce: 0,
priceType: 0,
};
}
export const PostOrderRequest = {
encode(message, writer = _m0.Writer.create()) {
if (message.figi !== undefined) {
writer.uint32(10).string(message.figi);
}
if (message.quantity !== 0) {
writer.uint32(16).int64(message.quantity);
}
if (message.price !== undefined) {
Quotation.encode(message.price, writer.uint32(26).fork()).ldelim();
}
if (message.direction !== 0) {
writer.uint32(32).int32(message.direction);
}
if (message.accountId !== "") {
writer.uint32(42).string(message.accountId);
}
if (message.orderType !== 0) {
writer.uint32(48).int32(message.orderType);
}
if (message.orderId !== "") {
writer.uint32(58).string(message.orderId);
}
if (message.instrumentId !== "") {
writer.uint32(66).string(message.instrumentId);
}
if (message.timeInForce !== 0) {
writer.uint32(72).int32(message.timeInForce);
}
if (message.priceType !== 0) {
writer.uint32(80).int32(message.priceType);
}
return writer;
},
decode(input, length) {
const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input);
let end = length === undefined ? reader.len : reader.pos + length;
const message = createBasePostOrderRequest();
while (reader.pos < end) {
const tag = reader.uint32();
switch (tag >>> 3) {
case 1:
if (tag !== 10) {
break;
}
message.figi = reader.string();
continue;
case 2:
if (tag !== 16) {
break;
}
message.quantity = longToNumber(reader.int64());
continue;
case 3:
if (tag !== 26) {
break;
}
message.price = Quotation.decode(reader, reader.uint32());
continue;
case 4:
if (tag !== 32) {
break;
}
message.direction = reader.int32();
continue;
case 5:
if (tag !== 42) {
break;
}
message.accountId = reader.string();
continue;
case 6:
if (tag !== 48) {
break;
}
message.orderType = reader.int32();
continue;
case 7:
if (tag !== 58) {
break;
}
message.orderId = reader.string();
continue;
case 8:
if (tag !== 66) {
break;
}
message.instrumentId = reader.string();
continue;
case 9:
if (tag !== 72) {
break;
}
message.timeInForce = reader.int32();
continue;
case 10:
if (tag !== 80) {
break;
}
message.priceType = reader.int32();
continue;
}
if ((tag & 7) === 4 || tag === 0) {
break;
}
reader.skipType(tag & 7);
}
return message;
},
fromJSON(object) {
return {
figi: isSet(object.figi) ? globalThis.String(object.figi) : undefined,
quantity: isSet(object.quantity) ? globalThis.Number(object.quantity) : 0,
price: isSet(object.price) ? Quotation.fromJSON(object.price) : undefined,
direction: isSet(object.direction) ? orderDirectionFromJSON(object.direction) : 0,
accountId: isSet(object.accountId) ? globalThis.String(object.accountId) : "",
orderType: isSet(object.orderType) ? orderTypeFromJSON(object.orderType) : 0,
orderId: isSet(object.orderId) ? globalThis.String(object.orderId) : "",
instrumentId: isSet(object.instrumentId) ? globalThis.String(object.instrumentId) : "",
timeInForce: isSet(object.timeInForce) ? timeInForceTypeFromJSON(object.timeInForce) : 0,
priceType: isSet(object.priceType) ? priceTypeFromJSON(object.priceType) : 0,
};
},
toJSON(message) {
const obj = {};
if (message.figi !== undefined) {
obj.figi = message.figi;
}
if (message.quantity !== 0) {
obj.quantity = Math.round(message.quantity);
}
if (message.price !== undefined) {
obj.price = Quotation.toJSON(message.price);
}
if (message.direction !== 0) {
obj.direction = orderDirectionToJSON(message.direction);
}
if (message.accountId !== "") {
obj.accountId = message.accountId;
}
if (message.orderType !== 0) {
obj.orderType = orderTypeToJSON(message.orderType);
}
if (message.orderId !== "") {
obj.orderId = message.orderId;
}
if (message.instrumentId !== "") {
obj.instrumentId = message.instrumentId;
}
if (message.timeInForce !== 0) {
obj.timeInForce = timeInForceTypeToJSON(message.timeInForce);
}
if (message.priceType !== 0) {
obj.priceType = priceTypeToJSON(message.priceType);
}
return obj;
},
};
function createBasePostOrderResponse() {
return {
orderId: "",
executionReportStatus: 0,
lotsRequested: 0,
lotsExecuted: 0,
initialOrderPrice: undefined,
executedOrderPrice: undefined,
totalOrderAmount: undefined,
initialCommission: undefined,
executedCommission: undefined,
aciValue: undefined,
figi: "",
direction: 0,
initialSecurityPrice: undefined,
orderType: 0,
message: "",
initialOrderPricePt: undefined,
instrumentUid: "",
orderRequestId: "",
responseMetadata: undefined,
};
}
export const PostOrderResponse = {
encode(message, writer = _m0.Writer.create()) {
if (message.orderId !== "") {
writer.uint32(10).string(message.orderId);
}
if (message.executionReportStatus !== 0) {
writer.uint32(16).int32(message.executionReportStatus);
}
if (message.lotsRequested !== 0) {
writer.uint32(24).int64(message.lotsRequested);
}
if (message.lotsExecuted !== 0) {
writer.uint32(32).int64(message.lotsExecuted);
}
if (message.initialOrderPrice !== undefined) {
MoneyValue.encode(message.initialOrderPrice, writer.uint32(42).fork()).ldelim();
}
if (message.executedOrderPrice !== undefined) {
MoneyValue.encode(message.executedOrderPrice, writer.uint32(50).fork()).ldelim();
}
if (message.totalOrderAmount !== undefined) {
MoneyValue.encode(message.totalOrderAmount, writer.uint32(58).fork()).ldelim();
}
if (message.initialCommission !== undefined) {
MoneyValue.encode(message.initialCommission, writer.uint32(66).fork()).ldelim();
}
if (message.executedCommission !== undefined) {
MoneyValue.encode(message.executedCommission, writer.uint32(74).fork()).ldelim();
}
if (message.aciValue !== undefined) {
MoneyValue.encode(message.aciValue, writer.uint32(82).fork()).ldelim();
}
if (message.figi !== "") {
writer.uint32(90).string(message.figi);
}
if (message.direction !== 0) {
writer.uint32(96).int32(message.direction);
}
if (message.initialSecurityPrice !== undefined) {
MoneyValue.encode(message.initialSecurityPrice, writer.uint32(106).fork()).ldelim();
}
if (message.orderType !== 0) {
writer.uint32(112).int32(message.orderType);
}
if (message.message !== "") {
writer.uint32(122).string(message.message);
}
if (message.initialOrderPricePt !== undefined) {
Quotation.encode(message.initialOrderPricePt, writer.uint32(130).fork()).ldelim();
}
if (message.instrumentUid !== "") {
writer.uint32(138).string(message.instrumentUid);
}
if (message.orderRequestId !== "") {
writer.uint32(162).string(message.orderRequestId);
}
if (message.responseMetadata !== undefined) {
ResponseMetadata.encode(message.responseMetadata, writer.uint32(2034).fork()).ldelim();
}
return writer;
},
decode(input, length) {
const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input);
let end = length === undefined ? reader.len : reader.pos + length;
const message = createBasePostOrderResponse();
while (reader.pos < end) {
const tag = reader.uint32();
switch (tag >>> 3) {
case 1:
if (tag !== 10) {
break;
}
message.orderId = reader.string();
continue;
case 2:
if (tag !== 16) {
break;
}
message.executionReportStatus = reader.int32();
continue;
case 3:
if (tag !== 24) {
break;
}
message.lotsRequested = longToNumber(reader.int64());
continue;
case 4:
if (tag !== 32) {
break;
}
message.lotsExecuted = longToNumber(reader.int64());
continue;
case 5:
if (tag !== 42) {
break;
}
message.initialOrderPrice = MoneyValue.decode(reader, reader.uint32());
continue;
case 6:
if (tag !== 50) {
break;
}
message.executedOrderPrice = MoneyValue.decode(reader, reader.uint32());
continue;
case 7:
if (tag !== 58) {
break;
}
message.totalOrderAmount = MoneyValue.decode(reader, reader.uint32());
continue;
case 8:
if (tag !== 66) {
break;
}
message.initialCommission = MoneyValue.decode(reader, reader.uint32());
continue;
case 9:
if (tag !== 74) {
break;
}
message.executedCommission = MoneyValue.decode(reader, reader.uint32());
continue;
case 10:
if (tag !== 82) {
break;
}
message.aciValue = MoneyValue.decode(reader, reader.uint32());
continue;
case 11:
if (tag !== 90) {
break;
}
message.figi = reader.string();
continue;
case 12:
if (tag !== 96) {
break;
}
message.direction = reader.int32();
continue;
case 13:
if (tag !== 106) {
break;
}
message.initialSecurityPrice = MoneyValue.decode(reader, reader.uint32());
continue;
case 14:
if (tag !== 112) {
break;
}
message.orderType = reader.int32();
continue;
case 15:
if (tag !== 122) {
break;
}
message.message = reader.string();
continue;
case 16:
if (tag !== 130) {
break;
}
message.initialOrderPricePt = Quotation.decode(reader, reader.uint32());
continue;
case 17:
if (tag !== 138) {
break;
}
message.instrumentUid = reader.string();
continue;
case 20:
if (tag !== 162) {
break;
}
message.orderRequestId = reader.string();
continue;
case 254:
if (tag !== 2034) {
break;
}
message.responseMetadata = ResponseMetadata.decode(reader, reader.uint32());
continue;
}
if ((tag & 7) === 4 || tag === 0) {
break;
}
reader.skipType(tag & 7);
}
return message;
},
fromJSON(object) {
return {
orderId: isSet(object.orderId) ? globalThis.String(object.orderId) : "",
executionReportStatus: isSet(object.executionReportStatus)
? orderExecutionReportStatusFromJSON(object.executionReportStatus)
: 0,
lotsRequested: isSet(object.lotsRequested) ? globalThis.Number(object.lotsRequested) : 0,
lotsExecuted: isSet(object.lotsExecuted) ? globalThis.Number(object.lotsExecuted) : 0,
initialOrderPrice: isSet(object.initialOrderPrice) ? MoneyValue.fromJSON(object.initialOrderPrice) : undefined,
executedOrderPrice: isSet(object.executedOrderPrice) ? MoneyValue.fromJSON(object.executedOrderPrice) : undefined,
totalOrderAmount: isSet(object.totalOrderAmount) ? MoneyValue.fromJSON(object.totalOrderAmount) : undefined,
initialCommission: isSet(object.initialCommission) ? MoneyValue.fromJSON(object.initialCommission) : undefined,
executedCommission: isSet(object.executedCommission) ? MoneyValue.fromJSON(object.executedCommission) : undefined,
aciValue: isSet(object.aciValue) ? MoneyValue.fromJSON(object.aciValue) : undefined,
figi: isSet(object.figi) ? globalThis.String(object.figi) : "",
direction: isSet(object.direction) ? orderDirectionFromJSON(object.direction) : 0,
initialSecurityPrice: isSet(object.initialSecurityPrice)
? MoneyValue.fromJSON(object.initialSecurityPrice)
: undefined,
orderType: isSet(object.orderType) ? orderTypeFromJSON(object.orderType) : 0,
message: isSet(object.message) ? globalThis.String(object.message) : "",
initialOrderPricePt: isSet(object.initialOrderPricePt)
? Quotation.fromJSON(object.initialOrderPricePt)
: undefined,
instrumentUid: isSet(object.instrumentUid) ? globalThis.String(object.instrumentUid) : "",
orderRequestId: isSet(object.orderRequestId) ? globalThis.String(object.orderRequestId) : "",
responseMetadata: isSet(object.responseMetadata) ? ResponseMetadata.fromJSON(object.responseMetadata) : undefined,
};
},
toJSON(message) {
const obj = {};
if (message.orderId !== "") {
obj.orderId = message.orderId;
}
if (message.executionReportStatus !== 0) {
obj.executionReportStatus = orderExecutionReportStatusToJSON(message.executionReportStatus);
}
if (message.lotsRequested !== 0) {
obj.lotsRequested = Math.round(message.lotsRequested);
}
if (message.lotsExecuted !== 0) {
obj.lotsExecuted = Math.round(message.lotsExecuted);
}
if (message.initialOrderPrice !== undefined) {
obj.initialOrderPrice = MoneyValue.toJSON(message.initialOrderPrice);
}
if (message.executedOrderPrice !== undefined) {
obj.executedOrderPrice = MoneyValue.toJSON(message.executedOrderPrice);
}
if (message.totalOrderAmount !== undefined) {
obj.totalO