syntax = "proto3"; package matchmaking.v1; import "google/api/annotations.proto"; import "google/protobuf/timestamp.proto"; option go_package = "matchmaking-system/api/matchmaking/v1;v1"; service Contract { // GetBotContractTrade 合约列表查询 rpc GetBotContractTrade(GetBotContractTradeRequest)returns(GetBotContractTradeReply){ option (google.api.http) = { post:"/order_contract/contract_list", body:"*", }; } // ContractPlaceOrder 合约下单 rpc ContractPlaceOrder(ContractRequest)returns(ContractReply){ option (google.api.http) = { post: "/order_contract/contract_place_order", body: "*", }; } // ContractUpdatePlaceOrder 合约设置止盈止损 rpc ContractUpdatePlaceOrder(UpdateContractRequest)returns(ContractReply){ option (google.api.http) = { post: "/order_contract/contract_update_order", body: "*", }; } // ContractPosition 合约平仓 rpc ContractPosition(CancelContractRequest)returns(ContractReply){ option (google.api.http) = { post:"/order_contract/contract_position", body:"*", }; } // ContractAllPosition 合约一键平仓 rpc ContractAllPosition(AllContractRequest)returns(AllContractReply){ option (google.api.http) = { post:"/order_contract/contract_all_position", body:"*", }; } // ContractCancel 合约撤单 rpc ContractCancel(CancelContractRequest)returns(ContractReply){ option (google.api.http) = { post:"/order_contract/contract_cancel", body:"*", }; } } message GetBotContractTradeRequest{ int64 status =1;// 状态码 int64 pageSize =2; // 每页显示条数 int64 pageCount =3;// 开始的位置 int64 state = 4;// 订单类型 } message GetBotContractTradeReply{ int64 code =1;// 状态码 BotContractTradeData data =2;// 返回结果 string message =3;// 返回消息提示 } message BotContractTradeData{ int64 pageSize =1; // 每页显示条数 int64 pageCount =2;// 开始的位置 repeated BotContractTrade data =3;// 返回结果 int64 totalCount =4;// 总数据 } message BotContractTrade{ string orderId =1;// 订单ID string contractId =2;// 合约ID int64 tradeType =3;// 交易类型 int64 dealType =4;// 交易方式 string limitPrice =5;// 限价 string marketPrice =6;// 市价 string dealPrice =7;// 开仓价 string closingPrice =8;// 平仓价 string orderNumber =9;// 订单数量 int64 stopType =10;// 止盈止损状态 string stopLossPrice =11;// 止损 string stopWinPrice =12;// 止盈 string serviceCost =13;// 开仓手续费 string earnestMoney =14;// 保证金 string orderMoney =15;// 订单总额 int64 status =16;// 订单状态 google.protobuf.Timestamp createTime =17;// 订单创建时间 google.protobuf.Timestamp updateTime =18;// 订单更新时间 google.protobuf.Timestamp openTime =19;// 订单开仓时间 google.protobuf.Timestamp closingTime =20;// 订单平仓时间 string closingCost =21;// 平仓手续费 string faceValue =22;// 面值 string overnightCost =23;// 过夜手续费 string pryNum =24;// 杠杆值 string keepDecimal =25;// 保留小数位 string secondTime = 26;// 秒合约时间 int64 state = 27;// 订单类型 } message ContractRequest{ string contractId =1;// 交易对 int64 tradeType =2;// 交易类型:1买入,2卖出 int64 dealType =3;// 委托方式:1限价,2市价 string limitPrice =4;// 限价 string marketPrice =5;// 市价 string orderAmount =6;// 订单金额 string orderNumber =7;// 订单数量 string earnestMoney =8;// 保证金 string serviceCost =9;// 手续费 int64 stopType =10;// 止损止盈设置:0无设置,1止损止盈 string stopLossPrice =11;// 止损 string stopWinPrice =12;// 止盈 string pryNum =13;//杠杆 int64 time = 14;// 秒合约时间 } message ContractReply{ int64 code =1;// 状态码 ContractResult data =2;// 返回结果 string message =3;// 返回消息提示 } message ContractResult { string orderId =1;// 订单Id } message UpdateContractRequest{ string orderId =1;// 订单Id int64 stopType =2;// 止盈止损 string stopLossPrice =3;// 止损 string stopWinPrice =4;// 止盈 } message CancelContractRequest{ string orderId =1;// 订单ID } message AllContractRequest{ } message AllContractReply{ int64 code =1;// 状态码 string data =2;// 返回结果 string message =3;// 返回消息提示 }