proto

package
v0.0.0-...-6e892aa Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Apr 25, 2025 License: MIT Imports: 11 Imported by: 0

Documentation

Index

Constants

View Source
const (
	OrderBookService_CreateOrderBook_FullMethodName   = "/matchingo.api.OrderBookService/CreateOrderBook"
	OrderBookService_GetOrderBook_FullMethodName      = "/matchingo.api.OrderBookService/GetOrderBook"
	OrderBookService_ListOrderBooks_FullMethodName    = "/matchingo.api.OrderBookService/ListOrderBooks"
	OrderBookService_DeleteOrderBook_FullMethodName   = "/matchingo.api.OrderBookService/DeleteOrderBook"
	OrderBookService_CreateOrder_FullMethodName       = "/matchingo.api.OrderBookService/CreateOrder"
	OrderBookService_GetOrder_FullMethodName          = "/matchingo.api.OrderBookService/GetOrder"
	OrderBookService_CancelOrder_FullMethodName       = "/matchingo.api.OrderBookService/CancelOrder"
	OrderBookService_GetOrderBookState_FullMethodName = "/matchingo.api.OrderBookService/GetOrderBookState"
)

Variables

View Source
var (
	BackendType_name = map[int32]string{
		0: "MEMORY",
		1: "REDIS",
	}
	BackendType_value = map[string]int32{
		"MEMORY": 0,
		"REDIS":  1,
	}
)

Enum value maps for BackendType.

View Source
var (
	OrderType_name = map[int32]string{
		0: "LIMIT",
		1: "MARKET",
		2: "STOP",
		3: "STOP_LIMIT",
	}
	OrderType_value = map[string]int32{
		"LIMIT":      0,
		"MARKET":     1,
		"STOP":       2,
		"STOP_LIMIT": 3,
	}
)

Enum value maps for OrderType.

View Source
var (
	OrderSide_name = map[int32]string{
		0: "BUY",
		1: "SELL",
	}
	OrderSide_value = map[string]int32{
		"BUY":  0,
		"SELL": 1,
	}
)

Enum value maps for OrderSide.

View Source
var (
	TimeInForce_name = map[int32]string{
		0: "GTC",
		1: "IOC",
		2: "FOK",
	}
	TimeInForce_value = map[string]int32{
		"GTC": 0,
		"IOC": 1,
		"FOK": 2,
	}
)

Enum value maps for TimeInForce.

View Source
var (
	OrderStatus_name = map[int32]string{
		0: "PENDING",
		1: "OPEN",
		2: "FILLED",
		3: "PARTIALLY_FILLED",
		4: "CANCELED",
		5: "REJECTED",
	}
	OrderStatus_value = map[string]int32{
		"PENDING":          0,
		"OPEN":             1,
		"FILLED":           2,
		"PARTIALLY_FILLED": 3,
		"CANCELED":         4,
		"REJECTED":         5,
	}
)

Enum value maps for OrderStatus.

View Source
var File_pkg_api_proto_orderbook_proto protoreflect.FileDescriptor
View Source
var OrderBookService_ServiceDesc = grpc.ServiceDesc{
	ServiceName: "matchingo.api.OrderBookService",
	HandlerType: (*OrderBookServiceServer)(nil),
	Methods: []grpc.MethodDesc{
		{
			MethodName: "CreateOrderBook",
			Handler:    _OrderBookService_CreateOrderBook_Handler,
		},
		{
			MethodName: "GetOrderBook",
			Handler:    _OrderBookService_GetOrderBook_Handler,
		},
		{
			MethodName: "ListOrderBooks",
			Handler:    _OrderBookService_ListOrderBooks_Handler,
		},
		{
			MethodName: "DeleteOrderBook",
			Handler:    _OrderBookService_DeleteOrderBook_Handler,
		},
		{
			MethodName: "CreateOrder",
			Handler:    _OrderBookService_CreateOrder_Handler,
		},
		{
			MethodName: "GetOrder",
			Handler:    _OrderBookService_GetOrder_Handler,
		},
		{
			MethodName: "CancelOrder",
			Handler:    _OrderBookService_CancelOrder_Handler,
		},
		{
			MethodName: "GetOrderBookState",
			Handler:    _OrderBookService_GetOrderBookState_Handler,
		},
	},
	Streams:  []grpc.StreamDesc{},
	Metadata: "pkg/api/proto/orderbook.proto",
}

OrderBookService_ServiceDesc is the grpc.ServiceDesc for OrderBookService service. It's only intended for direct use with grpc.RegisterService, and not to be introspected or modified (even as a copy)

Functions

func RegisterOrderBookServiceServer

func RegisterOrderBookServiceServer(s grpc.ServiceRegistrar, srv OrderBookServiceServer)

Types

type BackendType

type BackendType int32

Type of backend storage for the order book

const (
	BackendType_MEMORY BackendType = 0
	BackendType_REDIS  BackendType = 1
)

func (BackendType) Descriptor

func (BackendType) Enum

func (x BackendType) Enum() *BackendType

func (BackendType) EnumDescriptor deprecated

func (BackendType) EnumDescriptor() ([]byte, []int)

Deprecated: Use BackendType.Descriptor instead.

func (BackendType) Number

func (x BackendType) Number() protoreflect.EnumNumber

func (BackendType) String

func (x BackendType) String() string

func (BackendType) Type

type CancelOrderRequest

type CancelOrderRequest struct {
	OrderBookName string `protobuf:"bytes,1,opt,name=order_book_name,json=orderBookName,proto3" json:"order_book_name,omitempty"`
	OrderId       string `protobuf:"bytes,2,opt,name=order_id,json=orderId,proto3" json:"order_id,omitempty"`
	// contains filtered or unexported fields
}

Request to cancel an order

func (*CancelOrderRequest) Descriptor deprecated

func (*CancelOrderRequest) Descriptor() ([]byte, []int)

Deprecated: Use CancelOrderRequest.ProtoReflect.Descriptor instead.

func (*CancelOrderRequest) GetOrderBookName

func (x *CancelOrderRequest) GetOrderBookName() string

func (*CancelOrderRequest) GetOrderId

func (x *CancelOrderRequest) GetOrderId() string

func (*CancelOrderRequest) ProtoMessage

func (*CancelOrderRequest) ProtoMessage()

func (*CancelOrderRequest) ProtoReflect

func (x *CancelOrderRequest) ProtoReflect() protoreflect.Message

func (*CancelOrderRequest) Reset

func (x *CancelOrderRequest) Reset()

func (*CancelOrderRequest) String

func (x *CancelOrderRequest) String() string

type CreateOrderBookRequest

type CreateOrderBookRequest struct {
	Name        string      `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	BackendType BackendType `` /* 126-byte string literal not displayed */
	// Backend-specific options, such as Redis connection details
	Options map[string]string `` /* 141-byte string literal not displayed */
	// contains filtered or unexported fields
}

Request to create a new order book

func (*CreateOrderBookRequest) Descriptor deprecated

func (*CreateOrderBookRequest) Descriptor() ([]byte, []int)

Deprecated: Use CreateOrderBookRequest.ProtoReflect.Descriptor instead.

func (*CreateOrderBookRequest) GetBackendType

func (x *CreateOrderBookRequest) GetBackendType() BackendType

func (*CreateOrderBookRequest) GetName

func (x *CreateOrderBookRequest) GetName() string

func (*CreateOrderBookRequest) GetOptions

func (x *CreateOrderBookRequest) GetOptions() map[string]string

func (*CreateOrderBookRequest) ProtoMessage

func (*CreateOrderBookRequest) ProtoMessage()

func (*CreateOrderBookRequest) ProtoReflect

func (x *CreateOrderBookRequest) ProtoReflect() protoreflect.Message

func (*CreateOrderBookRequest) Reset

func (x *CreateOrderBookRequest) Reset()

func (*CreateOrderBookRequest) String

func (x *CreateOrderBookRequest) String() string

type CreateOrderRequest

type CreateOrderRequest struct {
	OrderBookName string      `protobuf:"bytes,1,opt,name=order_book_name,json=orderBookName,proto3" json:"order_book_name,omitempty"`
	OrderId       string      `protobuf:"bytes,2,opt,name=order_id,json=orderId,proto3" json:"order_id,omitempty"`
	Side          OrderSide   `protobuf:"varint,3,opt,name=side,proto3,enum=matchingo.api.OrderSide" json:"side,omitempty"`
	Quantity      string      `protobuf:"bytes,4,opt,name=quantity,proto3" json:"quantity,omitempty"`
	Price         string      `protobuf:"bytes,5,opt,name=price,proto3" json:"price,omitempty"`
	OrderType     OrderType   `protobuf:"varint,6,opt,name=order_type,json=orderType,proto3,enum=matchingo.api.OrderType" json:"order_type,omitempty"`
	TimeInForce   TimeInForce ``                                                                                                /* 128-byte string literal not displayed */
	StopPrice     string      `protobuf:"bytes,8,opt,name=stop_price,json=stopPrice,proto3" json:"stop_price,omitempty"`        // Only for stop orders
	OcoId         string      `protobuf:"bytes,9,opt,name=oco_id,json=ocoId,proto3" json:"oco_id,omitempty"`                    // Only for OCO orders
	UserAddress   string      `protobuf:"bytes,10,opt,name=user_address,json=userAddress,proto3" json:"user_address,omitempty"` // User's wallet address
	// contains filtered or unexported fields
}

Request to create a new order

func (*CreateOrderRequest) Descriptor deprecated

func (*CreateOrderRequest) Descriptor() ([]byte, []int)

Deprecated: Use CreateOrderRequest.ProtoReflect.Descriptor instead.

func (*CreateOrderRequest) GetOcoId

func (x *CreateOrderRequest) GetOcoId() string

func (*CreateOrderRequest) GetOrderBookName

func (x *CreateOrderRequest) GetOrderBookName() string

func (*CreateOrderRequest) GetOrderId

func (x *CreateOrderRequest) GetOrderId() string

func (*CreateOrderRequest) GetOrderType

func (x *CreateOrderRequest) GetOrderType() OrderType

func (*CreateOrderRequest) GetPrice

func (x *CreateOrderRequest) GetPrice() string

func (*CreateOrderRequest) GetQuantity

func (x *CreateOrderRequest) GetQuantity() string

func (*CreateOrderRequest) GetSide

func (x *CreateOrderRequest) GetSide() OrderSide

func (*CreateOrderRequest) GetStopPrice

func (x *CreateOrderRequest) GetStopPrice() string

func (*CreateOrderRequest) GetTimeInForce

func (x *CreateOrderRequest) GetTimeInForce() TimeInForce

func (*CreateOrderRequest) GetUserAddress

func (x *CreateOrderRequest) GetUserAddress() string

func (*CreateOrderRequest) ProtoMessage

func (*CreateOrderRequest) ProtoMessage()

func (*CreateOrderRequest) ProtoReflect

func (x *CreateOrderRequest) ProtoReflect() protoreflect.Message

func (*CreateOrderRequest) Reset

func (x *CreateOrderRequest) Reset()

func (*CreateOrderRequest) String

func (x *CreateOrderRequest) String() string

type DeleteOrderBookRequest

type DeleteOrderBookRequest struct {
	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	// contains filtered or unexported fields
}

Request to delete an order book

func (*DeleteOrderBookRequest) Descriptor deprecated

func (*DeleteOrderBookRequest) Descriptor() ([]byte, []int)

Deprecated: Use DeleteOrderBookRequest.ProtoReflect.Descriptor instead.

func (*DeleteOrderBookRequest) GetName

func (x *DeleteOrderBookRequest) GetName() string

func (*DeleteOrderBookRequest) ProtoMessage

func (*DeleteOrderBookRequest) ProtoMessage()

func (*DeleteOrderBookRequest) ProtoReflect

func (x *DeleteOrderBookRequest) ProtoReflect() protoreflect.Message

func (*DeleteOrderBookRequest) Reset

func (x *DeleteOrderBookRequest) Reset()

func (*DeleteOrderBookRequest) String

func (x *DeleteOrderBookRequest) String() string

type DoneMessage

type DoneMessage struct {
	OrderId           string   `protobuf:"bytes,1,opt,name=order_id,json=orderId,proto3" json:"order_id,omitempty"`
	ExecutedQuantity  string   `protobuf:"bytes,2,opt,name=executed_quantity,json=executedQuantity,proto3" json:"executed_quantity,omitempty"`
	RemainingQuantity string   `protobuf:"bytes,3,opt,name=remaining_quantity,json=remainingQuantity,proto3" json:"remaining_quantity,omitempty"`
	Trades            []*Trade `protobuf:"bytes,4,rep,name=trades,proto3" json:"trades,omitempty"`
	Canceled          []string `protobuf:"bytes,5,rep,name=canceled,proto3" json:"canceled,omitempty"`
	Activated         []string `protobuf:"bytes,6,rep,name=activated,proto3" json:"activated,omitempty"`
	Stored            bool     `protobuf:"varint,7,opt,name=stored,proto3" json:"stored,omitempty"`
	Quantity          string   `protobuf:"bytes,8,opt,name=quantity,proto3" json:"quantity,omitempty"`
	Processed         string   `protobuf:"bytes,9,opt,name=processed,proto3" json:"processed,omitempty"`
	Left              string   `protobuf:"bytes,10,opt,name=left,proto3" json:"left,omitempty"`
	UserAddress       string   `protobuf:"bytes,11,opt,name=user_address,json=userAddress,proto3" json:"user_address,omitempty"` // User's wallet address
	// contains filtered or unexported fields
}

DoneMessage represents the message structure for the Done object to be sent to the message queue

func (*DoneMessage) Descriptor deprecated

func (*DoneMessage) Descriptor() ([]byte, []int)

Deprecated: Use DoneMessage.ProtoReflect.Descriptor instead.

func (*DoneMessage) GetActivated

func (x *DoneMessage) GetActivated() []string

func (*DoneMessage) GetCanceled

func (x *DoneMessage) GetCanceled() []string

func (*DoneMessage) GetExecutedQuantity

func (x *DoneMessage) GetExecutedQuantity() string

func (*DoneMessage) GetLeft

func (x *DoneMessage) GetLeft() string

func (*DoneMessage) GetOrderId

func (x *DoneMessage) GetOrderId() string

func (*DoneMessage) GetProcessed

func (x *DoneMessage) GetProcessed() string

func (*DoneMessage) GetQuantity

func (x *DoneMessage) GetQuantity() string

func (*DoneMessage) GetRemainingQuantity

func (x *DoneMessage) GetRemainingQuantity() string

func (*DoneMessage) GetStored

func (x *DoneMessage) GetStored() bool

func (*DoneMessage) GetTrades

func (x *DoneMessage) GetTrades() []*Trade

func (*DoneMessage) GetUserAddress

func (x *DoneMessage) GetUserAddress() string

func (*DoneMessage) ProtoMessage

func (*DoneMessage) ProtoMessage()

func (*DoneMessage) ProtoReflect

func (x *DoneMessage) ProtoReflect() protoreflect.Message

func (*DoneMessage) Reset

func (x *DoneMessage) Reset()

func (*DoneMessage) String

func (x *DoneMessage) String() string

type Fill

type Fill struct {
	Price     string                 `protobuf:"bytes,1,opt,name=price,proto3" json:"price,omitempty"`
	Quantity  string                 `protobuf:"bytes,2,opt,name=quantity,proto3" json:"quantity,omitempty"`
	Timestamp *timestamppb.Timestamp `protobuf:"bytes,3,opt,name=timestamp,proto3" json:"timestamp,omitempty"`
	// contains filtered or unexported fields
}

Represents a fill (trade) that has occurred

func (*Fill) Descriptor deprecated

func (*Fill) Descriptor() ([]byte, []int)

Deprecated: Use Fill.ProtoReflect.Descriptor instead.

func (*Fill) GetPrice

func (x *Fill) GetPrice() string

func (*Fill) GetQuantity

func (x *Fill) GetQuantity() string

func (*Fill) GetTimestamp

func (x *Fill) GetTimestamp() *timestamppb.Timestamp

func (*Fill) ProtoMessage

func (*Fill) ProtoMessage()

func (*Fill) ProtoReflect

func (x *Fill) ProtoReflect() protoreflect.Message

func (*Fill) Reset

func (x *Fill) Reset()

func (*Fill) String

func (x *Fill) String() string

type GetOrderBookRequest

type GetOrderBookRequest struct {
	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	// contains filtered or unexported fields
}

Request to retrieve an order book

func (*GetOrderBookRequest) Descriptor deprecated

func (*GetOrderBookRequest) Descriptor() ([]byte, []int)

Deprecated: Use GetOrderBookRequest.ProtoReflect.Descriptor instead.

func (*GetOrderBookRequest) GetName

func (x *GetOrderBookRequest) GetName() string

func (*GetOrderBookRequest) ProtoMessage

func (*GetOrderBookRequest) ProtoMessage()

func (*GetOrderBookRequest) ProtoReflect

func (x *GetOrderBookRequest) ProtoReflect() protoreflect.Message

func (*GetOrderBookRequest) Reset

func (x *GetOrderBookRequest) Reset()

func (*GetOrderBookRequest) String

func (x *GetOrderBookRequest) String() string

type GetOrderBookStateRequest

type GetOrderBookStateRequest struct {
	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	// Optional number of price levels to retrieve
	Depth int32 `protobuf:"varint,2,opt,name=depth,proto3" json:"depth,omitempty"`
	// contains filtered or unexported fields
}

Request to get the current state of an order book

func (*GetOrderBookStateRequest) Descriptor deprecated

func (*GetOrderBookStateRequest) Descriptor() ([]byte, []int)

Deprecated: Use GetOrderBookStateRequest.ProtoReflect.Descriptor instead.

func (*GetOrderBookStateRequest) GetDepth

func (x *GetOrderBookStateRequest) GetDepth() int32

func (*GetOrderBookStateRequest) GetName

func (x *GetOrderBookStateRequest) GetName() string

func (*GetOrderBookStateRequest) ProtoMessage

func (*GetOrderBookStateRequest) ProtoMessage()

func (*GetOrderBookStateRequest) ProtoReflect

func (x *GetOrderBookStateRequest) ProtoReflect() protoreflect.Message

func (*GetOrderBookStateRequest) Reset

func (x *GetOrderBookStateRequest) Reset()

func (*GetOrderBookStateRequest) String

func (x *GetOrderBookStateRequest) String() string

type GetOrderRequest

type GetOrderRequest struct {
	OrderBookName string `protobuf:"bytes,1,opt,name=order_book_name,json=orderBookName,proto3" json:"order_book_name,omitempty"`
	OrderId       string `protobuf:"bytes,2,opt,name=order_id,json=orderId,proto3" json:"order_id,omitempty"`
	// contains filtered or unexported fields
}

Request to retrieve an order

func (*GetOrderRequest) Descriptor deprecated

func (*GetOrderRequest) Descriptor() ([]byte, []int)

Deprecated: Use GetOrderRequest.ProtoReflect.Descriptor instead.

func (*GetOrderRequest) GetOrderBookName

func (x *GetOrderRequest) GetOrderBookName() string

func (*GetOrderRequest) GetOrderId

func (x *GetOrderRequest) GetOrderId() string

func (*GetOrderRequest) ProtoMessage

func (*GetOrderRequest) ProtoMessage()

func (*GetOrderRequest) ProtoReflect

func (x *GetOrderRequest) ProtoReflect() protoreflect.Message

func (*GetOrderRequest) Reset

func (x *GetOrderRequest) Reset()

func (*GetOrderRequest) String

func (x *GetOrderRequest) String() string

type ListOrderBooksRequest

type ListOrderBooksRequest struct {

	// For pagination, the maximum number of items to return
	Limit int32 `protobuf:"varint,1,opt,name=limit,proto3" json:"limit,omitempty"`
	// For pagination, the offset from which to start returning items
	Offset int32 `protobuf:"varint,2,opt,name=offset,proto3" json:"offset,omitempty"`
	// contains filtered or unexported fields
}

Request to list all order books

func (*ListOrderBooksRequest) Descriptor deprecated

func (*ListOrderBooksRequest) Descriptor() ([]byte, []int)

Deprecated: Use ListOrderBooksRequest.ProtoReflect.Descriptor instead.

func (*ListOrderBooksRequest) GetLimit

func (x *ListOrderBooksRequest) GetLimit() int32

func (*ListOrderBooksRequest) GetOffset

func (x *ListOrderBooksRequest) GetOffset() int32

func (*ListOrderBooksRequest) ProtoMessage

func (*ListOrderBooksRequest) ProtoMessage()

func (*ListOrderBooksRequest) ProtoReflect

func (x *ListOrderBooksRequest) ProtoReflect() protoreflect.Message

func (*ListOrderBooksRequest) Reset

func (x *ListOrderBooksRequest) Reset()

func (*ListOrderBooksRequest) String

func (x *ListOrderBooksRequest) String() string

type ListOrderBooksResponse

type ListOrderBooksResponse struct {
	OrderBooks []*OrderBookResponse `protobuf:"bytes,1,rep,name=order_books,json=orderBooks,proto3" json:"order_books,omitempty"`
	Total      int32                `protobuf:"varint,2,opt,name=total,proto3" json:"total,omitempty"`
	// contains filtered or unexported fields
}

Response containing a list of order books

func (*ListOrderBooksResponse) Descriptor deprecated

func (*ListOrderBooksResponse) Descriptor() ([]byte, []int)

Deprecated: Use ListOrderBooksResponse.ProtoReflect.Descriptor instead.

func (*ListOrderBooksResponse) GetOrderBooks

func (x *ListOrderBooksResponse) GetOrderBooks() []*OrderBookResponse

func (*ListOrderBooksResponse) GetTotal

func (x *ListOrderBooksResponse) GetTotal() int32

func (*ListOrderBooksResponse) ProtoMessage

func (*ListOrderBooksResponse) ProtoMessage()

func (*ListOrderBooksResponse) ProtoReflect

func (x *ListOrderBooksResponse) ProtoReflect() protoreflect.Message

func (*ListOrderBooksResponse) Reset

func (x *ListOrderBooksResponse) Reset()

func (*ListOrderBooksResponse) String

func (x *ListOrderBooksResponse) String() string

type OrderBookResponse

type OrderBookResponse struct {
	Name        string                 `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	BackendType BackendType            `` /* 126-byte string literal not displayed */
	CreatedAt   *timestamppb.Timestamp `protobuf:"bytes,3,opt,name=created_at,json=createdAt,proto3" json:"created_at,omitempty"`
	OrderCount  uint64                 `protobuf:"varint,4,opt,name=order_count,json=orderCount,proto3" json:"order_count,omitempty"`
	// contains filtered or unexported fields
}

Response containing order book information

func (*OrderBookResponse) Descriptor deprecated

func (*OrderBookResponse) Descriptor() ([]byte, []int)

Deprecated: Use OrderBookResponse.ProtoReflect.Descriptor instead.

func (*OrderBookResponse) GetBackendType

func (x *OrderBookResponse) GetBackendType() BackendType

func (*OrderBookResponse) GetCreatedAt

func (x *OrderBookResponse) GetCreatedAt() *timestamppb.Timestamp

func (*OrderBookResponse) GetName

func (x *OrderBookResponse) GetName() string

func (*OrderBookResponse) GetOrderCount

func (x *OrderBookResponse) GetOrderCount() uint64

func (*OrderBookResponse) ProtoMessage

func (*OrderBookResponse) ProtoMessage()

func (*OrderBookResponse) ProtoReflect

func (x *OrderBookResponse) ProtoReflect() protoreflect.Message

func (*OrderBookResponse) Reset

func (x *OrderBookResponse) Reset()

func (*OrderBookResponse) String

func (x *OrderBookResponse) String() string

type OrderBookServiceClient

type OrderBookServiceClient interface {
	// CreateOrderBook creates a new order book with the given name
	CreateOrderBook(ctx context.Context, in *CreateOrderBookRequest, opts ...grpc.CallOption) (*OrderBookResponse, error)
	// GetOrderBook retrieves information about an order book
	GetOrderBook(ctx context.Context, in *GetOrderBookRequest, opts ...grpc.CallOption) (*OrderBookResponse, error)
	// ListOrderBooks lists all available order books
	ListOrderBooks(ctx context.Context, in *ListOrderBooksRequest, opts ...grpc.CallOption) (*ListOrderBooksResponse, error)
	// DeleteOrderBook deletes an order book
	DeleteOrderBook(ctx context.Context, in *DeleteOrderBookRequest, opts ...grpc.CallOption) (*emptypb.Empty, error)
	// CreateOrder submits a new order to the specified order book
	CreateOrder(ctx context.Context, in *CreateOrderRequest, opts ...grpc.CallOption) (*OrderResponse, error)
	// GetOrder retrieves an order by ID
	GetOrder(ctx context.Context, in *GetOrderRequest, opts ...grpc.CallOption) (*OrderResponse, error)
	// CancelOrder cancels an existing order
	CancelOrder(ctx context.Context, in *CancelOrderRequest, opts ...grpc.CallOption) (*emptypb.Empty, error)
	// GetOrderBookState retrieves the current state of an order book
	GetOrderBookState(ctx context.Context, in *GetOrderBookStateRequest, opts ...grpc.CallOption) (*OrderBookStateResponse, error)
}

OrderBookServiceClient is the client API for OrderBookService service.

For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream.

OrderBookService provides all operations for managing multiple order books

type OrderBookServiceServer

type OrderBookServiceServer interface {
	// CreateOrderBook creates a new order book with the given name
	CreateOrderBook(context.Context, *CreateOrderBookRequest) (*OrderBookResponse, error)
	// GetOrderBook retrieves information about an order book
	GetOrderBook(context.Context, *GetOrderBookRequest) (*OrderBookResponse, error)
	// ListOrderBooks lists all available order books
	ListOrderBooks(context.Context, *ListOrderBooksRequest) (*ListOrderBooksResponse, error)
	// DeleteOrderBook deletes an order book
	DeleteOrderBook(context.Context, *DeleteOrderBookRequest) (*emptypb.Empty, error)
	// CreateOrder submits a new order to the specified order book
	CreateOrder(context.Context, *CreateOrderRequest) (*OrderResponse, error)
	// GetOrder retrieves an order by ID
	GetOrder(context.Context, *GetOrderRequest) (*OrderResponse, error)
	// CancelOrder cancels an existing order
	CancelOrder(context.Context, *CancelOrderRequest) (*emptypb.Empty, error)
	// GetOrderBookState retrieves the current state of an order book
	GetOrderBookState(context.Context, *GetOrderBookStateRequest) (*OrderBookStateResponse, error)
	// contains filtered or unexported methods
}

OrderBookServiceServer is the server API for OrderBookService service. All implementations must embed UnimplementedOrderBookServiceServer for forward compatibility.

OrderBookService provides all operations for managing multiple order books

type OrderBookStateResponse

type OrderBookStateResponse struct {
	Name      string                 `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	Bids      []*PriceLevel          `protobuf:"bytes,2,rep,name=bids,proto3" json:"bids,omitempty"`
	Asks      []*PriceLevel          `protobuf:"bytes,3,rep,name=asks,proto3" json:"asks,omitempty"`
	Timestamp *timestamppb.Timestamp `protobuf:"bytes,4,opt,name=timestamp,proto3" json:"timestamp,omitempty"`
	// contains filtered or unexported fields
}

Response containing order book state

func (*OrderBookStateResponse) Descriptor deprecated

func (*OrderBookStateResponse) Descriptor() ([]byte, []int)

Deprecated: Use OrderBookStateResponse.ProtoReflect.Descriptor instead.

func (*OrderBookStateResponse) GetAsks

func (x *OrderBookStateResponse) GetAsks() []*PriceLevel

func (*OrderBookStateResponse) GetBids

func (x *OrderBookStateResponse) GetBids() []*PriceLevel

func (*OrderBookStateResponse) GetName

func (x *OrderBookStateResponse) GetName() string

func (*OrderBookStateResponse) GetTimestamp

func (x *OrderBookStateResponse) GetTimestamp() *timestamppb.Timestamp

func (*OrderBookStateResponse) ProtoMessage

func (*OrderBookStateResponse) ProtoMessage()

func (*OrderBookStateResponse) ProtoReflect

func (x *OrderBookStateResponse) ProtoReflect() protoreflect.Message

func (*OrderBookStateResponse) Reset

func (x *OrderBookStateResponse) Reset()

func (*OrderBookStateResponse) String

func (x *OrderBookStateResponse) String() string

type OrderResponse

type OrderResponse struct {
	OrderId           string                 `protobuf:"bytes,1,opt,name=order_id,json=orderId,proto3" json:"order_id,omitempty"`
	OrderBookName     string                 `protobuf:"bytes,2,opt,name=order_book_name,json=orderBookName,proto3" json:"order_book_name,omitempty"`
	Side              OrderSide              `protobuf:"varint,3,opt,name=side,proto3,enum=matchingo.api.OrderSide" json:"side,omitempty"`
	Quantity          string                 `protobuf:"bytes,4,opt,name=quantity,proto3" json:"quantity,omitempty"`
	Price             string                 `protobuf:"bytes,5,opt,name=price,proto3" json:"price,omitempty"`
	OrderType         OrderType              `protobuf:"varint,6,opt,name=order_type,json=orderType,proto3,enum=matchingo.api.OrderType" json:"order_type,omitempty"`
	TimeInForce       TimeInForce            `` /* 128-byte string literal not displayed */
	StopPrice         string                 `protobuf:"bytes,8,opt,name=stop_price,json=stopPrice,proto3" json:"stop_price,omitempty"`
	Status            OrderStatus            `protobuf:"varint,9,opt,name=status,proto3,enum=matchingo.api.OrderStatus" json:"status,omitempty"`
	FilledQuantity    string                 `protobuf:"bytes,10,opt,name=filled_quantity,json=filledQuantity,proto3" json:"filled_quantity,omitempty"`
	RemainingQuantity string                 `protobuf:"bytes,11,opt,name=remaining_quantity,json=remainingQuantity,proto3" json:"remaining_quantity,omitempty"`
	CreatedAt         *timestamppb.Timestamp `protobuf:"bytes,12,opt,name=created_at,json=createdAt,proto3" json:"created_at,omitempty"`
	UpdatedAt         *timestamppb.Timestamp `protobuf:"bytes,13,opt,name=updated_at,json=updatedAt,proto3" json:"updated_at,omitempty"`
	Fills             []*Fill                `protobuf:"bytes,14,rep,name=fills,proto3" json:"fills,omitempty"`
	OcoId             string                 `protobuf:"bytes,15,opt,name=oco_id,json=ocoId,proto3" json:"oco_id,omitempty"`
	UserAddress       string                 `protobuf:"bytes,16,opt,name=user_address,json=userAddress,proto3" json:"user_address,omitempty"` // User's wallet address
	// contains filtered or unexported fields
}

Response containing order information

func (*OrderResponse) Descriptor deprecated

func (*OrderResponse) Descriptor() ([]byte, []int)

Deprecated: Use OrderResponse.ProtoReflect.Descriptor instead.

func (*OrderResponse) GetCreatedAt

func (x *OrderResponse) GetCreatedAt() *timestamppb.Timestamp

func (*OrderResponse) GetFilledQuantity

func (x *OrderResponse) GetFilledQuantity() string

func (*OrderResponse) GetFills

func (x *OrderResponse) GetFills() []*Fill

func (*OrderResponse) GetOcoId

func (x *OrderResponse) GetOcoId() string

func (*OrderResponse) GetOrderBookName

func (x *OrderResponse) GetOrderBookName() string

func (*OrderResponse) GetOrderId

func (x *OrderResponse) GetOrderId() string

func (*OrderResponse) GetOrderType

func (x *OrderResponse) GetOrderType() OrderType

func (*OrderResponse) GetPrice

func (x *OrderResponse) GetPrice() string

func (*OrderResponse) GetQuantity

func (x *OrderResponse) GetQuantity() string

func (*OrderResponse) GetRemainingQuantity

func (x *OrderResponse) GetRemainingQuantity() string

func (*OrderResponse) GetSide

func (x *OrderResponse) GetSide() OrderSide

func (*OrderResponse) GetStatus

func (x *OrderResponse) GetStatus() OrderStatus

func (*OrderResponse) GetStopPrice

func (x *OrderResponse) GetStopPrice() string

func (*OrderResponse) GetTimeInForce

func (x *OrderResponse) GetTimeInForce() TimeInForce

func (*OrderResponse) GetUpdatedAt

func (x *OrderResponse) GetUpdatedAt() *timestamppb.Timestamp

func (*OrderResponse) GetUserAddress

func (x *OrderResponse) GetUserAddress() string

func (*OrderResponse) ProtoMessage

func (*OrderResponse) ProtoMessage()

func (*OrderResponse) ProtoReflect

func (x *OrderResponse) ProtoReflect() protoreflect.Message

func (*OrderResponse) Reset

func (x *OrderResponse) Reset()

func (*OrderResponse) String

func (x *OrderResponse) String() string

type OrderSide

type OrderSide int32

Order side: buy or sell

const (
	OrderSide_BUY  OrderSide = 0
	OrderSide_SELL OrderSide = 1
)

func (OrderSide) Descriptor

func (OrderSide) Descriptor() protoreflect.EnumDescriptor

func (OrderSide) Enum

func (x OrderSide) Enum() *OrderSide

func (OrderSide) EnumDescriptor deprecated

func (OrderSide) EnumDescriptor() ([]byte, []int)

Deprecated: Use OrderSide.Descriptor instead.

func (OrderSide) Number

func (x OrderSide) Number() protoreflect.EnumNumber

func (OrderSide) String

func (x OrderSide) String() string

func (OrderSide) Type

type OrderStatus

type OrderStatus int32

Status of an order

const (
	OrderStatus_PENDING          OrderStatus = 0
	OrderStatus_OPEN             OrderStatus = 1
	OrderStatus_FILLED           OrderStatus = 2
	OrderStatus_PARTIALLY_FILLED OrderStatus = 3
	OrderStatus_CANCELED         OrderStatus = 4
	OrderStatus_REJECTED         OrderStatus = 5
)

func (OrderStatus) Descriptor

func (OrderStatus) Enum

func (x OrderStatus) Enum() *OrderStatus

func (OrderStatus) EnumDescriptor deprecated

func (OrderStatus) EnumDescriptor() ([]byte, []int)

Deprecated: Use OrderStatus.Descriptor instead.

func (OrderStatus) Number

func (x OrderStatus) Number() protoreflect.EnumNumber

func (OrderStatus) String

func (x OrderStatus) String() string

func (OrderStatus) Type

type OrderType

type OrderType int32

Types of orders

const (
	OrderType_LIMIT      OrderType = 0
	OrderType_MARKET     OrderType = 1
	OrderType_STOP       OrderType = 2
	OrderType_STOP_LIMIT OrderType = 3
)

func (OrderType) Descriptor

func (OrderType) Descriptor() protoreflect.EnumDescriptor

func (OrderType) Enum

func (x OrderType) Enum() *OrderType

func (OrderType) EnumDescriptor deprecated

func (OrderType) EnumDescriptor() ([]byte, []int)

Deprecated: Use OrderType.Descriptor instead.

func (OrderType) Number

func (x OrderType) Number() protoreflect.EnumNumber

func (OrderType) String

func (x OrderType) String() string

func (OrderType) Type

type PriceLevel

type PriceLevel struct {
	Price         string `protobuf:"bytes,1,opt,name=price,proto3" json:"price,omitempty"`
	TotalQuantity string `protobuf:"bytes,2,opt,name=total_quantity,json=totalQuantity,proto3" json:"total_quantity,omitempty"`
	OrderCount    int32  `protobuf:"varint,3,opt,name=order_count,json=orderCount,proto3" json:"order_count,omitempty"`
	UserAddress   string `protobuf:"bytes,4,opt,name=user_address,json=userAddress,proto3" json:"user_address,omitempty"` // User's wallet address
	// contains filtered or unexported fields
}

Represents a price level in the order book

func (*PriceLevel) Descriptor deprecated

func (*PriceLevel) Descriptor() ([]byte, []int)

Deprecated: Use PriceLevel.ProtoReflect.Descriptor instead.

func (*PriceLevel) GetOrderCount

func (x *PriceLevel) GetOrderCount() int32

func (*PriceLevel) GetPrice

func (x *PriceLevel) GetPrice() string

func (*PriceLevel) GetTotalQuantity

func (x *PriceLevel) GetTotalQuantity() string

func (*PriceLevel) GetUserAddress

func (x *PriceLevel) GetUserAddress() string

func (*PriceLevel) ProtoMessage

func (*PriceLevel) ProtoMessage()

func (*PriceLevel) ProtoReflect

func (x *PriceLevel) ProtoReflect() protoreflect.Message

func (*PriceLevel) Reset

func (x *PriceLevel) Reset()

func (*PriceLevel) String

func (x *PriceLevel) String() string

type TimeInForce

type TimeInForce int32

Time in force for orders

const (
	TimeInForce_GTC TimeInForce = 0 // Good Till Canceled
	TimeInForce_IOC TimeInForce = 1 // Immediate or Cancel
	TimeInForce_FOK TimeInForce = 2 // Fill or Kill
)

func (TimeInForce) Descriptor

func (TimeInForce) Enum

func (x TimeInForce) Enum() *TimeInForce

func (TimeInForce) EnumDescriptor deprecated

func (TimeInForce) EnumDescriptor() ([]byte, []int)

Deprecated: Use TimeInForce.Descriptor instead.

func (TimeInForce) Number

func (x TimeInForce) Number() protoreflect.EnumNumber

func (TimeInForce) String

func (x TimeInForce) String() string

func (TimeInForce) Type

type Trade

type Trade struct {
	OrderId     string `protobuf:"bytes,1,opt,name=order_id,json=orderId,proto3" json:"order_id,omitempty"`
	Role        string `protobuf:"bytes,2,opt,name=role,proto3" json:"role,omitempty"`
	Price       string `protobuf:"bytes,3,opt,name=price,proto3" json:"price,omitempty"`
	Quantity    string `protobuf:"bytes,4,opt,name=quantity,proto3" json:"quantity,omitempty"`
	IsQuote     bool   `protobuf:"varint,5,opt,name=is_quote,json=isQuote,proto3" json:"is_quote,omitempty"`
	UserAddress string `protobuf:"bytes,6,opt,name=user_address,json=userAddress,proto3" json:"user_address,omitempty"` // User's wallet address
	// contains filtered or unexported fields
}

Represents a trade that has occurred

func (*Trade) Descriptor deprecated

func (*Trade) Descriptor() ([]byte, []int)

Deprecated: Use Trade.ProtoReflect.Descriptor instead.

func (*Trade) GetIsQuote

func (x *Trade) GetIsQuote() bool

func (*Trade) GetOrderId

func (x *Trade) GetOrderId() string

func (*Trade) GetPrice

func (x *Trade) GetPrice() string

func (*Trade) GetQuantity

func (x *Trade) GetQuantity() string

func (*Trade) GetRole

func (x *Trade) GetRole() string

func (*Trade) GetUserAddress

func (x *Trade) GetUserAddress() string

func (*Trade) ProtoMessage

func (*Trade) ProtoMessage()

func (*Trade) ProtoReflect

func (x *Trade) ProtoReflect() protoreflect.Message

func (*Trade) Reset

func (x *Trade) Reset()

func (*Trade) String

func (x *Trade) String() string

type UnimplementedOrderBookServiceServer

type UnimplementedOrderBookServiceServer struct{}

UnimplementedOrderBookServiceServer must be embedded to have forward compatible implementations.

NOTE: this should be embedded by value instead of pointer to avoid a nil pointer dereference when methods are called.

func (UnimplementedOrderBookServiceServer) CancelOrder

func (UnimplementedOrderBookServiceServer) CreateOrder

func (UnimplementedOrderBookServiceServer) CreateOrderBook

func (UnimplementedOrderBookServiceServer) DeleteOrderBook

func (UnimplementedOrderBookServiceServer) GetOrder

func (UnimplementedOrderBookServiceServer) GetOrderBook

func (UnimplementedOrderBookServiceServer) GetOrderBookState

func (UnimplementedOrderBookServiceServer) ListOrderBooks

type UnsafeOrderBookServiceServer

type UnsafeOrderBookServiceServer interface {
	// contains filtered or unexported methods
}

UnsafeOrderBookServiceServer may be embedded to opt out of forward compatibility for this service. Use of this interface is not recommended, as added methods to OrderBookServiceServer will result in compilation errors.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL