gtat-tech-career-kickstarte.../proto/common.proto

73 lines
1.7 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;
// 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;
// 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;
}