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.
Files changed (44) hide show
  1. checksums.yaml +4 -4
  2. data/.cursor/rules/git-flow.mdc +49 -5
  3. data/.cursor/rules/sdk-architecture.mdc +30 -0
  4. data/.cursor/rules/sdk-code-standards.mdc +22 -0
  5. data/.cursor/rules/sdk-patterns.mdc +22 -0
  6. data/.cursor/rules/sdk-testing.mdc +19 -0
  7. data/CHANGELOG.md +4 -0
  8. data/README.md +195 -4
  9. data/Rakefile +4 -0
  10. data/contracts.lock +6 -0
  11. data/lib/t/tech/investments/client.rb +70 -0
  12. data/lib/t/tech/investments/coercers.rb +171 -0
  13. data/lib/t/tech/investments/configuration.rb +74 -0
  14. data/lib/t/tech/investments/errors.rb +24 -0
  15. data/lib/t/tech/investments/proto/common_pb.rb +42 -0
  16. data/lib/t/tech/investments/proto/google/api/field_behavior_pb.rb +19 -0
  17. data/lib/t/tech/investments/proto/instruments_pb.rb +157 -0
  18. data/lib/t/tech/investments/proto/instruments_services_pb.rb +115 -0
  19. data/lib/t/tech/investments/proto/marketdata_pb.rb +99 -0
  20. data/lib/t/tech/investments/proto/marketdata_services_pb.rb +68 -0
  21. data/lib/t/tech/investments/proto/operations_pb.rb +78 -0
  22. data/lib/t/tech/investments/proto/operations_services_pb.rb +67 -0
  23. data/lib/t/tech/investments/proto/orders_pb.rb +64 -0
  24. data/lib/t/tech/investments/proto/orders_services_pb.rb +69 -0
  25. data/lib/t/tech/investments/proto/sandbox_pb.rb +37 -0
  26. data/lib/t/tech/investments/proto/sandbox_services_pb.rb +75 -0
  27. data/lib/t/tech/investments/proto/signals_pb.rb +37 -0
  28. data/lib/t/tech/investments/proto/signals_services_pb.rb +36 -0
  29. data/lib/t/tech/investments/proto/stoporders_pb.rb +45 -0
  30. data/lib/t/tech/investments/proto/stoporders_services_pb.rb +38 -0
  31. data/lib/t/tech/investments/proto/users_pb.rb +47 -0
  32. data/lib/t/tech/investments/proto/users_services_pb.rb +51 -0
  33. data/lib/t/tech/investments/proto_loader.rb +49 -0
  34. data/lib/t/tech/investments/services/market_data_facade.rb +35 -0
  35. data/lib/t/tech/investments/services/market_data_stream_session.rb +148 -0
  36. data/lib/t/tech/investments/services/registry.rb +38 -0
  37. data/lib/t/tech/investments/services/unary_adapter.rb +64 -0
  38. data/lib/t/tech/investments/services.rb +6 -0
  39. data/lib/t/tech/investments/transport.rb +137 -0
  40. data/lib/t/tech/investments/version.rb +1 -1
  41. data/lib/t/tech/investments.rb +30 -1
  42. data/script/regenerate_proto +119 -0
  43. data/sig/t/tech/investments.rbs +114 -1
  44. 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