快速入门

前置条件

  • .NET 10 SDK;NuGet 包 TigerBrokers.OpenAPI
  • 已在开放平台创建应用并取得 Tiger ID、RSA 私钥和令牌;交易接口还需要账户及相应市场交易权限。
  • 行情可见性取决于账户地区、交易所及已开通的行情权限;无实时行情权限时使用延迟行情接口。

优先使用开发者中心导出的真实配置;也可参考统一配置模板统一 Token 模板。复制后去掉 .example 后缀并替换占位符,请勿将凭证提交到版本库。当前 C# SDK 不从 properties 自动读取 secret_key,机构凭证应通过 SDK 支持的代码或请求模型传入。

dotnet add package TigerBrokers.OpenAPI

配置与客户端

using TigerOpenAPI.Common;
using TigerOpenAPI.Common.Enum;
using TigerOpenAPI.Config;
using TigerOpenAPI.Model;
using TigerOpenAPI.Quote;
using TigerOpenAPI.Quote.Model;
using TigerOpenAPI.Quote.Response;

TigerConfig config = new()
{
    ConfigFilePath = "your_config_directory_path",
    Language = Language.zh_CN,
    TimeZone = CustomTimeZone.HK_ZONE,
    AutoGrabPermission = false
};

QuoteClient quoteClient = new(config);
TigerRequest<MarketStateResponse> request = new()
{
    ApiMethodName = QuoteApiService.MARKET_STATE,
    ModelValue = new QuoteMarketModel { Market = Market.US }
};
MarketStateResponse? response = await quoteClient.ExecuteAsync(request);
if (response is null || !response.IsSuccess())
    throw new InvalidOperationException(response?.Message ?? "empty response");
Console.WriteLine(response.Data);

ExecuteAsync<T> 的方法签名是 Task<T?> ExecuteAsync<T>(TigerRequest<T> request) where T : TigerResponse。同步版本为 T? Execute<T>(TigerRequest<T> request)。失败通常返回已填充 CodeMessage 的响应对象;仍应处理 null

下一步


Did this page help you?