syntax = "proto2";
package Trd_GetFunds;
option java_package = "com.futu.openapi.pb";
option go_package = "github.com/futuopen/ftapi4go/pb/trdgetfunds";

import "Common.proto";
import "Trd_Common.proto";

message C2S
{
	required Trd_Common.TrdHeader header = 1; //交易公共参数头
	optional bool refreshCache = 2; //立即刷新OpenD缓存的此数据，默认不填。true向服务器获取最新数据更新缓存并返回；flase或没填则返回OpenD缓存的数据，不会向服务器请求。
	//正常情况下，服务器有更新就会立即推送到OpenD，OpenD缓存着数据，API请求过来，返回同步的缓存数据，一般不需要指定刷新缓存，保证快速返回且减少对服务器的压力
	//如果遇到丢包等情况，可能出现缓存数据与服务器不一致，用户如果发现数据更新有异样，可指定刷新缓存，解决数据同步的问题。
	optional int32 currency = 3;	//货币种类，参见Trd_Common.Currency。综合账户必填，其它账户忽略 
	optional int32 assetCategory = 4; //账户资产类型，JP信用/衍生品账户必填，参考 Trd_Common.TrdAssetCategory
}

message S2C
{
	required Trd_Common.TrdHeader header = 1; //交易公共参数头
	optional Trd_Common.Funds funds = 2; //账户资金
}

message Request
{
	required C2S c2s = 1;
}

message Response
{
	//以下3个字段每条协议都有，注释说明在InitConnect.proto中
	required int32 retType = 1 [default = -400];
	optional string retMsg = 2;
	optional int32 errCode = 3;
	
	optional S2C s2c = 4;
}
