资金管理
本页方法均要求交易账户权限,使用配置中的默认账户,并返回响应 data 对应的 web::json::value。资金划转和换汇会影响真实账户,提交前应先查询可用金额。
查询分段资金历史
value TradeClient::get_segment_fund_history(int limit = 0)
说明
查询证券、期货等账户分段之间的资金划转记录。
参数
| 参数名 | 类型 | 是否必填 | 描述 |
|---|---|---|---|
| limit | int | No | SDK 默认 0,仅大于 0 时发送 |
返回
web::json::value 数组。每项字段:id、fromSegment、toSegment、currency、amount、status、statusDesc、settledAt、createdAt、updatedAt。
示例
auto result = trade_client.get_segment_fund_history(20);查询可划转资金
value TradeClient::get_segment_fund_available(utility::string_t from_segment, utility::string_t currency = U("USD"))
说明
查询指定账户分段和币种当前可划转的资金。
参数
| 参数名 | 类型 | 是否必填 | 描述 |
|---|---|---|---|
| from_segment | utility::string_t | Yes | 来源分段,如 U("SEC") 或 U("FUT") |
| currency | utility::string_t | No | SDK 默认 U("USD") |
返回
web::json::value 数组。每项字段:fromSegment、currency、amount。
示例
auto result = trade_client.get_segment_fund_available(U("SEC"), U("USD"));分段资金划转
value TradeClient::transfer_segment_fund(utility::string_t from_segment, utility::string_t to_segment, double amount, utility::string_t currency = U("USD"))
说明
在同一账户的两个分段之间提交资金划转。
参数
| 参数名 | 类型 | 是否必填 | 描述 |
|---|---|---|---|
| from_segment | utility::string_t | Yes | 来源分段 |
| to_segment | utility::string_t | Yes | 目标分段,必须与来源不同 |
| amount | double | Yes | 正数,且不得超过可划转金额 |
| currency | utility::string_t | No | SDK 默认 U("USD") |
返回
web::json::value 对象。字段:id、fromSegment、toSegment、currency、amount、status、statusDesc、message、settledAt、createdAt、updatedAt。
示例
auto result = trade_client.transfer_segment_fund(U("SEC"), U("FUT"), 1000.0);取消分段划转
value TradeClient::cancel_segment_fund(long long id)
说明
取消一笔仍处于待处理状态的分段资金划转。
参数
| 参数名 | 类型 | 是否必填 | 描述 |
|---|---|---|---|
| id | long long | Yes | get_segment_fund_history 返回的划转记录 ID |
返回
web::json::value 对象,字段与分段资金划转结果一致。
示例
auto result = trade_client.cancel_segment_fund(12345);提交换汇
value TradeClient::place_forex_order(utility::string_t seg_type, utility::string_t source_currency, utility::string_t target_currency, double source_amount)
说明
按来源金额提交账户分段内的币种兑换订单。
参数
| 参数名 | 类型 | 是否必填 | 描述 |
|---|---|---|---|
| seg_type | utility::string_t | Yes | 账户分段,如 U("SEC") |
| source_currency | utility::string_t | Yes | 来源三字母币种代码 |
| target_currency | utility::string_t | Yes | 目标三字母币种代码,必须与来源不同 |
| source_amount | double | Yes | 正数,且不得超过可用余额 |
返回
web::json::value 对象。字段:id、status、sourceCurrency、targetCurrency、sourceAmount、targetAmount、rate、submitTime。
示例
auto result = trade_client.place_forex_order(U("SEC"), U("USD"), U("HKD"), 100.0);查询聚合资产
value TradeClient::get_aggregate_assets(utility::string_t account = U(""), utility::string_t seg_type = U(""), utility::string_t base_currency = U(""))
说明
按账户、分段和基础币种查询聚合资产。
参数
| 参数名 | 类型 | 是否必填 | 描述 |
|---|---|---|---|
| account | utility::string_t | No | 空字符串使用配置账户 |
| seg_type | utility::string_t | No | SDK 默认空字符串;空值不发送 |
| base_currency | utility::string_t | No | SDK 默认空字符串;空值不发送 |
返回
web::json::value 对象。字段:currency、cashBalance、cashBalanceWithInTransit、equityWithLoan、netLiquidation、initMargin、maintainMargin、tradeCurrencyMargin、intradayRiskRatio、grossPositionValue、optionMarketValue、stockMarketValue、cashAvailableForTrade、availableCash、lockedFunds、lockedCash、creditLimit、excessEquity、excessLiquidity。
示例
auto result = trade_client.get_aggregate_assets(U(""), U("SEC"), U("USD"));请求频率
- 基础频率:60 次/分钟(按 TigerId + 接口统计,60 秒滚动窗口)。
查询出入金历史
value TradeClient::get_funding_history(utility::string_t seg_type = U(""))
说明
查询配置账户的出入金记录。
参数
| 参数名 | 类型 | 是否必填 | 描述 |
|---|---|---|---|
| seg_type | utility::string_t | No | SDK 默认空字符串;空值不发送 |
返回
web::json::value 数组。每项字段:id、refId、type、typeDesc、currency、amount、businessDate、status、statusDesc、completedStatus、createdAt、updatedAt。
示例
auto result = trade_client.get_funding_history(U("SEC"));请求频率
- 基础频率:60 次/分钟(按 TigerId + 接口统计,60 秒滚动窗口)。
查询资金明细
value TradeClient::get_fund_details(const value &seg_types = value::null(), utility::string_t account = U(""), utility::string_t fund_type = U(""), utility::string_t currency = U(""), int start = 0, int limit = 0, utility::string_t start_date = U(""), utility::string_t end_date = U(""))
说明
按分段、资金类型、币种和日期分页查询资金明细。
参数
| 参数名 | 类型 | 是否必填 | 描述 |
|---|---|---|---|
| seg_types | const value& | No | JSON 分段数组;SDK 默认 value::null() |
| account | utility::string_t | No | 空字符串使用配置账户 |
| fund_type | utility::string_t | No | 资金类型;SDK 默认空 |
| currency | utility::string_t | No | 三字母币种代码;SDK 默认空 |
| start | int | No | 分页起点;SDK 默认 0 |
| limit | int | No | 返回数量;SDK 默认 0 |
| start_date | utility::string_t | No | yyyy-MM-dd,SDK 默认空 |
| end_date | utility::string_t | No | yyyy-MM-dd,不得早于开始日期 |
返回
web::json::value 分页对象。字段:page、limit、itemCount、pageCount、timestamp、items;items 每项包含 id、account、segType、fundType、currency、amount、balance、occurTime、remark、externalId。
示例
web::json::value segments = web::json::value::array();
segments[0] = web::json::value::string(U("SEC"));
auto result = trade_client.get_fund_details(
segments, U(""), U("DEPOSIT"), U("USD"), 0, 50,
U("2025-01-01"), U("2025-12-31"));请求频率
- 基础频率:10 次/分钟(按 TigerId + 接口统计,60 秒滚动窗口)。
Updated 7 days ago
