81 lines
2.1 KiB
Protocol Buffer
81 lines
2.1 KiB
Protocol Buffer
syntax = "proto3";
|
|
package optiver.exchange;
|
|
|
|
enum MessageType {
|
|
// Auth
|
|
AUTH_LOGIN_REQUEST = 0;
|
|
AUTH_LOGIN_RESPONSE = 1;
|
|
|
|
// Instrument admin
|
|
ADMIN_CREATE_INSTRUMENT_REQUEST = 20;
|
|
ADMIN_CREATE_INSTRUMENT_RESPONSE = 21;
|
|
|
|
// Info
|
|
INFO_ON_INSTRUMENT = 30;
|
|
INFO_SUBSCRIBE_REQUEST = 31;
|
|
INFO_SUBSCRIBE_RESPONSE = 32;
|
|
INFO_ON_TOP_OF_BOOK = 33;
|
|
INFO_ON_PRICE_DEPTH_BOOK = 34;
|
|
INFO_ON_TRADE = 35;
|
|
// Internal management messages (used by admin service)
|
|
INFO_CREATE_INSTRUMENT_REQUEST = 130;
|
|
INFO_CREATE_INSTRUMENT_RESPONSE = 131;
|
|
|
|
// Order Book
|
|
ORDER_BOOK_ON_ORDER_BOOK_CREATED = 40;
|
|
ORDER_BOOK_ON_ORDER_INSERTED = 41;
|
|
ORDER_BOOK_ON_ORDER_CANCELLED = 42;
|
|
ORDER_BOOK_ON_TRADE = 43;
|
|
ORDER_BOOK_GET_ALL_REQUEST = 44;
|
|
ORDER_BOOK_GET_ALL_RESPONSE = 45;
|
|
ORDER_BOOK_INSERT_ORDER_REQUEST = 46;
|
|
ORDER_BOOK_INSERT_ORDER_RESPONSE = 47;
|
|
ORDER_BOOK_CANCEL_ORDER_REQUEST = 48;
|
|
ORDER_BOOK_CANCEL_ORDER_RESPONSE = 49;
|
|
// Internal management messages (used by admin service)
|
|
ORDER_BOOK_CREATE_REQUEST = 140;
|
|
ORDER_BOOK_CREATE_RESPONSE = 141;
|
|
ORDER_BOOK_DELETE_REQUEST = 142;
|
|
ORDER_BOOK_DELETE_RESPONSE = 143;
|
|
|
|
// Execution
|
|
EXEC_INSERT_ORDER_REQUEST = 50;
|
|
EXEC_INSERT_ORDER_RESPONSE = 51;
|
|
EXEC_CANCEL_ORDER_REQUEST = 52;
|
|
EXEC_CANCEL_ORDER_RESPONSE = 53;
|
|
EXEC_ON_TRADE = 54;
|
|
|
|
// Risk
|
|
RISK_GET_USER_LIMITS_REQUEST = 60;
|
|
RISK_GET_USER_LIMITS_RESPONSE = 61;
|
|
RISK_SET_USER_LIMITS_REQUEST = 62;
|
|
RISK_SET_USER_LIMITS_RESPONSE = 63;
|
|
RISK_GET_INSTRUMENT_LIMITS_REQUEST = 64;
|
|
RISK_GET_INSTRUMENT_LIMITS_RESPONSE = 65;
|
|
RISK_SET_INSTRUMENT_LIMITS_REQUEST = 66;
|
|
RISK_SET_INSTRUMENT_LIMITS_RESPONSE = 67;
|
|
}
|
|
|
|
message LoginRequest {
|
|
int64 request_id = 1;
|
|
string username = 2;
|
|
string password = 3;
|
|
}
|
|
|
|
message LoginResponse {
|
|
int64 request_id = 1;
|
|
string error_message = 2;
|
|
}
|
|
|
|
enum Side {
|
|
BUY = 0;
|
|
SELL = 1;
|
|
}
|
|
|
|
message Instrument {
|
|
string symbol = 1;
|
|
string description = 2;
|
|
string currency = 3;
|
|
double multiplier = 4;
|
|
}
|