You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 

71 lines
1.7 KiB

syntax = "proto3";
import "google/protobuf/struct.proto";
import "api/pub.proto";
option go_package = "./pb";
service TradingService {
rpc IndicatorSeries(ReqIndicatorSeries) returns (RspIndicatorSeries); // 获取指标序列
rpc StrategySeries(ReqStrategySeries) returns (RspStrategySeries); // 获取指标序列
rpc Backtest(ReqBacktest) returns (RspBacktest); // 交易计划回测
rpc BacktestLog(ReqBacktestLog) returns (RspBacktestLog); // 交易计划回测记录
rpc BacktestLogTrades(ReqBacktestLogTrades) returns (RspBacktestLogTrades); // 交易计划回测交易单详情
}
message ReqIndicatorSeries {
string indicator = 1;
int32 digit = 2; // 结果小数位数
SeriesRange series = 9;
google.protobuf.Struct input = 10; // 指标参数
}
message RspIndicatorSeries {
repeated double matrix = 1;
repeated int64 times = 2;
}
message ReqStrategySeries {
SeriesRange series = 1;
string sigStrategy = 2;
google.protobuf.Struct input = 3; // 指标参数
}
message RspStrategySeries {
repeated Side signal = 1; // 0.sell,1.buy
repeated int64 times = 2;
}
message ReqBacktest {
int64 planId = 1;
string stime = 2;
string etime = 3;
}
message RspBacktest {
int64 backtestId = 1;
}
message BacktestLog {
int64 backtestId = 1;
int64 planId = 2;
int64 stime = 3;
int64 etime = 4;
string interval = 5; // 交易周期
}
message ReqBacktestLog {
Paging paging = 1;
}
message RspBacktestLog {
repeated BacktestLog logs = 1;
}
message BacktestTrade {
int64 id = 1;
int64 ctime = 2; // 交易时间
}
message ReqBacktestLogTrades {
Paging paging = 1;
int64 backtestId = 2;
}
message RspBacktestLogTrades {
repeated BacktestTrade trades = 1;
}