t-tech-investments 0.1.0 → 0.1.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/.cursor/rules/git-flow.mdc +49 -5
- data/.cursor/rules/sdk-architecture.mdc +30 -0
- data/.cursor/rules/sdk-code-standards.mdc +22 -0
- data/.cursor/rules/sdk-patterns.mdc +22 -0
- data/.cursor/rules/sdk-testing.mdc +19 -0
- data/CHANGELOG.md +4 -0
- data/README.md +195 -4
- data/Rakefile +4 -0
- data/contracts.lock +6 -0
- data/lib/t/tech/investments/client.rb +70 -0
- data/lib/t/tech/investments/coercers.rb +171 -0
- data/lib/t/tech/investments/configuration.rb +74 -0
- data/lib/t/tech/investments/errors.rb +24 -0
- data/lib/t/tech/investments/proto/common_pb.rb +42 -0
- data/lib/t/tech/investments/proto/google/api/field_behavior_pb.rb +19 -0
- data/lib/t/tech/investments/proto/instruments_pb.rb +157 -0
- data/lib/t/tech/investments/proto/instruments_services_pb.rb +115 -0
- data/lib/t/tech/investments/proto/marketdata_pb.rb +99 -0
- data/lib/t/tech/investments/proto/marketdata_services_pb.rb +68 -0
- data/lib/t/tech/investments/proto/operations_pb.rb +78 -0
- data/lib/t/tech/investments/proto/operations_services_pb.rb +67 -0
- data/lib/t/tech/investments/proto/orders_pb.rb +64 -0
- data/lib/t/tech/investments/proto/orders_services_pb.rb +69 -0
- data/lib/t/tech/investments/proto/sandbox_pb.rb +37 -0
- data/lib/t/tech/investments/proto/sandbox_services_pb.rb +75 -0
- data/lib/t/tech/investments/proto/signals_pb.rb +37 -0
- data/lib/t/tech/investments/proto/signals_services_pb.rb +36 -0
- data/lib/t/tech/investments/proto/stoporders_pb.rb +45 -0
- data/lib/t/tech/investments/proto/stoporders_services_pb.rb +38 -0
- data/lib/t/tech/investments/proto/users_pb.rb +47 -0
- data/lib/t/tech/investments/proto/users_services_pb.rb +51 -0
- data/lib/t/tech/investments/proto_loader.rb +49 -0
- data/lib/t/tech/investments/services/market_data_facade.rb +35 -0
- data/lib/t/tech/investments/services/market_data_stream_session.rb +148 -0
- data/lib/t/tech/investments/services/registry.rb +38 -0
- data/lib/t/tech/investments/services/unary_adapter.rb +64 -0
- data/lib/t/tech/investments/services.rb +6 -0
- data/lib/t/tech/investments/transport.rb +137 -0
- data/lib/t/tech/investments/version.rb +1 -1
- data/lib/t/tech/investments.rb +30 -1
- data/script/regenerate_proto +119 -0
- data/sig/t/tech/investments.rbs +114 -1
- metadata +67 -4
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
# Generated by the protocol buffer compiler. DO NOT EDIT!
|
|
3
|
+
# source: orders.proto
|
|
4
|
+
|
|
5
|
+
require 'google/protobuf'
|
|
6
|
+
|
|
7
|
+
require 'common_pb'
|
|
8
|
+
require 'google/protobuf/timestamp_pb'
|
|
9
|
+
require 'google/api/field_behavior_pb'
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
descriptor_data = "\n\x0corders.proto\x12%tinkoff.public.invest.api.contract.v1\x1a\x0c\x63ommon.proto\x1a\x1fgoogle/protobuf/timestamp.proto\x1a\x1fgoogle/api/field_behavior.proto\"U\n\x13TradesStreamRequest\x12\x10\n\x08\x61\x63\x63ounts\x18\x01 \x03(\t\x12\x1a\n\rping_delay_ms\x18\x0f \x01(\x05H\x00\x88\x01\x01\x42\x10\n\x0e_ping_delay_ms\"\xff\x01\n\x14TradesStreamResponse\x12J\n\x0corder_trades\x18\x01 \x01(\x0b\x32\x32.tinkoff.public.invest.api.contract.v1.OrderTradesH\x00\x12;\n\x04ping\x18\x02 \x01(\x0b\x32+.tinkoff.public.invest.api.contract.v1.PingH\x00\x12S\n\x0csubscription\x18\x03 \x01(\x0b\x32;.tinkoff.public.invest.api.contract.v1.SubscriptionResponseH\x00\x42\t\n\x07payload\"\x96\x02\n\x0bOrderTrades\x12\x10\n\x08order_id\x18\x01 \x01(\t\x12.\n\ncreated_at\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12H\n\tdirection\x18\x03 \x01(\x0e\x32\x35.tinkoff.public.invest.api.contract.v1.OrderDirection\x12\x0c\n\x04\x66igi\x18\x04 \x01(\t\x12\x41\n\x06trades\x18\x05 \x03(\x0b\x32\x31.tinkoff.public.invest.api.contract.v1.OrderTrade\x12\x12\n\naccount_id\x18\x06 \x01(\t\x12\x16\n\x0einstrument_uid\x18\x07 \x01(\t\"\xa0\x01\n\nOrderTrade\x12-\n\tdate_time\x18\x01 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12?\n\x05price\x18\x02 \x01(\x0b\x32\x30.tinkoff.public.invest.api.contract.v1.Quotation\x12\x10\n\x08quantity\x18\x03 \x01(\x03\x12\x10\n\x08trade_id\x18\x04 \x01(\t\"\xb2\x04\n\x10PostOrderRequest\x12\x15\n\x04\x66igi\x18\x01 \x01(\tB\x02\x18\x01H\x00\x88\x01\x01\x12\x16\n\x08quantity\x18\x02 \x01(\x03\x42\x04\xe2\x41\x01\x02\x12\x44\n\x05price\x18\x03 \x01(\x0b\x32\x30.tinkoff.public.invest.api.contract.v1.QuotationH\x01\x88\x01\x01\x12N\n\tdirection\x18\x04 \x01(\x0e\x32\x35.tinkoff.public.invest.api.contract.v1.OrderDirectionB\x04\xe2\x41\x01\x02\x12\x18\n\naccount_id\x18\x05 \x01(\tB\x04\xe2\x41\x01\x02\x12J\n\norder_type\x18\x06 \x01(\x0e\x32\x30.tinkoff.public.invest.api.contract.v1.OrderTypeB\x04\xe2\x41\x01\x02\x12\x16\n\x08order_id\x18\x07 \x01(\tB\x04\xe2\x41\x01\x02\x12\x15\n\rinstrument_id\x18\x08 \x01(\t\x12M\n\rtime_in_force\x18\t \x01(\x0e\x32\x36.tinkoff.public.invest.api.contract.v1.TimeInForceType\x12\x44\n\nprice_type\x18\n \x01(\x0e\x32\x30.tinkoff.public.invest.api.contract.v1.PriceType\x12\x1c\n\x14\x63onfirm_margin_trade\x18\x0b \x01(\x08\x42\x07\n\x05_figiB\x08\n\x06_price\"\x8c\t\n\x11PostOrderResponse\x12\x10\n\x08order_id\x18\x01 \x01(\t\x12\x62\n\x17\x65xecution_report_status\x18\x02 \x01(\x0e\x32\x41.tinkoff.public.invest.api.contract.v1.OrderExecutionReportStatus\x12\x16\n\x0elots_requested\x18\x03 \x01(\x03\x12\x15\n\rlots_executed\x18\x04 \x01(\x03\x12N\n\x13initial_order_price\x18\x05 \x01(\x0b\x32\x31.tinkoff.public.invest.api.contract.v1.MoneyValue\x12O\n\x14\x65xecuted_order_price\x18\x06 \x01(\x0b\x32\x31.tinkoff.public.invest.api.contract.v1.MoneyValue\x12M\n\x12total_order_amount\x18\x07 \x01(\x0b\x32\x31.tinkoff.public.invest.api.contract.v1.MoneyValue\x12M\n\x12initial_commission\x18\x08 \x01(\x0b\x32\x31.tinkoff.public.invest.api.contract.v1.MoneyValue\x12N\n\x13\x65xecuted_commission\x18\t \x01(\x0b\x32\x31.tinkoff.public.invest.api.contract.v1.MoneyValue\x12\x44\n\taci_value\x18\n \x01(\x0b\x32\x31.tinkoff.public.invest.api.contract.v1.MoneyValue\x12\x0c\n\x04\x66igi\x18\x0b \x01(\t\x12H\n\tdirection\x18\x0c \x01(\x0e\x32\x35.tinkoff.public.invest.api.contract.v1.OrderDirection\x12Q\n\x16initial_security_price\x18\r \x01(\x0b\x32\x31.tinkoff.public.invest.api.contract.v1.MoneyValue\x12\x44\n\norder_type\x18\x0e \x01(\x0e\x32\x30.tinkoff.public.invest.api.contract.v1.OrderType\x12\x0f\n\x07message\x18\x0f \x01(\t\x12P\n\x16initial_order_price_pt\x18\x10 \x01(\x0b\x32\x30.tinkoff.public.invest.api.contract.v1.Quotation\x12\x16\n\x0einstrument_uid\x18\x11 \x01(\t\x12\x0e\n\x06ticker\x18\x12 \x01(\t\x12\x12\n\nclass_code\x18\x13 \x01(\t\x12\x18\n\x10order_request_id\x18\x14 \x01(\t\x12S\n\x11response_metadata\x18\xfe\x01 \x01(\x0b\x32\x37.tinkoff.public.invest.api.contract.v1.ResponseMetadata\"\xc8\x04\n\x15PostOrderAsyncRequest\x12\x1b\n\rinstrument_id\x18\x01 \x01(\tB\x04\xe2\x41\x01\x02\x12\x16\n\x08quantity\x18\x02 \x01(\x03\x42\x04\xe2\x41\x01\x02\x12\x44\n\x05price\x18\x03 \x01(\x0b\x32\x30.tinkoff.public.invest.api.contract.v1.QuotationH\x00\x88\x01\x01\x12N\n\tdirection\x18\x04 \x01(\x0e\x32\x35.tinkoff.public.invest.api.contract.v1.OrderDirectionB\x04\xe2\x41\x01\x02\x12\x18\n\naccount_id\x18\x05 \x01(\tB\x04\xe2\x41\x01\x02\x12J\n\norder_type\x18\x06 \x01(\x0e\x32\x30.tinkoff.public.invest.api.contract.v1.OrderTypeB\x04\xe2\x41\x01\x02\x12\x16\n\x08order_id\x18\x07 \x01(\tB\x04\xe2\x41\x01\x02\x12R\n\rtime_in_force\x18\x08 \x01(\x0e\x32\x36.tinkoff.public.invest.api.contract.v1.TimeInForceTypeH\x01\x88\x01\x01\x12I\n\nprice_type\x18\t \x01(\x0e\x32\x30.tinkoff.public.invest.api.contract.v1.PriceTypeH\x02\x88\x01\x01\x12\x1c\n\x14\x63onfirm_margin_trade\x18\n \x01(\x08\x42\x08\n\x06_priceB\x10\n\x0e_time_in_forceB\r\n\x0b_price_type\"\xd4\x01\n\x16PostOrderAsyncResponse\x12\x1e\n\x10order_request_id\x18\x01 \x01(\tB\x04\xe2\x41\x01\x02\x12h\n\x17\x65xecution_report_status\x18\x02 \x01(\x0e\x32\x41.tinkoff.public.invest.api.contract.v1.OrderExecutionReportStatusB\x04\xe2\x41\x01\x02\x12\x1c\n\x0ftrade_intent_id\x18\x03 \x01(\tH\x00\x88\x01\x01\x42\x12\n\x10_trade_intent_id\"\xa8\x01\n\x12\x43\x61ncelOrderRequest\x12\x18\n\naccount_id\x18\x01 \x01(\tB\x04\xe2\x41\x01\x02\x12\x16\n\x08order_id\x18\x02 \x01(\tB\x04\xe2\x41\x01\x02\x12N\n\rorder_id_type\x18\x03 \x01(\x0e\x32\x32.tinkoff.public.invest.api.contract.v1.OrderIdTypeH\x00\x88\x01\x01\x42\x10\n\x0e_order_id_type\"\x94\x01\n\x13\x43\x61ncelOrderResponse\x12(\n\x04time\x18\x01 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12S\n\x11response_metadata\x18\xfe\x01 \x01(\x0b\x32\x37.tinkoff.public.invest.api.contract.v1.ResponseMetadata\"\xf0\x01\n\x14GetOrderStateRequest\x12\x18\n\naccount_id\x18\x01 \x01(\tB\x04\xe2\x41\x01\x02\x12\x16\n\x08order_id\x18\x02 \x01(\tB\x04\xe2\x41\x01\x02\x12\x44\n\nprice_type\x18\x03 \x01(\x0e\x32\x30.tinkoff.public.invest.api.contract.v1.PriceType\x12N\n\rorder_id_type\x18\x04 \x01(\x0e\x32\x32.tinkoff.public.invest.api.contract.v1.OrderIdTypeH\x00\x88\x01\x01\x42\x10\n\x0e_order_id_type\"\x96\x03\n\x10GetOrdersRequest\x12\x18\n\naccount_id\x18\x01 \x01(\tB\x04\xe2\x41\x01\x02\x12n\n\x10\x61\x64vanced_filters\x18\x02 \x01(\x0b\x32O.tinkoff.public.invest.api.contract.v1.GetOrdersRequest.GetOrdersRequestFiltersH\x00\x88\x01\x01\x1a\xe2\x01\n\x17GetOrdersRequestFilters\x12-\n\x04\x66rom\x18\x01 \x01(\x0b\x32\x1a.google.protobuf.TimestampH\x00\x88\x01\x01\x12+\n\x02to\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.TimestampH\x01\x88\x01\x01\x12[\n\x10\x65xecution_status\x18\x03 \x03(\x0e\x32\x41.tinkoff.public.invest.api.contract.v1.OrderExecutionReportStatusB\x07\n\x05_fromB\x05\n\x03_toB\x13\n\x11_advanced_filters\"V\n\x11GetOrdersResponse\x12\x41\n\x06orders\x18\x01 \x03(\x0b\x32\x31.tinkoff.public.invest.api.contract.v1.OrderState\"\xae\t\n\nOrderState\x12\x10\n\x08order_id\x18\x01 \x01(\t\x12\x62\n\x17\x65xecution_report_status\x18\x02 \x01(\x0e\x32\x41.tinkoff.public.invest.api.contract.v1.OrderExecutionReportStatus\x12\x16\n\x0elots_requested\x18\x03 \x01(\x03\x12\x15\n\rlots_executed\x18\x04 \x01(\x03\x12N\n\x13initial_order_price\x18\x05 \x01(\x0b\x32\x31.tinkoff.public.invest.api.contract.v1.MoneyValue\x12O\n\x14\x65xecuted_order_price\x18\x06 \x01(\x0b\x32\x31.tinkoff.public.invest.api.contract.v1.MoneyValue\x12M\n\x12total_order_amount\x18\x07 \x01(\x0b\x32\x31.tinkoff.public.invest.api.contract.v1.MoneyValue\x12Q\n\x16\x61verage_position_price\x18\x08 \x01(\x0b\x32\x31.tinkoff.public.invest.api.contract.v1.MoneyValue\x12M\n\x12initial_commission\x18\t \x01(\x0b\x32\x31.tinkoff.public.invest.api.contract.v1.MoneyValue\x12N\n\x13\x65xecuted_commission\x18\n \x01(\x0b\x32\x31.tinkoff.public.invest.api.contract.v1.MoneyValue\x12\x0c\n\x04\x66igi\x18\x0b \x01(\t\x12H\n\tdirection\x18\x0c \x01(\x0e\x32\x35.tinkoff.public.invest.api.contract.v1.OrderDirection\x12Q\n\x16initial_security_price\x18\r \x01(\x0b\x32\x31.tinkoff.public.invest.api.contract.v1.MoneyValue\x12\x41\n\x06stages\x18\x0e \x03(\x0b\x32\x31.tinkoff.public.invest.api.contract.v1.OrderStage\x12M\n\x12service_commission\x18\x0f \x01(\x0b\x32\x31.tinkoff.public.invest.api.contract.v1.MoneyValue\x12\x10\n\x08\x63urrency\x18\x10 \x01(\t\x12\x44\n\norder_type\x18\x11 \x01(\x0e\x32\x30.tinkoff.public.invest.api.contract.v1.OrderType\x12.\n\norder_date\x18\x12 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\x16\n\x0einstrument_uid\x18\x13 \x01(\t\x12\x18\n\x10order_request_id\x18\x14 \x01(\t\x12\x0e\n\x06ticker\x18\x15 \x01(\t\x12\x12\n\nclass_code\x18\x16 \x01(\t\"\xa6\x01\n\nOrderStage\x12@\n\x05price\x18\x01 \x01(\x0b\x32\x31.tinkoff.public.invest.api.contract.v1.MoneyValue\x12\x10\n\x08quantity\x18\x02 \x01(\x03\x12\x10\n\x08trade_id\x18\x03 \x01(\t\x12\x32\n\x0e\x65xecution_time\x18\x05 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\"\xc6\x02\n\x13ReplaceOrderRequest\x12\x18\n\naccount_id\x18\x01 \x01(\tB\x04\xe2\x41\x01\x02\x12\x16\n\x08order_id\x18\x06 \x01(\tB\x04\xe2\x41\x01\x02\x12\x1d\n\x0fidempotency_key\x18\x07 \x01(\tB\x04\xe2\x41\x01\x02\x12\x16\n\x08quantity\x18\x0b \x01(\x03\x42\x04\xe2\x41\x01\x02\x12\x44\n\x05price\x18\x0c \x01(\x0b\x32\x30.tinkoff.public.invest.api.contract.v1.QuotationH\x00\x88\x01\x01\x12I\n\nprice_type\x18\r \x01(\x0e\x32\x30.tinkoff.public.invest.api.contract.v1.PriceTypeH\x01\x88\x01\x01\x12\x1c\n\x14\x63onfirm_margin_trade\x18\x0e \x01(\x08\x42\x08\n\x06_priceB\r\n\x0b_price_type\"\x9a\x01\n\x11GetMaxLotsRequest\x12\x18\n\naccount_id\x18\x01 \x01(\tB\x04\xe2\x41\x01\x02\x12\x1b\n\rinstrument_id\x18\x02 \x01(\tB\x04\xe2\x41\x01\x02\x12\x44\n\x05price\x18\x03 \x01(\x0b\x32\x30.tinkoff.public.invest.api.contract.v1.QuotationH\x00\x88\x01\x01\x42\x08\n\x06_price\"\xe6\x04\n\x12GetMaxLotsResponse\x12\x10\n\x08\x63urrency\x18\x01 \x01(\t\x12[\n\nbuy_limits\x18\x02 \x01(\x0b\x32G.tinkoff.public.invest.api.contract.v1.GetMaxLotsResponse.BuyLimitsView\x12\x62\n\x11\x62uy_margin_limits\x18\x03 \x01(\x0b\x32G.tinkoff.public.invest.api.contract.v1.GetMaxLotsResponse.BuyLimitsView\x12]\n\x0bsell_limits\x18\x04 \x01(\x0b\x32H.tinkoff.public.invest.api.contract.v1.GetMaxLotsResponse.SellLimitsView\x12\x64\n\x12sell_margin_limits\x18\x05 \x01(\x0b\x32H.tinkoff.public.invest.api.contract.v1.GetMaxLotsResponse.SellLimitsView\x1a\x8e\x01\n\rBuyLimitsView\x12J\n\x10\x62uy_money_amount\x18\x01 \x01(\x0b\x32\x30.tinkoff.public.invest.api.contract.v1.Quotation\x12\x14\n\x0c\x62uy_max_lots\x18\x02 \x01(\x03\x12\x1b\n\x13\x62uy_max_market_lots\x18\x03 \x01(\x03\x1a\'\n\x0eSellLimitsView\x12\x15\n\rsell_max_lots\x18\x01 \x01(\x03\"\xde\x01\n\x14GetOrderPriceRequest\x12\x12\n\naccount_id\x18\x01 \x01(\t\x12\x15\n\rinstrument_id\x18\x02 \x01(\t\x12?\n\x05price\x18\x03 \x01(\x0b\x32\x30.tinkoff.public.invest.api.contract.v1.Quotation\x12H\n\tdirection\x18\x0c \x01(\x0e\x32\x35.tinkoff.public.invest.api.contract.v1.OrderDirection\x12\x10\n\x08quantity\x18\r \x01(\x03\"\xe3\x07\n\x15GetOrderPriceResponse\x12M\n\x12total_order_amount\x18\x01 \x01(\x0b\x32\x31.tinkoff.public.invest.api.contract.v1.MoneyValue\x12O\n\x14initial_order_amount\x18\x05 \x01(\x0b\x32\x31.tinkoff.public.invest.api.contract.v1.MoneyValue\x12\x16\n\x0elots_requested\x18\x03 \x01(\x03\x12N\n\x13\x65xecuted_commission\x18\x07 \x01(\x0b\x32\x31.tinkoff.public.invest.api.contract.v1.MoneyValue\x12R\n\x17\x65xecuted_commission_rub\x18\x08 \x01(\x0b\x32\x31.tinkoff.public.invest.api.contract.v1.MoneyValue\x12M\n\x12service_commission\x18\t \x01(\x0b\x32\x31.tinkoff.public.invest.api.contract.v1.MoneyValue\x12J\n\x0f\x64\x65\x61l_commission\x18\n \x01(\x0b\x32\x31.tinkoff.public.invest.api.contract.v1.MoneyValue\x12\\\n\nextra_bond\x18\x0c \x01(\x0b\x32\x46.tinkoff.public.invest.api.contract.v1.GetOrderPriceResponse.ExtraBondH\x00\x12`\n\x0c\x65xtra_future\x18\r \x01(\x0b\x32H.tinkoff.public.invest.api.contract.v1.GetOrderPriceResponse.ExtraFutureH\x00\x1a\xa4\x01\n\tExtraBond\x12\x44\n\taci_value\x18\x02 \x01(\x0b\x32\x31.tinkoff.public.invest.api.contract.v1.MoneyValue\x12Q\n\x17nominal_conversion_rate\x18\x03 \x01(\x0b\x32\x30.tinkoff.public.invest.api.contract.v1.Quotation\x1aX\n\x0b\x45xtraFuture\x12I\n\x0einitial_margin\x18\x02 \x01(\x0b\x32\x31.tinkoff.public.invest.api.contract.v1.MoneyValueB\x12\n\x10instrument_extra\"a\n\x17OrderStateStreamRequest\x12\x10\n\x08\x61\x63\x63ounts\x18\x01 \x03(\t\x12\x1e\n\x11ping_delay_millis\x18\x0f \x01(\x05H\x00\x88\x01\x01\x42\x14\n\x12_ping_delay_millis\"\xf3\x01\n\x14SubscriptionResponse\x12\x13\n\x0btracking_id\x18\x01 \x01(\t\x12O\n\x06status\x18\x02 \x01(\x0e\x32?.tinkoff.public.invest.api.contract.v1.ResultSubscriptionStatus\x12\x11\n\tstream_id\x18\x04 \x01(\t\x12\x10\n\x08\x61\x63\x63ounts\x18\x05 \x03(\t\x12\x46\n\x05\x65rror\x18\x07 \x01(\x0b\x32\x32.tinkoff.public.invest.api.contract.v1.ErrorDetailH\x00\x88\x01\x01\x42\x08\n\x06_error\"\xba\x10\n\x18OrderStateStreamResponse\x12\x61\n\x0border_state\x18\x01 \x01(\x0b\x32J.tinkoff.public.invest.api.contract.v1.OrderStateStreamResponse.OrderStateH\x00\x12;\n\x04ping\x18\x02 \x01(\x0b\x32+.tinkoff.public.invest.api.contract.v1.PingH\x00\x12S\n\x0csubscription\x18\x03 \x01(\x0b\x32;.tinkoff.public.invest.api.contract.v1.SubscriptionResponseH\x00\x1a\xd5\n\n\nOrderState\x12\x10\n\x08order_id\x18\x01 \x01(\t\x12\x1d\n\x10order_request_id\x18\x02 \x01(\tH\x00\x88\x01\x01\x12\x13\n\x0b\x63lient_code\x18\x03 \x01(\t\x12.\n\ncreated_at\x18\x04 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\x62\n\x17\x65xecution_report_status\x18\x05 \x01(\x0e\x32\x41.tinkoff.public.invest.api.contract.v1.OrderExecutionReportStatus\x12i\n\x0bstatus_info\x18\x06 \x01(\x0e\x32O.tinkoff.public.invest.api.contract.v1.OrderStateStreamResponse.StatusCauseInfoH\x01\x88\x01\x01\x12\x0e\n\x06ticker\x18\x07 \x01(\t\x12\x12\n\nclass_code\x18\x08 \x01(\t\x12\x10\n\x08lot_size\x18\t \x01(\x05\x12H\n\tdirection\x18\n \x01(\x0e\x32\x35.tinkoff.public.invest.api.contract.v1.OrderDirection\x12M\n\rtime_in_force\x18\x0b \x01(\x0e\x32\x36.tinkoff.public.invest.api.contract.v1.TimeInForceType\x12\x44\n\norder_type\x18\x0c \x01(\x0e\x32\x30.tinkoff.public.invest.api.contract.v1.OrderType\x12\x12\n\naccount_id\x18\r \x01(\t\x12N\n\x13initial_order_price\x18\x16 \x01(\x0b\x32\x31.tinkoff.public.invest.api.contract.v1.MoneyValue\x12\x46\n\x0border_price\x18\x17 \x01(\x0b\x32\x31.tinkoff.public.invest.api.contract.v1.MoneyValue\x12\x46\n\x06\x61mount\x18\x18 \x01(\x0b\x32\x31.tinkoff.public.invest.api.contract.v1.MoneyValueH\x02\x88\x01\x01\x12O\n\x14\x65xecuted_order_price\x18\x19 \x01(\x0b\x32\x31.tinkoff.public.invest.api.contract.v1.MoneyValue\x12\x10\n\x08\x63urrency\x18\x1a \x01(\t\x12\x16\n\x0elots_requested\x18\x1b \x01(\x03\x12\x15\n\rlots_executed\x18\x1c \x01(\x03\x12\x11\n\tlots_left\x18\x1d \x01(\x03\x12\x16\n\x0elots_cancelled\x18\x1e \x01(\x03\x12_\n\x06marker\x18\x1f \x01(\x0e\x32J.tinkoff.public.invest.api.contract.v1.OrderStateStreamResponse.MarkerTypeH\x03\x88\x01\x01\x12\x41\n\x06trades\x18! \x03(\x0b\x32\x31.tinkoff.public.invest.api.contract.v1.OrderTrade\x12\x33\n\x0f\x63ompletion_time\x18# \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\x10\n\x08\x65xchange\x18$ \x01(\t\x12\x16\n\x0einstrument_uid\x18) \x01(\tB\x13\n\x11_order_request_idB\x0e\n\x0c_status_infoB\t\n\x07_amountB\t\n\x07_marker\"\xaf\x01\n\nMarkerType\x12\x12\n\x0eMARKER_UNKNOWN\x10\x00\x12\x11\n\rMARKER_BROKER\x10\x01\x12\x0f\n\x0bMARKER_CHAT\x10\x02\x12\x10\n\x0cMARKER_PAPER\x10\x03\x12\x11\n\rMARKER_MARGIN\x10\x04\x12\x10\n\x0cMARKER_TKBNM\x10\x05\x12\x10\n\x0cMARKER_SHORT\x10\x06\x12\x11\n\rMARKER_SPECMM\x10\x07\x12\r\n\tMARKER_PO\x10\x08\"\x93\x02\n\x0fStatusCauseInfo\x12\x15\n\x11\x43\x41USE_UNSPECIFIED\x10\x00\x12\x1d\n\x19\x43\x41USE_CANCELLED_BY_CLIENT\x10\x0f\x12\x1f\n\x1b\x43\x41USE_CANCELLED_BY_EXCHANGE\x10\x01\x12\'\n#CAUSE_CANCELLED_NOT_ENOUGH_POSITION\x10\x02\x12#\n\x1f\x43\x41USE_CANCELLED_BY_CLIENT_BLOCK\x10\x03\x12\x1c\n\x18\x43\x41USE_REJECTED_BY_BROKER\x10\x04\x12\x1e\n\x1a\x43\x41USE_REJECTED_BY_EXCHANGE\x10\x05\x12\x1d\n\x19\x43\x41USE_CANCELLED_BY_BROKER\x10\x06\x42\t\n\x07payload*d\n\x0eOrderDirection\x12\x1f\n\x1bORDER_DIRECTION_UNSPECIFIED\x10\x00\x12\x17\n\x13ORDER_DIRECTION_BUY\x10\x01\x12\x18\n\x14ORDER_DIRECTION_SELL\x10\x02*n\n\tOrderType\x12\x1a\n\x16ORDER_TYPE_UNSPECIFIED\x10\x00\x12\x14\n\x10ORDER_TYPE_LIMIT\x10\x01\x12\x15\n\x11ORDER_TYPE_MARKET\x10\x02\x12\x18\n\x14ORDER_TYPE_BESTPRICE\x10\x03*\x80\x02\n\x1aOrderExecutionReportStatus\x12\'\n#EXECUTION_REPORT_STATUS_UNSPECIFIED\x10\x00\x12 \n\x1c\x45XECUTION_REPORT_STATUS_FILL\x10\x01\x12$\n EXECUTION_REPORT_STATUS_REJECTED\x10\x02\x12%\n!EXECUTION_REPORT_STATUS_CANCELLED\x10\x03\x12\x1f\n\x1b\x45XECUTION_REPORT_STATUS_NEW\x10\x04\x12)\n%EXECUTION_REPORT_STATUS_PARTIALLYFILL\x10\x05*\x88\x01\n\x0fTimeInForceType\x12\x1d\n\x19TIME_IN_FORCE_UNSPECIFIED\x10\x00\x12\x15\n\x11TIME_IN_FORCE_DAY\x10\x01\x12\x1f\n\x1bTIME_IN_FORCE_FILL_AND_KILL\x10\x02\x12\x1e\n\x1aTIME_IN_FORCE_FILL_OR_KILL\x10\x03*c\n\x0bOrderIdType\x12\x1d\n\x19ORDER_ID_TYPE_UNSPECIFIED\x10\x00\x12\x1a\n\x16ORDER_ID_TYPE_EXCHANGE\x10\x01\x12\x19\n\x15ORDER_ID_TYPE_REQUEST\x10\x02\x32\xb9\x02\n\x13OrdersStreamService\x12\x89\x01\n\x0cTradesStream\x12:.tinkoff.public.invest.api.contract.v1.TradesStreamRequest\x1a;.tinkoff.public.invest.api.contract.v1.TradesStreamResponse0\x01\x12\x95\x01\n\x10OrderStateStream\x12>.tinkoff.public.invest.api.contract.v1.OrderStateStreamRequest\x1a?.tinkoff.public.invest.api.contract.v1.OrderStateStreamResponse0\x01\x32\xbf\x08\n\rOrdersService\x12~\n\tPostOrder\x12\x37.tinkoff.public.invest.api.contract.v1.PostOrderRequest\x1a\x38.tinkoff.public.invest.api.contract.v1.PostOrderResponse\x12\x8d\x01\n\x0ePostOrderAsync\x12<.tinkoff.public.invest.api.contract.v1.PostOrderAsyncRequest\x1a=.tinkoff.public.invest.api.contract.v1.PostOrderAsyncResponse\x12\x84\x01\n\x0b\x43\x61ncelOrder\x12\x39.tinkoff.public.invest.api.contract.v1.CancelOrderRequest\x1a:.tinkoff.public.invest.api.contract.v1.CancelOrderResponse\x12\x7f\n\rGetOrderState\x12;.tinkoff.public.invest.api.contract.v1.GetOrderStateRequest\x1a\x31.tinkoff.public.invest.api.contract.v1.OrderState\x12~\n\tGetOrders\x12\x37.tinkoff.public.invest.api.contract.v1.GetOrdersRequest\x1a\x38.tinkoff.public.invest.api.contract.v1.GetOrdersResponse\x12\x84\x01\n\x0cReplaceOrder\x12:.tinkoff.public.invest.api.contract.v1.ReplaceOrderRequest\x1a\x38.tinkoff.public.invest.api.contract.v1.PostOrderResponse\x12\x81\x01\n\nGetMaxLots\x12\x38.tinkoff.public.invest.api.contract.v1.GetMaxLotsRequest\x1a\x39.tinkoff.public.invest.api.contract.v1.GetMaxLotsResponse\x12\x8a\x01\n\rGetOrderPrice\x12;.tinkoff.public.invest.api.contract.v1.GetOrderPriceRequest\x1a<.tinkoff.public.invest.api.contract.v1.GetOrderPriceResponseBa\n\x1cru.tinkoff.piapi.contract.v1P\x01Z\x0c./;investapi\xa2\x02\x05TIAPI\xaa\x02\x14Tinkoff.InvestApi.V1\xca\x02\x11Tinkoff\\Invest\\V1b\x06proto3"
|
|
13
|
+
|
|
14
|
+
pool = ::Google::Protobuf::DescriptorPool.generated_pool
|
|
15
|
+
pool.add_serialized_file(descriptor_data)
|
|
16
|
+
|
|
17
|
+
module Tinkoff
|
|
18
|
+
module Public
|
|
19
|
+
module Invest
|
|
20
|
+
module Api
|
|
21
|
+
module Contract
|
|
22
|
+
module V1
|
|
23
|
+
TradesStreamRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("tinkoff.public.invest.api.contract.v1.TradesStreamRequest").msgclass
|
|
24
|
+
TradesStreamResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("tinkoff.public.invest.api.contract.v1.TradesStreamResponse").msgclass
|
|
25
|
+
OrderTrades = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("tinkoff.public.invest.api.contract.v1.OrderTrades").msgclass
|
|
26
|
+
OrderTrade = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("tinkoff.public.invest.api.contract.v1.OrderTrade").msgclass
|
|
27
|
+
PostOrderRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("tinkoff.public.invest.api.contract.v1.PostOrderRequest").msgclass
|
|
28
|
+
PostOrderResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("tinkoff.public.invest.api.contract.v1.PostOrderResponse").msgclass
|
|
29
|
+
PostOrderAsyncRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("tinkoff.public.invest.api.contract.v1.PostOrderAsyncRequest").msgclass
|
|
30
|
+
PostOrderAsyncResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("tinkoff.public.invest.api.contract.v1.PostOrderAsyncResponse").msgclass
|
|
31
|
+
CancelOrderRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("tinkoff.public.invest.api.contract.v1.CancelOrderRequest").msgclass
|
|
32
|
+
CancelOrderResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("tinkoff.public.invest.api.contract.v1.CancelOrderResponse").msgclass
|
|
33
|
+
GetOrderStateRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("tinkoff.public.invest.api.contract.v1.GetOrderStateRequest").msgclass
|
|
34
|
+
GetOrdersRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("tinkoff.public.invest.api.contract.v1.GetOrdersRequest").msgclass
|
|
35
|
+
GetOrdersRequest::GetOrdersRequestFilters = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("tinkoff.public.invest.api.contract.v1.GetOrdersRequest.GetOrdersRequestFilters").msgclass
|
|
36
|
+
GetOrdersResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("tinkoff.public.invest.api.contract.v1.GetOrdersResponse").msgclass
|
|
37
|
+
OrderState = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("tinkoff.public.invest.api.contract.v1.OrderState").msgclass
|
|
38
|
+
OrderStage = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("tinkoff.public.invest.api.contract.v1.OrderStage").msgclass
|
|
39
|
+
ReplaceOrderRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("tinkoff.public.invest.api.contract.v1.ReplaceOrderRequest").msgclass
|
|
40
|
+
GetMaxLotsRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("tinkoff.public.invest.api.contract.v1.GetMaxLotsRequest").msgclass
|
|
41
|
+
GetMaxLotsResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("tinkoff.public.invest.api.contract.v1.GetMaxLotsResponse").msgclass
|
|
42
|
+
GetMaxLotsResponse::BuyLimitsView = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("tinkoff.public.invest.api.contract.v1.GetMaxLotsResponse.BuyLimitsView").msgclass
|
|
43
|
+
GetMaxLotsResponse::SellLimitsView = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("tinkoff.public.invest.api.contract.v1.GetMaxLotsResponse.SellLimitsView").msgclass
|
|
44
|
+
GetOrderPriceRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("tinkoff.public.invest.api.contract.v1.GetOrderPriceRequest").msgclass
|
|
45
|
+
GetOrderPriceResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("tinkoff.public.invest.api.contract.v1.GetOrderPriceResponse").msgclass
|
|
46
|
+
GetOrderPriceResponse::ExtraBond = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("tinkoff.public.invest.api.contract.v1.GetOrderPriceResponse.ExtraBond").msgclass
|
|
47
|
+
GetOrderPriceResponse::ExtraFuture = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("tinkoff.public.invest.api.contract.v1.GetOrderPriceResponse.ExtraFuture").msgclass
|
|
48
|
+
OrderStateStreamRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("tinkoff.public.invest.api.contract.v1.OrderStateStreamRequest").msgclass
|
|
49
|
+
SubscriptionResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("tinkoff.public.invest.api.contract.v1.SubscriptionResponse").msgclass
|
|
50
|
+
OrderStateStreamResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("tinkoff.public.invest.api.contract.v1.OrderStateStreamResponse").msgclass
|
|
51
|
+
OrderStateStreamResponse::OrderState = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("tinkoff.public.invest.api.contract.v1.OrderStateStreamResponse.OrderState").msgclass
|
|
52
|
+
OrderStateStreamResponse::MarkerType = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("tinkoff.public.invest.api.contract.v1.OrderStateStreamResponse.MarkerType").enummodule
|
|
53
|
+
OrderStateStreamResponse::StatusCauseInfo = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("tinkoff.public.invest.api.contract.v1.OrderStateStreamResponse.StatusCauseInfo").enummodule
|
|
54
|
+
OrderDirection = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("tinkoff.public.invest.api.contract.v1.OrderDirection").enummodule
|
|
55
|
+
OrderType = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("tinkoff.public.invest.api.contract.v1.OrderType").enummodule
|
|
56
|
+
OrderExecutionReportStatus = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("tinkoff.public.invest.api.contract.v1.OrderExecutionReportStatus").enummodule
|
|
57
|
+
TimeInForceType = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("tinkoff.public.invest.api.contract.v1.TimeInForceType").enummodule
|
|
58
|
+
OrderIdType = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("tinkoff.public.invest.api.contract.v1.OrderIdType").enummodule
|
|
59
|
+
end
|
|
60
|
+
end
|
|
61
|
+
end
|
|
62
|
+
end
|
|
63
|
+
end
|
|
64
|
+
end
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
# Generated by the protocol buffer compiler. DO NOT EDIT!
|
|
2
|
+
# Source: orders.proto for package 'tinkoff.public.invest.api.contract.v1'
|
|
3
|
+
|
|
4
|
+
require 'grpc'
|
|
5
|
+
require 'orders_pb'
|
|
6
|
+
|
|
7
|
+
module Tinkoff
|
|
8
|
+
module Public
|
|
9
|
+
module Invest
|
|
10
|
+
module Api
|
|
11
|
+
module Contract
|
|
12
|
+
module V1
|
|
13
|
+
module OrdersStreamService
|
|
14
|
+
class Service
|
|
15
|
+
|
|
16
|
+
include ::GRPC::GenericService
|
|
17
|
+
|
|
18
|
+
self.marshal_class_method = :encode
|
|
19
|
+
self.unmarshal_class_method = :decode
|
|
20
|
+
self.service_name = 'tinkoff.public.invest.api.contract.v1.OrdersStreamService'
|
|
21
|
+
|
|
22
|
+
# TradesStream — стрим сделок пользователя
|
|
23
|
+
rpc :TradesStream, ::Tinkoff::Public::Invest::Api::Contract::V1::TradesStreamRequest, stream(::Tinkoff::Public::Invest::Api::Contract::V1::TradesStreamResponse)
|
|
24
|
+
# OrderStateStream — стрим поручений пользователя
|
|
25
|
+
# Перед работой прочитайте [статью](/invest/services/orders/orders_state_stream).
|
|
26
|
+
rpc :OrderStateStream, ::Tinkoff::Public::Invest::Api::Contract::V1::OrderStateStreamRequest, stream(::Tinkoff::Public::Invest::Api::Contract::V1::OrderStateStreamResponse)
|
|
27
|
+
end
|
|
28
|
+
|
|
29
|
+
Stub = Service.rpc_stub_class
|
|
30
|
+
end
|
|
31
|
+
module OrdersService
|
|
32
|
+
class Service
|
|
33
|
+
|
|
34
|
+
include ::GRPC::GenericService
|
|
35
|
+
|
|
36
|
+
self.marshal_class_method = :encode
|
|
37
|
+
self.unmarshal_class_method = :decode
|
|
38
|
+
self.service_name = 'tinkoff.public.invest.api.contract.v1.OrdersService'
|
|
39
|
+
|
|
40
|
+
# PostOrder — выставить заявку
|
|
41
|
+
rpc :PostOrder, ::Tinkoff::Public::Invest::Api::Contract::V1::PostOrderRequest, ::Tinkoff::Public::Invest::Api::Contract::V1::PostOrderResponse
|
|
42
|
+
# PostOrderAsync — выставить заявку асинхронным методом
|
|
43
|
+
# Особенности работы приведены в [статье](/invest/services/orders/async).
|
|
44
|
+
rpc :PostOrderAsync, ::Tinkoff::Public::Invest::Api::Contract::V1::PostOrderAsyncRequest, ::Tinkoff::Public::Invest::Api::Contract::V1::PostOrderAsyncResponse
|
|
45
|
+
# CancelOrder — отменить заявку
|
|
46
|
+
rpc :CancelOrder, ::Tinkoff::Public::Invest::Api::Contract::V1::CancelOrderRequest, ::Tinkoff::Public::Invest::Api::Contract::V1::CancelOrderResponse
|
|
47
|
+
# GetOrderState — получить статус торгового поручения
|
|
48
|
+
rpc :GetOrderState, ::Tinkoff::Public::Invest::Api::Contract::V1::GetOrderStateRequest, ::Tinkoff::Public::Invest::Api::Contract::V1::OrderState
|
|
49
|
+
# GetOrders — получить список активных заявок по счету
|
|
50
|
+
rpc :GetOrders, ::Tinkoff::Public::Invest::Api::Contract::V1::GetOrdersRequest, ::Tinkoff::Public::Invest::Api::Contract::V1::GetOrdersResponse
|
|
51
|
+
# ReplaceOrder — изменить выставленную заявку
|
|
52
|
+
rpc :ReplaceOrder, ::Tinkoff::Public::Invest::Api::Contract::V1::ReplaceOrderRequest, ::Tinkoff::Public::Invest::Api::Contract::V1::PostOrderResponse
|
|
53
|
+
# GetMaxLots — расчет количества доступных для покупки/продажи лотов
|
|
54
|
+
rpc :GetMaxLots, ::Tinkoff::Public::Invest::Api::Contract::V1::GetMaxLotsRequest, ::Tinkoff::Public::Invest::Api::Contract::V1::GetMaxLotsResponse
|
|
55
|
+
# GetOrderPrice — получить предварительную стоимость для лимитной заявки
|
|
56
|
+
rpc :GetOrderPrice, ::Tinkoff::Public::Invest::Api::Contract::V1::GetOrderPriceRequest, ::Tinkoff::Public::Invest::Api::Contract::V1::GetOrderPriceResponse
|
|
57
|
+
end
|
|
58
|
+
|
|
59
|
+
Stub = Service.rpc_stub_class
|
|
60
|
+
end
|
|
61
|
+
# Сервис предназначен для работы с торговыми поручениями:<br/> **1**.
|
|
62
|
+
# выставление;<br/> **2**. отмена;<br/> **3**. получение статуса;<br/> **4**.
|
|
63
|
+
# расчет полной стоимости;<br/> **5**. получение списка заявок.
|
|
64
|
+
end
|
|
65
|
+
end
|
|
66
|
+
end
|
|
67
|
+
end
|
|
68
|
+
end
|
|
69
|
+
end
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
# Generated by the protocol buffer compiler. DO NOT EDIT!
|
|
3
|
+
# source: sandbox.proto
|
|
4
|
+
|
|
5
|
+
require 'google/protobuf'
|
|
6
|
+
|
|
7
|
+
require 'common_pb'
|
|
8
|
+
require 'orders_pb'
|
|
9
|
+
require 'operations_pb'
|
|
10
|
+
require 'stoporders_pb'
|
|
11
|
+
require 'users_pb'
|
|
12
|
+
require 'google/api/field_behavior_pb'
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
descriptor_data = "\n\rsandbox.proto\x12%tinkoff.public.invest.api.contract.v1\x1a\x0c\x63ommon.proto\x1a\x0corders.proto\x1a\x10operations.proto\x1a\x10stoporders.proto\x1a\x0busers.proto\x1a\x1fgoogle/api/field_behavior.proto\"7\n\x19OpenSandboxAccountRequest\x12\x11\n\x04name\x18\x01 \x01(\tH\x00\x88\x01\x01\x42\x07\n\x05_name\"0\n\x1aOpenSandboxAccountResponse\x12\x12\n\naccount_id\x18\x01 \x01(\t\"6\n\x1a\x43loseSandboxAccountRequest\x12\x18\n\naccount_id\x18\x01 \x01(\tB\x04\xe2\x41\x01\x02\"\x1d\n\x1b\x43loseSandboxAccountResponse\"x\n\x13SandboxPayInRequest\x12\x18\n\naccount_id\x18\x01 \x01(\tB\x04\xe2\x41\x01\x02\x12G\n\x06\x61mount\x18\x02 \x01(\x0b\x32\x31.tinkoff.public.invest.api.contract.v1.MoneyValueB\x04\xe2\x41\x01\x02\"Z\n\x14SandboxPayInResponse\x12\x42\n\x07\x62\x61lance\x18\x01 \x01(\x0b\x32\x31.tinkoff.public.invest.api.contract.v1.MoneyValue2\xfa\x16\n\x0eSandboxService\x12\x99\x01\n\x12OpenSandboxAccount\x12@.tinkoff.public.invest.api.contract.v1.OpenSandboxAccountRequest\x1a\x41.tinkoff.public.invest.api.contract.v1.OpenSandboxAccountResponse\x12\x8b\x01\n\x12GetSandboxAccounts\x12\x39.tinkoff.public.invest.api.contract.v1.GetAccountsRequest\x1a:.tinkoff.public.invest.api.contract.v1.GetAccountsResponse\x12\x9c\x01\n\x13\x43loseSandboxAccount\x12\x41.tinkoff.public.invest.api.contract.v1.CloseSandboxAccountRequest\x1a\x42.tinkoff.public.invest.api.contract.v1.CloseSandboxAccountResponse\x12\x85\x01\n\x10PostSandboxOrder\x12\x37.tinkoff.public.invest.api.contract.v1.PostOrderRequest\x1a\x38.tinkoff.public.invest.api.contract.v1.PostOrderResponse\x12\x94\x01\n\x15PostSandboxOrderAsync\x12<.tinkoff.public.invest.api.contract.v1.PostOrderAsyncRequest\x1a=.tinkoff.public.invest.api.contract.v1.PostOrderAsyncResponse\x12\x8b\x01\n\x13ReplaceSandboxOrder\x12:.tinkoff.public.invest.api.contract.v1.ReplaceOrderRequest\x1a\x38.tinkoff.public.invest.api.contract.v1.PostOrderResponse\x12\x85\x01\n\x10GetSandboxOrders\x12\x37.tinkoff.public.invest.api.contract.v1.GetOrdersRequest\x1a\x38.tinkoff.public.invest.api.contract.v1.GetOrdersResponse\x12\x8b\x01\n\x12\x43\x61ncelSandboxOrder\x12\x39.tinkoff.public.invest.api.contract.v1.CancelOrderRequest\x1a:.tinkoff.public.invest.api.contract.v1.CancelOrderResponse\x12\x86\x01\n\x14GetSandboxOrderState\x12;.tinkoff.public.invest.api.contract.v1.GetOrderStateRequest\x1a\x31.tinkoff.public.invest.api.contract.v1.OrderState\x12\x91\x01\n\x14GetSandboxOrderPrice\x12;.tinkoff.public.invest.api.contract.v1.GetOrderPriceRequest\x1a<.tinkoff.public.invest.api.contract.v1.GetOrderPriceResponse\x12\x88\x01\n\x13GetSandboxPositions\x12\x37.tinkoff.public.invest.api.contract.v1.PositionsRequest\x1a\x38.tinkoff.public.invest.api.contract.v1.PositionsResponse\x12\x8b\x01\n\x14GetSandboxOperations\x12\x38.tinkoff.public.invest.api.contract.v1.OperationsRequest\x1a\x39.tinkoff.public.invest.api.contract.v1.OperationsResponse\x12\xa9\x01\n\x1cGetSandboxOperationsByCursor\x12\x43.tinkoff.public.invest.api.contract.v1.GetOperationsByCursorRequest\x1a\x44.tinkoff.public.invest.api.contract.v1.GetOperationsByCursorResponse\x12\x88\x01\n\x13GetSandboxPortfolio\x12\x37.tinkoff.public.invest.api.contract.v1.PortfolioRequest\x1a\x38.tinkoff.public.invest.api.contract.v1.PortfolioResponse\x12\x87\x01\n\x0cSandboxPayIn\x12:.tinkoff.public.invest.api.contract.v1.SandboxPayInRequest\x1a;.tinkoff.public.invest.api.contract.v1.SandboxPayInResponse\x12\x97\x01\n\x18GetSandboxWithdrawLimits\x12<.tinkoff.public.invest.api.contract.v1.WithdrawLimitsRequest\x1a=.tinkoff.public.invest.api.contract.v1.WithdrawLimitsResponse\x12\x88\x01\n\x11GetSandboxMaxLots\x12\x38.tinkoff.public.invest.api.contract.v1.GetMaxLotsRequest\x1a\x39.tinkoff.public.invest.api.contract.v1.GetMaxLotsResponse\x12\x91\x01\n\x14PostSandboxStopOrder\x12;.tinkoff.public.invest.api.contract.v1.PostStopOrderRequest\x1a<.tinkoff.public.invest.api.contract.v1.PostStopOrderResponse\x12\x91\x01\n\x14GetSandboxStopOrders\x12;.tinkoff.public.invest.api.contract.v1.GetStopOrdersRequest\x1a<.tinkoff.public.invest.api.contract.v1.GetStopOrdersResponse\x12\x97\x01\n\x16\x43\x61ncelSandboxStopOrder\x12=.tinkoff.public.invest.api.contract.v1.CancelStopOrderRequest\x1a>.tinkoff.public.invest.api.contract.v1.CancelStopOrderResponseBa\n\x1cru.tinkoff.piapi.contract.v1P\x01Z\x0c./;investapi\xa2\x02\x05TIAPI\xaa\x02\x14Tinkoff.InvestApi.V1\xca\x02\x11Tinkoff\\Invest\\V1b\x06proto3"
|
|
16
|
+
|
|
17
|
+
pool = ::Google::Protobuf::DescriptorPool.generated_pool
|
|
18
|
+
pool.add_serialized_file(descriptor_data)
|
|
19
|
+
|
|
20
|
+
module Tinkoff
|
|
21
|
+
module Public
|
|
22
|
+
module Invest
|
|
23
|
+
module Api
|
|
24
|
+
module Contract
|
|
25
|
+
module V1
|
|
26
|
+
OpenSandboxAccountRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("tinkoff.public.invest.api.contract.v1.OpenSandboxAccountRequest").msgclass
|
|
27
|
+
OpenSandboxAccountResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("tinkoff.public.invest.api.contract.v1.OpenSandboxAccountResponse").msgclass
|
|
28
|
+
CloseSandboxAccountRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("tinkoff.public.invest.api.contract.v1.CloseSandboxAccountRequest").msgclass
|
|
29
|
+
CloseSandboxAccountResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("tinkoff.public.invest.api.contract.v1.CloseSandboxAccountResponse").msgclass
|
|
30
|
+
SandboxPayInRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("tinkoff.public.invest.api.contract.v1.SandboxPayInRequest").msgclass
|
|
31
|
+
SandboxPayInResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("tinkoff.public.invest.api.contract.v1.SandboxPayInResponse").msgclass
|
|
32
|
+
end
|
|
33
|
+
end
|
|
34
|
+
end
|
|
35
|
+
end
|
|
36
|
+
end
|
|
37
|
+
end
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
# Generated by the protocol buffer compiler. DO NOT EDIT!
|
|
2
|
+
# Source: sandbox.proto for package 'tinkoff.public.invest.api.contract.v1'
|
|
3
|
+
|
|
4
|
+
require 'grpc'
|
|
5
|
+
require 'sandbox_pb'
|
|
6
|
+
|
|
7
|
+
module Tinkoff
|
|
8
|
+
module Public
|
|
9
|
+
module Invest
|
|
10
|
+
module Api
|
|
11
|
+
module Contract
|
|
12
|
+
module V1
|
|
13
|
+
module SandboxService
|
|
14
|
+
class Service
|
|
15
|
+
|
|
16
|
+
include ::GRPC::GenericService
|
|
17
|
+
|
|
18
|
+
self.marshal_class_method = :encode
|
|
19
|
+
self.unmarshal_class_method = :decode
|
|
20
|
+
self.service_name = 'tinkoff.public.invest.api.contract.v1.SandboxService'
|
|
21
|
+
|
|
22
|
+
# OpenSandboxAccount — зарегистрировать счет
|
|
23
|
+
rpc :OpenSandboxAccount, ::Tinkoff::Public::Invest::Api::Contract::V1::OpenSandboxAccountRequest, ::Tinkoff::Public::Invest::Api::Contract::V1::OpenSandboxAccountResponse
|
|
24
|
+
# GetSandboxAccounts — счета пользователя
|
|
25
|
+
rpc :GetSandboxAccounts, ::Tinkoff::Public::Invest::Api::Contract::V1::GetAccountsRequest, ::Tinkoff::Public::Invest::Api::Contract::V1::GetAccountsResponse
|
|
26
|
+
# CloseSandboxAccount — закрыть счет
|
|
27
|
+
rpc :CloseSandboxAccount, ::Tinkoff::Public::Invest::Api::Contract::V1::CloseSandboxAccountRequest, ::Tinkoff::Public::Invest::Api::Contract::V1::CloseSandboxAccountResponse
|
|
28
|
+
# PostSandboxOrder — выставить заявку
|
|
29
|
+
rpc :PostSandboxOrder, ::Tinkoff::Public::Invest::Api::Contract::V1::PostOrderRequest, ::Tinkoff::Public::Invest::Api::Contract::V1::PostOrderResponse
|
|
30
|
+
# PostSandboxOrderAsync — выставить заявку асинхронным методом
|
|
31
|
+
# Особенности работы приведены в [статье](/invest/services/orders/async).
|
|
32
|
+
rpc :PostSandboxOrderAsync, ::Tinkoff::Public::Invest::Api::Contract::V1::PostOrderAsyncRequest, ::Tinkoff::Public::Invest::Api::Contract::V1::PostOrderAsyncResponse
|
|
33
|
+
# ReplaceSandboxOrder — изменить выставленную заявку
|
|
34
|
+
rpc :ReplaceSandboxOrder, ::Tinkoff::Public::Invest::Api::Contract::V1::ReplaceOrderRequest, ::Tinkoff::Public::Invest::Api::Contract::V1::PostOrderResponse
|
|
35
|
+
# GetSandboxOrders — получить список активных заявок по счету
|
|
36
|
+
rpc :GetSandboxOrders, ::Tinkoff::Public::Invest::Api::Contract::V1::GetOrdersRequest, ::Tinkoff::Public::Invest::Api::Contract::V1::GetOrdersResponse
|
|
37
|
+
# CancelSandboxOrder — отменить заявку
|
|
38
|
+
rpc :CancelSandboxOrder, ::Tinkoff::Public::Invest::Api::Contract::V1::CancelOrderRequest, ::Tinkoff::Public::Invest::Api::Contract::V1::CancelOrderResponse
|
|
39
|
+
# GetSandboxOrderState — получить статус торгового поручения
|
|
40
|
+
rpc :GetSandboxOrderState, ::Tinkoff::Public::Invest::Api::Contract::V1::GetOrderStateRequest, ::Tinkoff::Public::Invest::Api::Contract::V1::OrderState
|
|
41
|
+
# GetSandboxOrderPrice — получить предварительную стоимость для лимитной заявки
|
|
42
|
+
rpc :GetSandboxOrderPrice, ::Tinkoff::Public::Invest::Api::Contract::V1::GetOrderPriceRequest, ::Tinkoff::Public::Invest::Api::Contract::V1::GetOrderPriceResponse
|
|
43
|
+
# GetSandboxPositions — список позиций по счету
|
|
44
|
+
rpc :GetSandboxPositions, ::Tinkoff::Public::Invest::Api::Contract::V1::PositionsRequest, ::Tinkoff::Public::Invest::Api::Contract::V1::PositionsResponse
|
|
45
|
+
# GetSandboxOperations — список операций по счету
|
|
46
|
+
# При работе с методом учитывайте [особенности взаимодействия](/invest/services/operations/operations_problems).
|
|
47
|
+
rpc :GetSandboxOperations, ::Tinkoff::Public::Invest::Api::Contract::V1::OperationsRequest, ::Tinkoff::Public::Invest::Api::Contract::V1::OperationsResponse
|
|
48
|
+
# GetSandboxOperationsByCursor — список операций по счету с пагинацией
|
|
49
|
+
# При работе с методом учитывайте [особенности взаимодействия](/invest/services/operations/operations_problems).
|
|
50
|
+
rpc :GetSandboxOperationsByCursor, ::Tinkoff::Public::Invest::Api::Contract::V1::GetOperationsByCursorRequest, ::Tinkoff::Public::Invest::Api::Contract::V1::GetOperationsByCursorResponse
|
|
51
|
+
# GetSandboxPortfolio — портфель по счету
|
|
52
|
+
rpc :GetSandboxPortfolio, ::Tinkoff::Public::Invest::Api::Contract::V1::PortfolioRequest, ::Tinkoff::Public::Invest::Api::Contract::V1::PortfolioResponse
|
|
53
|
+
# SandboxPayIn — пополнить счет.
|
|
54
|
+
rpc :SandboxPayIn, ::Tinkoff::Public::Invest::Api::Contract::V1::SandboxPayInRequest, ::Tinkoff::Public::Invest::Api::Contract::V1::SandboxPayInResponse
|
|
55
|
+
# GetSandboxWithdrawLimits — доступный остаток для вывода средств
|
|
56
|
+
rpc :GetSandboxWithdrawLimits, ::Tinkoff::Public::Invest::Api::Contract::V1::WithdrawLimitsRequest, ::Tinkoff::Public::Invest::Api::Contract::V1::WithdrawLimitsResponse
|
|
57
|
+
# GetSandboxMaxLots — расчет количества доступных для покупки/продажи лотов
|
|
58
|
+
rpc :GetSandboxMaxLots, ::Tinkoff::Public::Invest::Api::Contract::V1::GetMaxLotsRequest, ::Tinkoff::Public::Invest::Api::Contract::V1::GetMaxLotsResponse
|
|
59
|
+
# PostSandboxStopOrder — выставить стоп-заявку
|
|
60
|
+
rpc :PostSandboxStopOrder, ::Tinkoff::Public::Invest::Api::Contract::V1::PostStopOrderRequest, ::Tinkoff::Public::Invest::Api::Contract::V1::PostStopOrderResponse
|
|
61
|
+
# GetSandboxStopOrders — получить список активных стоп-заявок по счету
|
|
62
|
+
rpc :GetSandboxStopOrders, ::Tinkoff::Public::Invest::Api::Contract::V1::GetStopOrdersRequest, ::Tinkoff::Public::Invest::Api::Contract::V1::GetStopOrdersResponse
|
|
63
|
+
# CancelSandboxStopOrder — отменить стоп-заявку
|
|
64
|
+
rpc :CancelSandboxStopOrder, ::Tinkoff::Public::Invest::Api::Contract::V1::CancelStopOrderRequest, ::Tinkoff::Public::Invest::Api::Contract::V1::CancelStopOrderResponse
|
|
65
|
+
end
|
|
66
|
+
|
|
67
|
+
Stub = Service.rpc_stub_class
|
|
68
|
+
end
|
|
69
|
+
# Методы для работы с песочницей T-Invest API
|
|
70
|
+
end
|
|
71
|
+
end
|
|
72
|
+
end
|
|
73
|
+
end
|
|
74
|
+
end
|
|
75
|
+
end
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
# Generated by the protocol buffer compiler. DO NOT EDIT!
|
|
3
|
+
# source: signals.proto
|
|
4
|
+
|
|
5
|
+
require 'google/protobuf'
|
|
6
|
+
|
|
7
|
+
require 'google/protobuf/timestamp_pb'
|
|
8
|
+
require 'google/api/field_behavior_pb'
|
|
9
|
+
require 'common_pb'
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
descriptor_data = "\n\rsignals.proto\x12%tinkoff.public.invest.api.contract.v1\x1a\x1fgoogle/protobuf/timestamp.proto\x1a\x1fgoogle/api/field_behavior.proto\x1a\x0c\x63ommon.proto\"@\n\x14GetStrategiesRequest\x12\x18\n\x0bstrategy_id\x18\x01 \x01(\tH\x00\x88\x01\x01\x42\x0e\n\x0c_strategy_id\"\\\n\x15GetStrategiesResponse\x12\x43\n\nstrategies\x18\x01 \x03(\x0b\x32/.tinkoff.public.invest.api.contract.v1.Strategy\"\x9b\x05\n\x08Strategy\x12\x19\n\x0bstrategy_id\x18\x01 \x01(\tB\x04\xe2\x41\x01\x02\x12\x1b\n\rstrategy_name\x18\x02 \x01(\tB\x04\xe2\x41\x01\x02\x12!\n\x14strategy_description\x18\x03 \x01(\tH\x00\x88\x01\x01\x12\x19\n\x0cstrategy_url\x18\x04 \x01(\tH\x01\x88\x01\x01\x12P\n\rstrategy_type\x18\x05 \x01(\x0e\x32\x33.tinkoff.public.invest.api.contract.v1.StrategyTypeB\x04\xe2\x41\x01\x02\x12\x1c\n\x0e\x61\x63tive_signals\x18\x06 \x01(\x05\x42\x04\xe2\x41\x01\x02\x12\x1b\n\rtotal_signals\x18\x07 \x01(\x05\x42\x04\xe2\x41\x01\x02\x12\x1e\n\x10time_in_position\x18\x08 \x01(\x03\x42\x04\xe2\x41\x01\x02\x12T\n\x14\x61verage_signal_yield\x18\t \x01(\x0b\x32\x30.tinkoff.public.invest.api.contract.v1.QuotationB\x04\xe2\x41\x01\x02\x12Y\n\x19\x61verage_signal_yield_year\x18\n \x01(\x0b\x32\x30.tinkoff.public.invest.api.contract.v1.QuotationB\x04\xe2\x41\x01\x02\x12\x45\n\x05yield\x18\x0b \x01(\x0b\x32\x30.tinkoff.public.invest.api.contract.v1.QuotationB\x04\xe2\x41\x01\x02\x12J\n\nyield_year\x18\x0c \x01(\x0b\x32\x30.tinkoff.public.invest.api.contract.v1.QuotationB\x04\xe2\x41\x01\x02\x42\x17\n\x15_strategy_descriptionB\x0f\n\r_strategy_url\"\xe1\x04\n\x11GetSignalsRequest\x12\x16\n\tsignal_id\x18\x01 \x01(\tH\x00\x88\x01\x01\x12\x18\n\x0bstrategy_id\x18\x02 \x01(\tH\x01\x88\x01\x01\x12O\n\rstrategy_type\x18\x03 \x01(\x0e\x32\x33.tinkoff.public.invest.api.contract.v1.StrategyTypeH\x02\x88\x01\x01\x12\x1b\n\x0einstrument_uid\x18\x04 \x01(\tH\x03\x88\x01\x01\x12-\n\x04\x66rom\x18\x05 \x01(\x0b\x32\x1a.google.protobuf.TimestampH\x04\x88\x01\x01\x12+\n\x02to\x18\x06 \x01(\x0b\x32\x1a.google.protobuf.TimestampH\x05\x88\x01\x01\x12N\n\tdirection\x18\x07 \x01(\x0e\x32\x36.tinkoff.public.invest.api.contract.v1.SignalDirectionH\x06\x88\x01\x01\x12G\n\x06\x61\x63tive\x18\x08 \x01(\x0e\x32\x32.tinkoff.public.invest.api.contract.v1.SignalStateH\x07\x88\x01\x01\x12@\n\x06paging\x18\t \x01(\x0b\x32+.tinkoff.public.invest.api.contract.v1.PageH\x08\x88\x01\x01\x42\x0c\n\n_signal_idB\x0e\n\x0c_strategy_idB\x10\n\x0e_strategy_typeB\x11\n\x0f_instrument_uidB\x07\n\x05_fromB\x05\n\x03_toB\x0c\n\n_directionB\t\n\x07_activeB\t\n\x07_paging\"\x99\x01\n\x12GetSignalsResponse\x12>\n\x07signals\x18\x01 \x03(\x0b\x32-.tinkoff.public.invest.api.contract.v1.Signal\x12\x43\n\x06paging\x18\x02 \x01(\x0b\x32\x33.tinkoff.public.invest.api.contract.v1.PageResponse\"\x98\x06\n\x06Signal\x12\x17\n\tsignal_id\x18\x01 \x01(\tB\x04\xe2\x41\x01\x02\x12\x19\n\x0bstrategy_id\x18\x02 \x01(\tB\x04\xe2\x41\x01\x02\x12\x1b\n\rstrategy_name\x18\x03 \x01(\tB\x04\xe2\x41\x01\x02\x12\x1c\n\x0einstrument_uid\x18\x04 \x01(\tB\x04\xe2\x41\x01\x02\x12\x33\n\tcreate_dt\x18\x05 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x04\xe2\x41\x01\x02\x12O\n\tdirection\x18\x06 \x01(\x0e\x32\x36.tinkoff.public.invest.api.contract.v1.SignalDirectionB\x04\xe2\x41\x01\x02\x12M\n\rinitial_price\x18\x07 \x01(\x0b\x32\x30.tinkoff.public.invest.api.contract.v1.QuotationB\x04\xe2\x41\x01\x02\x12\x11\n\x04info\x18\x08 \x01(\tH\x00\x88\x01\x01\x12\x12\n\x04name\x18\t \x01(\tB\x04\xe2\x41\x01\x02\x12L\n\x0ctarget_price\x18\n \x01(\x0b\x32\x30.tinkoff.public.invest.api.contract.v1.QuotationB\x04\xe2\x41\x01\x02\x12\x30\n\x06\x65nd_dt\x18\x0b \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x04\xe2\x41\x01\x02\x12\x18\n\x0bprobability\x18\x0c \x01(\x05H\x01\x88\x01\x01\x12G\n\x08stoploss\x18\r \x01(\x0b\x32\x30.tinkoff.public.invest.api.contract.v1.QuotationH\x02\x88\x01\x01\x12J\n\x0b\x63lose_price\x18\x0e \x01(\x0b\x32\x30.tinkoff.public.invest.api.contract.v1.QuotationH\x03\x88\x01\x01\x12\x31\n\x08\x63lose_dt\x18\x0f \x01(\x0b\x32\x1a.google.protobuf.TimestampH\x04\x88\x01\x01\x42\x07\n\x05_infoB\x0e\n\x0c_probabilityB\x0b\n\t_stoplossB\x0e\n\x0c_close_priceB\x0b\n\t_close_dt*i\n\x0cStrategyType\x12\x1d\n\x19STRATEGY_TYPE_UNSPECIFIED\x10\x00\x12\x1b\n\x17STRATEGY_TYPE_TECHNICAL\x10\x01\x12\x1d\n\x19STRATEGY_TYPE_FUNDAMENTAL\x10\x02*h\n\x0fSignalDirection\x12 \n\x1cSIGNAL_DIRECTION_UNSPECIFIED\x10\x00\x12\x18\n\x14SIGNAL_DIRECTION_BUY\x10\x01\x12\x19\n\x15SIGNAL_DIRECTION_SELL\x10\x02*s\n\x0bSignalState\x12\x1c\n\x18SIGNAL_STATE_UNSPECIFIED\x10\x00\x12\x17\n\x13SIGNAL_STATE_ACTIVE\x10\x01\x12\x17\n\x13SIGNAL_STATE_CLOSED\x10\x02\x12\x14\n\x10SIGNAL_STATE_ALL\x10\x03\x32\xa0\x02\n\rSignalService\x12\x8a\x01\n\rGetStrategies\x12;.tinkoff.public.invest.api.contract.v1.GetStrategiesRequest\x1a<.tinkoff.public.invest.api.contract.v1.GetStrategiesResponse\x12\x81\x01\n\nGetSignals\x12\x38.tinkoff.public.invest.api.contract.v1.GetSignalsRequest\x1a\x39.tinkoff.public.invest.api.contract.v1.GetSignalsResponseBa\n\x1cru.tinkoff.piapi.contract.v1P\x01Z\x0c./;investapi\xa2\x02\x05TIAPI\xaa\x02\x14Tinkoff.InvestApi.V1\xca\x02\x11Tinkoff\\Invest\\V1b\x06proto3"
|
|
13
|
+
|
|
14
|
+
pool = ::Google::Protobuf::DescriptorPool.generated_pool
|
|
15
|
+
pool.add_serialized_file(descriptor_data)
|
|
16
|
+
|
|
17
|
+
module Tinkoff
|
|
18
|
+
module Public
|
|
19
|
+
module Invest
|
|
20
|
+
module Api
|
|
21
|
+
module Contract
|
|
22
|
+
module V1
|
|
23
|
+
GetStrategiesRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("tinkoff.public.invest.api.contract.v1.GetStrategiesRequest").msgclass
|
|
24
|
+
GetStrategiesResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("tinkoff.public.invest.api.contract.v1.GetStrategiesResponse").msgclass
|
|
25
|
+
Strategy = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("tinkoff.public.invest.api.contract.v1.Strategy").msgclass
|
|
26
|
+
GetSignalsRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("tinkoff.public.invest.api.contract.v1.GetSignalsRequest").msgclass
|
|
27
|
+
GetSignalsResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("tinkoff.public.invest.api.contract.v1.GetSignalsResponse").msgclass
|
|
28
|
+
Signal = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("tinkoff.public.invest.api.contract.v1.Signal").msgclass
|
|
29
|
+
StrategyType = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("tinkoff.public.invest.api.contract.v1.StrategyType").enummodule
|
|
30
|
+
SignalDirection = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("tinkoff.public.invest.api.contract.v1.SignalDirection").enummodule
|
|
31
|
+
SignalState = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("tinkoff.public.invest.api.contract.v1.SignalState").enummodule
|
|
32
|
+
end
|
|
33
|
+
end
|
|
34
|
+
end
|
|
35
|
+
end
|
|
36
|
+
end
|
|
37
|
+
end
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
# Generated by the protocol buffer compiler. DO NOT EDIT!
|
|
2
|
+
# Source: signals.proto for package 'tinkoff.public.invest.api.contract.v1'
|
|
3
|
+
|
|
4
|
+
require 'grpc'
|
|
5
|
+
require 'signals_pb'
|
|
6
|
+
|
|
7
|
+
module Tinkoff
|
|
8
|
+
module Public
|
|
9
|
+
module Invest
|
|
10
|
+
module Api
|
|
11
|
+
module Contract
|
|
12
|
+
module V1
|
|
13
|
+
module SignalService
|
|
14
|
+
class Service
|
|
15
|
+
|
|
16
|
+
include ::GRPC::GenericService
|
|
17
|
+
|
|
18
|
+
self.marshal_class_method = :encode
|
|
19
|
+
self.unmarshal_class_method = :decode
|
|
20
|
+
self.service_name = 'tinkoff.public.invest.api.contract.v1.SignalService'
|
|
21
|
+
|
|
22
|
+
# GetStrategies — стратегии
|
|
23
|
+
rpc :GetStrategies, ::Tinkoff::Public::Invest::Api::Contract::V1::GetStrategiesRequest, ::Tinkoff::Public::Invest::Api::Contract::V1::GetStrategiesResponse
|
|
24
|
+
# GetSignals — сигналы
|
|
25
|
+
rpc :GetSignals, ::Tinkoff::Public::Invest::Api::Contract::V1::GetSignalsRequest, ::Tinkoff::Public::Invest::Api::Contract::V1::GetSignalsResponse
|
|
26
|
+
end
|
|
27
|
+
|
|
28
|
+
Stub = Service.rpc_stub_class
|
|
29
|
+
end
|
|
30
|
+
# Сервис для получения технических сигналов и мнений аналитиков по инструментам.
|
|
31
|
+
end
|
|
32
|
+
end
|
|
33
|
+
end
|
|
34
|
+
end
|
|
35
|
+
end
|
|
36
|
+
end
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
# Generated by the protocol buffer compiler. DO NOT EDIT!
|
|
3
|
+
# source: stoporders.proto
|
|
4
|
+
|
|
5
|
+
require 'google/protobuf'
|
|
6
|
+
|
|
7
|
+
require 'google/protobuf/timestamp_pb'
|
|
8
|
+
require 'google/api/field_behavior_pb'
|
|
9
|
+
require 'common_pb'
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
descriptor_data = "\n\x10stoporders.proto\x12%tinkoff.public.invest.api.contract.v1\x1a\x1fgoogle/protobuf/timestamp.proto\x1a\x1fgoogle/api/field_behavior.proto\x1a\x0c\x63ommon.proto\"\xb5\n\n\x14PostStopOrderRequest\x12\x15\n\x04\x66igi\x18\x01 \x01(\tB\x02\x18\x01H\x00\x88\x01\x01\x12\x16\n\x08quantity\x18\x02 \x01(\x03\x42\x04\xe2\x41\x01\x02\x12\x44\n\x05price\x18\x03 \x01(\x0b\x32\x30.tinkoff.public.invest.api.contract.v1.QuotationH\x01\x88\x01\x01\x12I\n\nstop_price\x18\x04 \x01(\x0b\x32\x30.tinkoff.public.invest.api.contract.v1.QuotationH\x02\x88\x01\x01\x12R\n\tdirection\x18\x05 \x01(\x0e\x32\x39.tinkoff.public.invest.api.contract.v1.StopOrderDirectionB\x04\xe2\x41\x01\x02\x12\x18\n\naccount_id\x18\x06 \x01(\tB\x04\xe2\x41\x01\x02\x12]\n\x0f\x65xpiration_type\x18\x07 \x01(\x0e\x32>.tinkoff.public.invest.api.contract.v1.StopOrderExpirationTypeB\x04\xe2\x41\x01\x02\x12S\n\x0fstop_order_type\x18\x08 \x01(\x0e\x32\x34.tinkoff.public.invest.api.contract.v1.StopOrderTypeB\x04\xe2\x41\x01\x02\x12\x34\n\x0b\x65xpire_date\x18\t \x01(\x0b\x32\x1a.google.protobuf.TimestampH\x03\x88\x01\x01\x12\x1b\n\rinstrument_id\x18\n \x01(\tB\x04\xe2\x41\x01\x02\x12U\n\x13\x65xchange_order_type\x18\x0b \x01(\x0e\x32\x38.tinkoff.public.invest.api.contract.v1.ExchangeOrderType\x12O\n\x10take_profit_type\x18\x0c \x01(\x0e\x32\x35.tinkoff.public.invest.api.contract.v1.TakeProfitType\x12_\n\rtrailing_data\x18\r \x01(\x0b\x32H.tinkoff.public.invest.api.contract.v1.PostStopOrderRequest.TrailingData\x12\x44\n\nprice_type\x18\x0e \x01(\x0e\x32\x30.tinkoff.public.invest.api.contract.v1.PriceType\x12\x16\n\x08order_id\x18\x0f \x01(\tB\x04\xe2\x41\x01\x02\x12\x1c\n\x14\x63onfirm_margin_trade\x18\x10 \x01(\x08\x1a\xb0\x02\n\x0cTrailingData\x12@\n\x06indent\x18\x01 \x01(\x0b\x32\x30.tinkoff.public.invest.api.contract.v1.Quotation\x12M\n\x0bindent_type\x18\x02 \x01(\x0e\x32\x38.tinkoff.public.invest.api.contract.v1.TrailingValueType\x12@\n\x06spread\x18\x03 \x01(\x0b\x32\x30.tinkoff.public.invest.api.contract.v1.Quotation\x12M\n\x0bspread_type\x18\x04 \x01(\x0e\x32\x38.tinkoff.public.invest.api.contract.v1.TrailingValueTypeB\x07\n\x05_figiB\x08\n\x06_priceB\r\n\x0b_stop_priceB\x0e\n\x0c_expire_date\"\x9d\x01\n\x15PostStopOrderResponse\x12\x15\n\rstop_order_id\x18\x01 \x01(\t\x12\x18\n\x10order_request_id\x18\x02 \x01(\t\x12S\n\x11response_metadata\x18\xfe\x01 \x01(\x0b\x32\x37.tinkoff.public.invest.api.contract.v1.ResponseMetadata\"\xd0\x01\n\x14GetStopOrdersRequest\x12\x18\n\naccount_id\x18\x01 \x01(\tB\x04\xe2\x41\x01\x02\x12L\n\x06status\x18\x02 \x01(\x0e\x32<.tinkoff.public.invest.api.contract.v1.StopOrderStatusOption\x12(\n\x04\x66rom\x18\x03 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12&\n\x02to\x18\x04 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\"^\n\x15GetStopOrdersResponse\x12\x45\n\x0bstop_orders\x18\x01 \x03(\x0b\x32\x30.tinkoff.public.invest.api.contract.v1.StopOrder\"O\n\x16\x43\x61ncelStopOrderRequest\x12\x18\n\naccount_id\x18\x01 \x01(\tB\x04\xe2\x41\x01\x02\x12\x1b\n\rstop_order_id\x18\x02 \x01(\tB\x04\xe2\x41\x01\x02\"C\n\x17\x43\x61ncelStopOrderResponse\x12(\n\x04time\x18\x01 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\"\xd8\x0b\n\tStopOrder\x12\x15\n\rstop_order_id\x18\x01 \x01(\t\x12\x16\n\x0elots_requested\x18\x02 \x01(\x03\x12\x0c\n\x04\x66igi\x18\x03 \x01(\t\x12L\n\tdirection\x18\x04 \x01(\x0e\x32\x39.tinkoff.public.invest.api.contract.v1.StopOrderDirection\x12\x10\n\x08\x63urrency\x18\x05 \x01(\t\x12H\n\norder_type\x18\x06 \x01(\x0e\x32\x34.tinkoff.public.invest.api.contract.v1.StopOrderType\x12/\n\x0b\x63reate_date\x18\x07 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\x38\n\x14\x61\x63tivation_date_time\x18\x08 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\x33\n\x0f\x65xpiration_time\x18\t \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12@\n\x05price\x18\n \x01(\x0b\x32\x31.tinkoff.public.invest.api.contract.v1.MoneyValue\x12\x45\n\nstop_price\x18\x0b \x01(\x0b\x32\x31.tinkoff.public.invest.api.contract.v1.MoneyValue\x12\x16\n\x0einstrument_uid\x18\x0c \x01(\t\x12O\n\x10take_profit_type\x18\r \x01(\x0e\x32\x35.tinkoff.public.invest.api.contract.v1.TakeProfitType\x12T\n\rtrailing_data\x18\x0e \x01(\x0b\x32=.tinkoff.public.invest.api.contract.v1.StopOrder.TrailingData\x12L\n\x06status\x18\x0f \x01(\x0e\x32<.tinkoff.public.invest.api.contract.v1.StopOrderStatusOption\x12U\n\x13\x65xchange_order_type\x18\x10 \x01(\x0e\x32\x38.tinkoff.public.invest.api.contract.v1.ExchangeOrderType\x12\x1e\n\x11\x65xchange_order_id\x18\x11 \x01(\tH\x00\x88\x01\x01\x12\x0e\n\x06ticker\x18\x12 \x01(\t\x12\x12\n\nclass_code\x18\x13 \x01(\t\x1a\xfc\x03\n\x0cTrailingData\x12@\n\x06indent\x18\x01 \x01(\x0b\x32\x30.tinkoff.public.invest.api.contract.v1.Quotation\x12M\n\x0bindent_type\x18\x02 \x01(\x0e\x32\x38.tinkoff.public.invest.api.contract.v1.TrailingValueType\x12@\n\x06spread\x18\x03 \x01(\x0b\x32\x30.tinkoff.public.invest.api.contract.v1.Quotation\x12M\n\x0bspread_type\x18\x04 \x01(\x0e\x32\x38.tinkoff.public.invest.api.contract.v1.TrailingValueType\x12I\n\x06status\x18\x05 \x01(\x0e\x32\x39.tinkoff.public.invest.api.contract.v1.TrailingStopStatus\x12?\n\x05price\x18\x07 \x01(\x0b\x32\x30.tinkoff.public.invest.api.contract.v1.Quotation\x12>\n\x04\x65xtr\x18\x08 \x01(\x0b\x32\x30.tinkoff.public.invest.api.contract.v1.QuotationB\x14\n\x12_exchange_order_id*w\n\x12StopOrderDirection\x12$\n STOP_ORDER_DIRECTION_UNSPECIFIED\x10\x00\x12\x1c\n\x18STOP_ORDER_DIRECTION_BUY\x10\x01\x12\x1d\n\x19STOP_ORDER_DIRECTION_SELL\x10\x02*\xa5\x01\n\x17StopOrderExpirationType\x12*\n&STOP_ORDER_EXPIRATION_TYPE_UNSPECIFIED\x10\x00\x12/\n+STOP_ORDER_EXPIRATION_TYPE_GOOD_TILL_CANCEL\x10\x01\x12-\n)STOP_ORDER_EXPIRATION_TYPE_GOOD_TILL_DATE\x10\x02*\x90\x01\n\rStopOrderType\x12\x1f\n\x1bSTOP_ORDER_TYPE_UNSPECIFIED\x10\x00\x12\x1f\n\x1bSTOP_ORDER_TYPE_TAKE_PROFIT\x10\x01\x12\x1d\n\x19STOP_ORDER_TYPE_STOP_LOSS\x10\x02\x12\x1e\n\x1aSTOP_ORDER_TYPE_STOP_LIMIT\x10\x03*\xd2\x01\n\x15StopOrderStatusOption\x12!\n\x1dSTOP_ORDER_STATUS_UNSPECIFIED\x10\x00\x12\x19\n\x15STOP_ORDER_STATUS_ALL\x10\x01\x12\x1c\n\x18STOP_ORDER_STATUS_ACTIVE\x10\x02\x12\x1e\n\x1aSTOP_ORDER_STATUS_EXECUTED\x10\x03\x12\x1e\n\x1aSTOP_ORDER_STATUS_CANCELED\x10\x04\x12\x1d\n\x19STOP_ORDER_STATUS_EXPIRED\x10\x05*w\n\x11\x45xchangeOrderType\x12#\n\x1f\x45XCHANGE_ORDER_TYPE_UNSPECIFIED\x10\x00\x12\x1e\n\x1a\x45XCHANGE_ORDER_TYPE_MARKET\x10\x01\x12\x1d\n\x19\x45XCHANGE_ORDER_TYPE_LIMIT\x10\x02*o\n\x0eTakeProfitType\x12 \n\x1cTAKE_PROFIT_TYPE_UNSPECIFIED\x10\x00\x12\x1c\n\x18TAKE_PROFIT_TYPE_REGULAR\x10\x01\x12\x1d\n\x19TAKE_PROFIT_TYPE_TRAILING\x10\x02*m\n\x11TrailingValueType\x12\x1e\n\x1aTRAILING_VALUE_UNSPECIFIED\x10\x00\x12\x1b\n\x17TRAILING_VALUE_ABSOLUTE\x10\x01\x12\x1b\n\x17TRAILING_VALUE_RELATIVE\x10\x02*j\n\x12TrailingStopStatus\x12\x1d\n\x19TRAILING_STOP_UNSPECIFIED\x10\x00\x12\x18\n\x14TRAILING_STOP_ACTIVE\x10\x01\x12\x1b\n\x17TRAILING_STOP_ACTIVATED\x10\x02\x32\xc0\x03\n\x11StopOrdersService\x12\x8a\x01\n\rPostStopOrder\x12;.tinkoff.public.invest.api.contract.v1.PostStopOrderRequest\x1a<.tinkoff.public.invest.api.contract.v1.PostStopOrderResponse\x12\x8a\x01\n\rGetStopOrders\x12;.tinkoff.public.invest.api.contract.v1.GetStopOrdersRequest\x1a<.tinkoff.public.invest.api.contract.v1.GetStopOrdersResponse\x12\x90\x01\n\x0f\x43\x61ncelStopOrder\x12=.tinkoff.public.invest.api.contract.v1.CancelStopOrderRequest\x1a>.tinkoff.public.invest.api.contract.v1.CancelStopOrderResponseBa\n\x1cru.tinkoff.piapi.contract.v1P\x01Z\x0c./;investapi\xa2\x02\x05TIAPI\xaa\x02\x14Tinkoff.InvestApi.V1\xca\x02\x11Tinkoff\\Invest\\V1b\x06proto3"
|
|
13
|
+
|
|
14
|
+
pool = ::Google::Protobuf::DescriptorPool.generated_pool
|
|
15
|
+
pool.add_serialized_file(descriptor_data)
|
|
16
|
+
|
|
17
|
+
module Tinkoff
|
|
18
|
+
module Public
|
|
19
|
+
module Invest
|
|
20
|
+
module Api
|
|
21
|
+
module Contract
|
|
22
|
+
module V1
|
|
23
|
+
PostStopOrderRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("tinkoff.public.invest.api.contract.v1.PostStopOrderRequest").msgclass
|
|
24
|
+
PostStopOrderRequest::TrailingData = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("tinkoff.public.invest.api.contract.v1.PostStopOrderRequest.TrailingData").msgclass
|
|
25
|
+
PostStopOrderResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("tinkoff.public.invest.api.contract.v1.PostStopOrderResponse").msgclass
|
|
26
|
+
GetStopOrdersRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("tinkoff.public.invest.api.contract.v1.GetStopOrdersRequest").msgclass
|
|
27
|
+
GetStopOrdersResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("tinkoff.public.invest.api.contract.v1.GetStopOrdersResponse").msgclass
|
|
28
|
+
CancelStopOrderRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("tinkoff.public.invest.api.contract.v1.CancelStopOrderRequest").msgclass
|
|
29
|
+
CancelStopOrderResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("tinkoff.public.invest.api.contract.v1.CancelStopOrderResponse").msgclass
|
|
30
|
+
StopOrder = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("tinkoff.public.invest.api.contract.v1.StopOrder").msgclass
|
|
31
|
+
StopOrder::TrailingData = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("tinkoff.public.invest.api.contract.v1.StopOrder.TrailingData").msgclass
|
|
32
|
+
StopOrderDirection = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("tinkoff.public.invest.api.contract.v1.StopOrderDirection").enummodule
|
|
33
|
+
StopOrderExpirationType = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("tinkoff.public.invest.api.contract.v1.StopOrderExpirationType").enummodule
|
|
34
|
+
StopOrderType = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("tinkoff.public.invest.api.contract.v1.StopOrderType").enummodule
|
|
35
|
+
StopOrderStatusOption = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("tinkoff.public.invest.api.contract.v1.StopOrderStatusOption").enummodule
|
|
36
|
+
ExchangeOrderType = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("tinkoff.public.invest.api.contract.v1.ExchangeOrderType").enummodule
|
|
37
|
+
TakeProfitType = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("tinkoff.public.invest.api.contract.v1.TakeProfitType").enummodule
|
|
38
|
+
TrailingValueType = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("tinkoff.public.invest.api.contract.v1.TrailingValueType").enummodule
|
|
39
|
+
TrailingStopStatus = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("tinkoff.public.invest.api.contract.v1.TrailingStopStatus").enummodule
|
|
40
|
+
end
|
|
41
|
+
end
|
|
42
|
+
end
|
|
43
|
+
end
|
|
44
|
+
end
|
|
45
|
+
end
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
# Generated by the protocol buffer compiler. DO NOT EDIT!
|
|
2
|
+
# Source: stoporders.proto for package 'tinkoff.public.invest.api.contract.v1'
|
|
3
|
+
|
|
4
|
+
require 'grpc'
|
|
5
|
+
require 'stoporders_pb'
|
|
6
|
+
|
|
7
|
+
module Tinkoff
|
|
8
|
+
module Public
|
|
9
|
+
module Invest
|
|
10
|
+
module Api
|
|
11
|
+
module Contract
|
|
12
|
+
module V1
|
|
13
|
+
module StopOrdersService
|
|
14
|
+
class Service
|
|
15
|
+
|
|
16
|
+
include ::GRPC::GenericService
|
|
17
|
+
|
|
18
|
+
self.marshal_class_method = :encode
|
|
19
|
+
self.unmarshal_class_method = :decode
|
|
20
|
+
self.service_name = 'tinkoff.public.invest.api.contract.v1.StopOrdersService'
|
|
21
|
+
|
|
22
|
+
# PostStopOrder — выставить стоп-заявку
|
|
23
|
+
rpc :PostStopOrder, ::Tinkoff::Public::Invest::Api::Contract::V1::PostStopOrderRequest, ::Tinkoff::Public::Invest::Api::Contract::V1::PostStopOrderResponse
|
|
24
|
+
# GetStopOrders — получить список активных стоп-заявок по счету
|
|
25
|
+
rpc :GetStopOrders, ::Tinkoff::Public::Invest::Api::Contract::V1::GetStopOrdersRequest, ::Tinkoff::Public::Invest::Api::Contract::V1::GetStopOrdersResponse
|
|
26
|
+
# CancelStopOrder — отменить стоп-заявку
|
|
27
|
+
rpc :CancelStopOrder, ::Tinkoff::Public::Invest::Api::Contract::V1::CancelStopOrderRequest, ::Tinkoff::Public::Invest::Api::Contract::V1::CancelStopOrderResponse
|
|
28
|
+
end
|
|
29
|
+
|
|
30
|
+
Stub = Service.rpc_stub_class
|
|
31
|
+
end
|
|
32
|
+
# Сервис для работы со стоп-заявками: выставление, отмена, получение списка стоп-заявок.
|
|
33
|
+
end
|
|
34
|
+
end
|
|
35
|
+
end
|
|
36
|
+
end
|
|
37
|
+
end
|
|
38
|
+
end
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
# Generated by the protocol buffer compiler. DO NOT EDIT!
|
|
3
|
+
# source: users.proto
|
|
4
|
+
|
|
5
|
+
require 'google/protobuf'
|
|
6
|
+
|
|
7
|
+
require 'google/protobuf/timestamp_pb'
|
|
8
|
+
require 'google/api/field_behavior_pb'
|
|
9
|
+
require 'common_pb'
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
descriptor_data = "\n\x0busers.proto\x12%tinkoff.public.invest.api.contract.v1\x1a\x1fgoogle/protobuf/timestamp.proto\x1a\x1fgoogle/api/field_behavior.proto\x1a\x0c\x63ommon.proto\"j\n\x12GetAccountsRequest\x12I\n\x06status\x18\x01 \x01(\x0e\x32\x34.tinkoff.public.invest.api.contract.v1.AccountStatusH\x00\x88\x01\x01\x42\t\n\x07_status\"W\n\x13GetAccountsResponse\x12@\n\x08\x61\x63\x63ounts\x18\x01 \x03(\x0b\x32..tinkoff.public.invest.api.contract.v1.Account\"\xd7\x02\n\x07\x41\x63\x63ount\x12\n\n\x02id\x18\x01 \x01(\t\x12@\n\x04type\x18\x02 \x01(\x0e\x32\x32.tinkoff.public.invest.api.contract.v1.AccountType\x12\x0c\n\x04name\x18\x03 \x01(\t\x12\x44\n\x06status\x18\x04 \x01(\x0e\x32\x34.tinkoff.public.invest.api.contract.v1.AccountStatus\x12/\n\x0bopened_date\x18\x05 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12/\n\x0b\x63losed_date\x18\x06 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12H\n\x0c\x61\x63\x63\x65ss_level\x18\x07 \x01(\x0e\x32\x32.tinkoff.public.invest.api.contract.v1.AccessLevel\"6\n\x1aGetMarginAttributesRequest\x12\x18\n\naccount_id\x18\x01 \x01(\tB\x04\xe2\x41\x01\x02\"\xf5\x03\n\x1bGetMarginAttributesResponse\x12K\n\x10liquid_portfolio\x18\x01 \x01(\x0b\x32\x31.tinkoff.public.invest.api.contract.v1.MoneyValue\x12J\n\x0fstarting_margin\x18\x02 \x01(\x0b\x32\x31.tinkoff.public.invest.api.contract.v1.MoneyValue\x12I\n\x0eminimal_margin\x18\x03 \x01(\x0b\x32\x31.tinkoff.public.invest.api.contract.v1.MoneyValue\x12Q\n\x17\x66unds_sufficiency_level\x18\x04 \x01(\x0b\x32\x30.tinkoff.public.invest.api.contract.v1.Quotation\x12R\n\x17\x61mount_of_missing_funds\x18\x05 \x01(\x0b\x32\x31.tinkoff.public.invest.api.contract.v1.MoneyValue\x12K\n\x10\x63orrected_margin\x18\x06 \x01(\x0b\x32\x31.tinkoff.public.invest.api.contract.v1.MoneyValue\"\x16\n\x14GetUserTariffRequest\"\xab\x01\n\x15GetUserTariffResponse\x12G\n\x0cunary_limits\x18\x01 \x03(\x0b\x32\x31.tinkoff.public.invest.api.contract.v1.UnaryLimit\x12I\n\rstream_limits\x18\x02 \x03(\x0b\x32\x32.tinkoff.public.invest.api.contract.v1.StreamLimit\"k\n\nUnaryLimit\x12\x18\n\x10limit_per_minute\x18\x01 \x01(\x05\x12\x0f\n\x07methods\x18\x02 \x03(\t\x12\x1d\n\x10limit_per_second\x18\x03 \x01(\x05H\x00\x88\x01\x01\x42\x13\n\x11_limit_per_second\";\n\x0bStreamLimit\x12\r\n\x05limit\x18\x01 \x01(\x05\x12\x0f\n\x07streams\x18\x02 \x03(\t\x12\x0c\n\x04open\x18\x03 \x01(\x05\"\x10\n\x0eGetInfoRequest\"\x96\x01\n\x0fGetInfoResponse\x12\x13\n\x0bprem_status\x18\x01 \x01(\x08\x12\x13\n\x0bqual_status\x18\x02 \x01(\x08\x12\x1f\n\x17qualified_for_work_with\x18\x03 \x03(\t\x12\x0e\n\x06tariff\x18\x04 \x01(\t\x12\x0f\n\x07user_id\x18\t \x01(\t\x12\x17\n\x0frisk_level_code\x18\x0c \x01(\t\"\x18\n\x16GetBankAccountsRequest\"d\n\x17GetBankAccountsResponse\x12I\n\rbank_accounts\x18\x01 \x03(\x0b\x32\x32.tinkoff.public.invest.api.contract.v1.BankAccount\"\xdc\x01\n\x0b\x42\x61nkAccount\x12\n\n\x02id\x18\x01 \x01(\t\x12\x0c\n\x04name\x18\x02 \x01(\t\x12@\n\x05money\x18\x03 \x03(\x0b\x32\x31.tinkoff.public.invest.api.contract.v1.MoneyValue\x12/\n\x0bopened_date\x18\x04 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12@\n\x04type\x18\x05 \x01(\x0e\x32\x32.tinkoff.public.invest.api.contract.v1.AccountType\"\xb6\x01\n\x17\x43urrencyTransferRequest\x12\x1d\n\x0f\x66rom_account_id\x18\x01 \x01(\tB\x04\xe2\x41\x01\x02\x12\x1b\n\rto_account_id\x18\x02 \x01(\tB\x04\xe2\x41\x01\x02\x12G\n\x06\x61mount\x18\x03 \x01(\x0b\x32\x31.tinkoff.public.invest.api.contract.v1.MoneyValueB\x04\xe2\x41\x01\x02\x12\x16\n\x0etransaction_id\x18\x04 \x01(\t\"\x1a\n\x18\x43urrencyTransferResponse*\xcf\x01\n\x0b\x41\x63\x63ountType\x12\x1c\n\x18\x41\x43\x43OUNT_TYPE_UNSPECIFIED\x10\x00\x12\x18\n\x14\x41\x43\x43OUNT_TYPE_TINKOFF\x10\x01\x12\x1c\n\x18\x41\x43\x43OUNT_TYPE_TINKOFF_IIS\x10\x02\x12\x1b\n\x17\x41\x43\x43OUNT_TYPE_INVEST_BOX\x10\x03\x12\x1c\n\x18\x41\x43\x43OUNT_TYPE_INVEST_FUND\x10\x04\x12\x16\n\x12\x41\x43\x43OUNT_TYPE_DEBIT\x10\x05\x12\x17\n\x13\x41\x43\x43OUNT_TYPE_SAVING\x10\x06*\x93\x01\n\rAccountStatus\x12\x1e\n\x1a\x41\x43\x43OUNT_STATUS_UNSPECIFIED\x10\x00\x12\x16\n\x12\x41\x43\x43OUNT_STATUS_NEW\x10\x01\x12\x17\n\x13\x41\x43\x43OUNT_STATUS_OPEN\x10\x02\x12\x19\n\x15\x41\x43\x43OUNT_STATUS_CLOSED\x10\x03\x12\x16\n\x12\x41\x43\x43OUNT_STATUS_ALL\x10\x04*\xa1\x01\n\x0b\x41\x63\x63\x65ssLevel\x12$\n ACCOUNT_ACCESS_LEVEL_UNSPECIFIED\x10\x00\x12$\n ACCOUNT_ACCESS_LEVEL_FULL_ACCESS\x10\x01\x12\"\n\x1e\x41\x43\x43OUNT_ACCESS_LEVEL_READ_ONLY\x10\x02\x12\"\n\x1e\x41\x43\x43OUNT_ACCESS_LEVEL_NO_ACCESS\x10\x03\x32\xe4\x06\n\x0cUsersService\x12\x84\x01\n\x0bGetAccounts\x12\x39.tinkoff.public.invest.api.contract.v1.GetAccountsRequest\x1a:.tinkoff.public.invest.api.contract.v1.GetAccountsResponse\x12\x9c\x01\n\x13GetMarginAttributes\x12\x41.tinkoff.public.invest.api.contract.v1.GetMarginAttributesRequest\x1a\x42.tinkoff.public.invest.api.contract.v1.GetMarginAttributesResponse\x12\x8a\x01\n\rGetUserTariff\x12;.tinkoff.public.invest.api.contract.v1.GetUserTariffRequest\x1a<.tinkoff.public.invest.api.contract.v1.GetUserTariffResponse\x12x\n\x07GetInfo\x12\x35.tinkoff.public.invest.api.contract.v1.GetInfoRequest\x1a\x36.tinkoff.public.invest.api.contract.v1.GetInfoResponse\x12\x90\x01\n\x0fGetBankAccounts\x12=.tinkoff.public.invest.api.contract.v1.GetBankAccountsRequest\x1a>.tinkoff.public.invest.api.contract.v1.GetBankAccountsResponse\x12\x93\x01\n\x10\x43urrencyTransfer\x12>.tinkoff.public.invest.api.contract.v1.CurrencyTransferRequest\x1a?.tinkoff.public.invest.api.contract.v1.CurrencyTransferResponseBa\n\x1cru.tinkoff.piapi.contract.v1P\x01Z\x0c./;investapi\xa2\x02\x05TIAPI\xaa\x02\x14Tinkoff.InvestApi.V1\xca\x02\x11Tinkoff\\Invest\\V1b\x06proto3"
|
|
13
|
+
|
|
14
|
+
pool = ::Google::Protobuf::DescriptorPool.generated_pool
|
|
15
|
+
pool.add_serialized_file(descriptor_data)
|
|
16
|
+
|
|
17
|
+
module Tinkoff
|
|
18
|
+
module Public
|
|
19
|
+
module Invest
|
|
20
|
+
module Api
|
|
21
|
+
module Contract
|
|
22
|
+
module V1
|
|
23
|
+
GetAccountsRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("tinkoff.public.invest.api.contract.v1.GetAccountsRequest").msgclass
|
|
24
|
+
GetAccountsResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("tinkoff.public.invest.api.contract.v1.GetAccountsResponse").msgclass
|
|
25
|
+
Account = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("tinkoff.public.invest.api.contract.v1.Account").msgclass
|
|
26
|
+
GetMarginAttributesRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("tinkoff.public.invest.api.contract.v1.GetMarginAttributesRequest").msgclass
|
|
27
|
+
GetMarginAttributesResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("tinkoff.public.invest.api.contract.v1.GetMarginAttributesResponse").msgclass
|
|
28
|
+
GetUserTariffRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("tinkoff.public.invest.api.contract.v1.GetUserTariffRequest").msgclass
|
|
29
|
+
GetUserTariffResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("tinkoff.public.invest.api.contract.v1.GetUserTariffResponse").msgclass
|
|
30
|
+
UnaryLimit = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("tinkoff.public.invest.api.contract.v1.UnaryLimit").msgclass
|
|
31
|
+
StreamLimit = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("tinkoff.public.invest.api.contract.v1.StreamLimit").msgclass
|
|
32
|
+
GetInfoRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("tinkoff.public.invest.api.contract.v1.GetInfoRequest").msgclass
|
|
33
|
+
GetInfoResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("tinkoff.public.invest.api.contract.v1.GetInfoResponse").msgclass
|
|
34
|
+
GetBankAccountsRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("tinkoff.public.invest.api.contract.v1.GetBankAccountsRequest").msgclass
|
|
35
|
+
GetBankAccountsResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("tinkoff.public.invest.api.contract.v1.GetBankAccountsResponse").msgclass
|
|
36
|
+
BankAccount = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("tinkoff.public.invest.api.contract.v1.BankAccount").msgclass
|
|
37
|
+
CurrencyTransferRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("tinkoff.public.invest.api.contract.v1.CurrencyTransferRequest").msgclass
|
|
38
|
+
CurrencyTransferResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("tinkoff.public.invest.api.contract.v1.CurrencyTransferResponse").msgclass
|
|
39
|
+
AccountType = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("tinkoff.public.invest.api.contract.v1.AccountType").enummodule
|
|
40
|
+
AccountStatus = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("tinkoff.public.invest.api.contract.v1.AccountStatus").enummodule
|
|
41
|
+
AccessLevel = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("tinkoff.public.invest.api.contract.v1.AccessLevel").enummodule
|
|
42
|
+
end
|
|
43
|
+
end
|
|
44
|
+
end
|
|
45
|
+
end
|
|
46
|
+
end
|
|
47
|
+
end
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
# Generated by the protocol buffer compiler. DO NOT EDIT!
|
|
2
|
+
# Source: users.proto for package 'tinkoff.public.invest.api.contract.v1'
|
|
3
|
+
|
|
4
|
+
require 'grpc'
|
|
5
|
+
require 'users_pb'
|
|
6
|
+
|
|
7
|
+
module Tinkoff
|
|
8
|
+
module Public
|
|
9
|
+
module Invest
|
|
10
|
+
module Api
|
|
11
|
+
module Contract
|
|
12
|
+
module V1
|
|
13
|
+
module UsersService
|
|
14
|
+
class Service
|
|
15
|
+
|
|
16
|
+
include ::GRPC::GenericService
|
|
17
|
+
|
|
18
|
+
self.marshal_class_method = :encode
|
|
19
|
+
self.unmarshal_class_method = :decode
|
|
20
|
+
self.service_name = 'tinkoff.public.invest.api.contract.v1.UsersService'
|
|
21
|
+
|
|
22
|
+
# GetAccounts — счета пользователя
|
|
23
|
+
# Получить список счетов.
|
|
24
|
+
rpc :GetAccounts, ::Tinkoff::Public::Invest::Api::Contract::V1::GetAccountsRequest, ::Tinkoff::Public::Invest::Api::Contract::V1::GetAccountsResponse
|
|
25
|
+
# GetMarginAttributes — маржинальные показатели по счeту
|
|
26
|
+
# Метод позволяет получить маржинальные показатели и ликвидность по заданному счeту.
|
|
27
|
+
rpc :GetMarginAttributes, ::Tinkoff::Public::Invest::Api::Contract::V1::GetMarginAttributesRequest, ::Tinkoff::Public::Invest::Api::Contract::V1::GetMarginAttributesResponse
|
|
28
|
+
# GetUserTariff — тариф пользователя
|
|
29
|
+
# Получить информацию о текущих лимитах на подклчение, согласно текущему тарифу пользователя.
|
|
30
|
+
rpc :GetUserTariff, ::Tinkoff::Public::Invest::Api::Contract::V1::GetUserTariffRequest, ::Tinkoff::Public::Invest::Api::Contract::V1::GetUserTariffResponse
|
|
31
|
+
# GetInfo — информация о пользователе
|
|
32
|
+
# Получить информацию о пользователе: тариф, признак квалификации, пройденные тесты и др.
|
|
33
|
+
rpc :GetInfo, ::Tinkoff::Public::Invest::Api::Contract::V1::GetInfoRequest, ::Tinkoff::Public::Invest::Api::Contract::V1::GetInfoResponse
|
|
34
|
+
# GetBankAccounts — банковские счета пользователя
|
|
35
|
+
# Получить список счетов пользователя, в том числе и банковских.
|
|
36
|
+
rpc :GetBankAccounts, ::Tinkoff::Public::Invest::Api::Contract::V1::GetBankAccountsRequest, ::Tinkoff::Public::Invest::Api::Contract::V1::GetBankAccountsResponse
|
|
37
|
+
# CurrencyTransfer — перевод денежных средств между счетами
|
|
38
|
+
# Перевести денежные средства между брокерскими счетами
|
|
39
|
+
rpc :CurrencyTransfer, ::Tinkoff::Public::Invest::Api::Contract::V1::CurrencyTransferRequest, ::Tinkoff::Public::Invest::Api::Contract::V1::CurrencyTransferResponse
|
|
40
|
+
end
|
|
41
|
+
|
|
42
|
+
Stub = Service.rpc_stub_class
|
|
43
|
+
end
|
|
44
|
+
# С помощью сервиса можно получить: <br/> 1.
|
|
45
|
+
# список счетов пользователя; <br/> 2. маржинальные показатели по счeту.
|
|
46
|
+
end
|
|
47
|
+
end
|
|
48
|
+
end
|
|
49
|
+
end
|
|
50
|
+
end
|
|
51
|
+
end
|