资金管理

本页方法均要求交易账户权限,使用配置中的默认账户,并返回响应 data 对应的 web::json::value。资金划转和换汇会影响真实账户,提交前应先查询可用金额。

查询分段资金历史

value TradeClient::get_segment_fund_history(int limit = 0)

说明

查询证券、期货等账户分段之间的资金划转记录。

参数

参数名类型是否必填描述
limitintNoSDK 默认 0,仅大于 0 时发送

返回

web::json::value 数组。每项字段:idfromSegmenttoSegmentcurrencyamountstatusstatusDescsettledAtcreatedAtupdatedAt

示例

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_segmentutility::string_tYes来源分段,如 U("SEC")U("FUT")
currencyutility::string_tNoSDK 默认 U("USD")

返回

web::json::value 数组。每项字段:fromSegmentcurrencyamount

示例

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_segmentutility::string_tYes来源分段
to_segmentutility::string_tYes目标分段,必须与来源不同
amountdoubleYes正数,且不得超过可划转金额
currencyutility::string_tNoSDK 默认 U("USD")

返回

web::json::value 对象。字段:idfromSegmenttoSegmentcurrencyamountstatusstatusDescmessagesettledAtcreatedAtupdatedAt

示例

auto result = trade_client.transfer_segment_fund(U("SEC"), U("FUT"), 1000.0);

取消分段划转

value TradeClient::cancel_segment_fund(long long id)

说明

取消一笔仍处于待处理状态的分段资金划转。

参数

参数名类型是否必填描述
idlong longYesget_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_typeutility::string_tYes账户分段,如 U("SEC")
source_currencyutility::string_tYes来源三字母币种代码
target_currencyutility::string_tYes目标三字母币种代码,必须与来源不同
source_amountdoubleYes正数,且不得超过可用余额

返回

web::json::value 对象。字段:idstatussourceCurrencytargetCurrencysourceAmounttargetAmountratesubmitTime

示例

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(""))

说明

按账户、分段和基础币种查询聚合资产。

参数

参数名类型是否必填描述
accountutility::string_tNo空字符串使用配置账户
seg_typeutility::string_tNoSDK 默认空字符串;空值不发送
base_currencyutility::string_tNoSDK 默认空字符串;空值不发送

返回

web::json::value 对象。字段:currencycashBalancecashBalanceWithInTransitequityWithLoannetLiquidationinitMarginmaintainMargintradeCurrencyMarginintradayRiskRatiogrossPositionValueoptionMarketValuestockMarketValuecashAvailableForTradeavailableCashlockedFundslockedCashcreditLimitexcessEquityexcessLiquidity

示例

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_typeutility::string_tNoSDK 默认空字符串;空值不发送

返回

web::json::value 数组。每项字段:idrefIdtypetypeDesccurrencyamountbusinessDatestatusstatusDesccompletedStatuscreatedAtupdatedAt

示例

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_typesconst value&NoJSON 分段数组;SDK 默认 value::null()
accountutility::string_tNo空字符串使用配置账户
fund_typeutility::string_tNo资金类型;SDK 默认空
currencyutility::string_tNo三字母币种代码;SDK 默认空
startintNo分页起点;SDK 默认 0
limitintNo返回数量;SDK 默认 0
start_dateutility::string_tNoyyyy-MM-dd,SDK 默认空
end_dateutility::string_tNoyyyy-MM-dd,不得早于开始日期

返回

web::json::value 分页对象。字段:pagelimititemCountpageCounttimestampitemsitems 每项包含 idaccountsegTypefundTypecurrencyamountbalanceoccurTimeremarkexternalId

示例

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 秒滚动窗口)。

Did this page help you?