Securities
get_real_time_quote
get_real_time_quoteSignature
pub async fn get_real_time_quote(&self, req: BriefRequest) -> Result<Vec<Brief>, TigerError>
Description
Real-time snapshot; symbols required; hour trading, security type, and language omitted by default. Requires matching quote permission.
Deprecated alias:
get_briefforwards to this method and has been marked#[deprecated]in the SDK since 0.5.1. It adds no behavior. Useget_real_time_quotein new code.
Parameters
| Parameter | Rust type | Requirement | SDK default |
|---|---|---|---|
| req.symbols | Option<Vec<String>> | Required by server; SDK does not pre-validate | None (omitted) |
| req.include_hour_trading | Option<bool> | Optional | None (omitted) |
| req.sec_type | Option<String> | Optional | None (omitted) |
| req.lang | Option<String> | Optional | None (omitted) |
Return
Result<Vec<Brief>, TigerError>
| Field | Type | Description |
|---|---|---|
| symbol | String | Stock symbol |
| open | f64 | Open price |
| high | f64 | High price |
| low | f64 | Low price |
| close | f64 | Close price |
| pre_close | f64 | Previous close |
| latest_price | f64 | Latest price |
| latest_time | i64 | Latest trade time (ms timestamp) |
| ask_price | f64 | Ask price |
| ask_size | i64 | Ask size |
| bid_price | f64 | Bid price |
| bid_size | i64 | Bid size |
| volume | i64 | Volume |
| status | String | Trading status |
| adj_pre_close | f64 | Adjusted previous close |
| change | f64 | Price change |
| change_rate | f64 | Change rate |
| amplitude | f64 | Amplitude |
| expiry | String | Expiry date |
| strike | String | Strike price |
| right | String | Option direction |
| multiplier | i32 | Contract multiplier |
| open_interest | i64 | Open interest |
Example
use std::sync::Arc;
use tigeropen::client::http_client::HttpClient;
use tigeropen::config::ClientConfig;
use tigeropen::error::TigerError;
use tigeropen::model::order::*;
use tigeropen::model::quote::*;
use tigeropen::model::quote_requests::*;
use tigeropen::model::trade_requests::*;
use tigeropen::push::*;
use tigeropen::quote::QuoteClient;
use tigeropen::trade::TradeClient;
async fn example_get_real_time_quote(config: ClientConfig, quote: &QuoteClient, trade: &TradeClient, push: &Arc<PushClient>) -> Result<(), TigerError> {
let result_0 = quote.get_real_time_quote(BriefRequest { symbols: Some(vec!["AAPL".into()]), ..Default::default() }).await?;
Ok(())
}
Response example
[
{
"symbol": "AAPL",
"open": 192.3,
"high": 195.99,
"low": 191.85,
"close": 195.5,
"pre_close": 192.53,
"latest_price": 195.5,
"latest_time": 1738180800000
}
]get_delayed_quote
get_delayed_quoteSignature
pub async fn get_delayed_quote( &self, req: DelayedQuoteRequest, ) -> Result<Vec<Brief>, TigerError>
Description
Delayed snapshot; symbols required.
Deprecated alias:
get_stock_delay_briefsforwards to this method and has been marked#[deprecated]in the SDK since 0.5.1. It adds no behavior. Useget_delayed_quotein new code.
Parameters
| Parameter | Rust type | Requirement | SDK default |
|---|---|---|---|
| req.symbols | Option<Vec<String>> | Required by server; SDK does not pre-validate | None (omitted) |
| req.sec_type | Option<String> | Optional | None (omitted) |
| req.lang | Option<String> | Optional | None (omitted) |
Return
Result<Vec<Brief>, TigerError>
| Field | Type | Description |
|---|---|---|
| symbol | String | Stock symbol |
| open | f64 | Open price |
| high | f64 | High price |
| low | f64 | Low price |
| close | f64 | Close price |
| pre_close | f64 | Previous close |
| latest_price | f64 | Latest price |
| latest_time | i64 | Latest trade time (ms timestamp) |
| ask_price | f64 | Ask price |
| ask_size | i64 | Ask size |
| bid_price | f64 | Bid price |
| bid_size | i64 | Bid size |
| volume | i64 | Volume |
| status | String | Trading status |
| adj_pre_close | f64 | Adjusted previous close |
| change | f64 | Price change |
| change_rate | f64 | Change rate |
| amplitude | f64 | Amplitude |
| expiry | String | Expiry date |
| strike | String | Strike price |
| right | String | Option direction |
| multiplier | i32 | Contract multiplier |
| open_interest | i64 | Open interest |
Example
use std::sync::Arc;
use tigeropen::client::http_client::HttpClient;
use tigeropen::config::ClientConfig;
use tigeropen::error::TigerError;
use tigeropen::model::order::*;
use tigeropen::model::quote::*;
use tigeropen::model::quote_requests::*;
use tigeropen::model::trade_requests::*;
use tigeropen::push::*;
use tigeropen::quote::QuoteClient;
use tigeropen::trade::TradeClient;
async fn example_get_delayed_quote(config: ClientConfig, quote: &QuoteClient, trade: &TradeClient, push: &Arc<PushClient>) -> Result<(), TigerError> {
let result_0 = quote.get_delayed_quote(DelayedQuoteRequest { symbols: Some(vec!["AAPL".into()]), ..Default::default() }).await?;
Ok(())
}
Response example
[
{
"symbol": "AAPL",
"open": 192.3,
"high": 195.99,
"low": 191.85,
"close": 195.5,
"pre_close": 192.53,
"latest_price": 195.5,
"latest_time": 1738180800000
}
]get_kline
get_klineSignature
pub async fn get_kline(&self, req: KlineRequest) -> Result<Vec<Kline>, TigerError>
Description
Bars; symbols and period required; adjustment, millisecond range, indexes, limit, token, and session optional.
Parameters
| Parameter | Rust type | Requirement | SDK default |
|---|---|---|---|
| req.symbols | Option<Vec<String>> | Required by server; SDK does not pre-validate | None (omitted) |
| req.period | Option<String> | Required by server; SDK does not pre-validate | None (omitted) |
| req.right | Option<String> | Optional | None (omitted) |
| req.begin_time | Option<i64> | Optional | None (omitted) |
| req.end_time | Option<i64> | Optional | None (omitted) |
| req.limit | Option<i32> | Optional | None (omitted) |
| req.begin_index | Option<i32> | Optional | None (omitted) |
| req.end_index | Option<i32> | Optional | None (omitted) |
| req.page_token | Option<String> | Optional | None (omitted) |
| req.trade_session | Option<String> | Optional | None (omitted) |
| req.date | Option<String> | Optional | None (omitted) |
| req.with_fundamental | Option<bool> | Optional | None (omitted) |
| req.sec_type | Option<String> | Optional | None (omitted) |
| req.lang | Option<String> | Optional | None (omitted) |
Return
Result<Vec<Kline>, TigerError>
| Field | Type | Description |
|---|---|---|
| symbol | String | Stock symbol |
| period | String | Period |
| next_page_token | String | Next page token |
| items | Vec | Data items |
Example
use std::sync::Arc;
use tigeropen::client::http_client::HttpClient;
use tigeropen::config::ClientConfig;
use tigeropen::error::TigerError;
use tigeropen::model::order::*;
use tigeropen::model::quote::*;
use tigeropen::model::quote_requests::*;
use tigeropen::model::trade_requests::*;
use tigeropen::push::*;
use tigeropen::quote::QuoteClient;
use tigeropen::trade::TradeClient;
async fn example_get_kline(config: ClientConfig, quote: &QuoteClient, trade: &TradeClient, push: &Arc<PushClient>) -> Result<(), TigerError> {
let result_0 = quote.get_kline(KlineRequest { symbols: Some(vec!["AAPL".into()]), period: Some("day".into()), ..Default::default() }).await?;
Ok(())
}
Response example
[
{
"symbol": "AAPL",
"period": "day",
"next_page_token": "eyJzIjoiMTczODE4MDgwMDAwMCJ9",
"items": [
{
"time": 1738094400000,
"volume": 52314200,
"open": 192.3,
"close": 193.85,
"high": 194.2,
"low": 191.5,
"amount": 10145000000.0
},
{
"time": 1738008000000,
"volume": 48120300,
"open": 191.5,
"close": 192.53,
"high": 193.1,
"low": 190.8,
"amount": 9280000000.0
}
]
}
]get_kline_by_page
get_kline_by_pageSignature
pub async fn get_kline_by_page( &self, req: KlineByPageRequest, ) -> Result<Vec<KlineItem>, TigerError>
Description
Client pagination; SDK defaults: page_size=200, total_size=1000; continues with oldest time minus one.
Parameters
| Parameter | Rust type | Requirement | SDK default |
|---|---|---|---|
| req.symbols | Option<Vec<String>> | Optional | None (omitted) |
| req.period | Option<String> | Optional | None (omitted) |
| req.begin_time | Option<i64> | Optional | None (omitted) |
| req.end_time | Option<i64> | Optional | None (omitted) |
| req.total_size | Option<i32> | Optional | 1000 when None |
| req.page_size | Option<i32> | Optional | 200 when None |
| req.right | Option<String> | Optional | None (omitted) |
| req.trade_session | Option<String> | Optional | None (omitted) |
| req.lang | Option<String> | Optional | None (omitted) |
Return
Result<Vec<KlineItem>, TigerError>
| Field | Type | Description |
|---|---|---|
| time | i64 | Timestamp |
| volume | i64 | Volume |
| open | f64 | Open price |
| close | f64 | Close price |
| high | f64 | High price |
| low | f64 | Low price |
| amount | f64 | Turnover amount |
Example
use std::sync::Arc;
use tigeropen::client::http_client::HttpClient;
use tigeropen::config::ClientConfig;
use tigeropen::error::TigerError;
use tigeropen::model::order::*;
use tigeropen::model::quote::*;
use tigeropen::model::quote_requests::*;
use tigeropen::model::trade_requests::*;
use tigeropen::push::*;
use tigeropen::quote::QuoteClient;
use tigeropen::trade::TradeClient;
async fn example_get_kline_by_page(config: ClientConfig, quote: &QuoteClient, trade: &TradeClient, push: &Arc<PushClient>) -> Result<(), TigerError> {
let result_0 = quote.get_kline_by_page(KlineByPageRequest { ..Default::default() }).await?;
Ok(())
}
Response example
[
{
"time": 1738180800000,
"volume": 58263100,
"open": 192.3,
"close": 195.5,
"high": 195.99,
"low": 191.85,
"amount": 11329847520.0
}
]get_timeline
get_timelineSignature
pub async fn get_timeline(&self, symbols: &[&str]) -> Result<Vec<Timeline>, TigerError>
Description
v3 intraday timeline; symbols must be nonempty.
Parameters
| Parameter | Rust type | Requirement | SDK default |
|---|---|---|---|
| symbols | &[&str] | Required | None |
Return
Result<Vec<Timeline>, TigerError>
| Field | Type | Description |
|---|---|---|
| symbol | String | Stock symbol |
| period | String | Period |
| pre_close | f64 | Previous close |
| intraday | Option | Intraday timeline data |
| pre_hours | Option | Pre-market timeline data |
| after_hours | Option | After-hours timeline data |
Example
use std::sync::Arc;
use tigeropen::client::http_client::HttpClient;
use tigeropen::config::ClientConfig;
use tigeropen::error::TigerError;
use tigeropen::model::order::*;
use tigeropen::model::quote::*;
use tigeropen::model::quote_requests::*;
use tigeropen::model::trade_requests::*;
use tigeropen::push::*;
use tigeropen::quote::QuoteClient;
use tigeropen::trade::TradeClient;
async fn example_get_timeline(config: ClientConfig, quote: &QuoteClient, trade: &TradeClient, push: &Arc<PushClient>) -> Result<(), TigerError> {
let result_0 = quote.get_timeline(&["AAPL"]).await?;
Ok(())
}
Response example
[
{
"symbol": "AAPL",
"period": "day",
"pre_close": 192.53,
"intraday": null,
"pre_hours": null,
"after_hours": null
}
]get_timeline_history
get_timeline_historySignature
pub async fn get_timeline_history( &self, req: TimelineHistoryRequest, ) -> Result<Vec<Timeline>, TigerError>
Description
Historical timeline; symbols required; date, adjustment, session optional.
Parameters
| Parameter | Rust type | Requirement | SDK default |
|---|---|---|---|
| req.symbols | Option<Vec<String>> | Required by server; SDK does not pre-validate | None (omitted) |
| req.date | Option<String> | Optional | None (omitted) |
| req.right | Option<String> | Optional | None (omitted) |
| req.trade_session | Option<String> | Optional | None (omitted) |
| req.lang | Option<String> | Optional | None (omitted) |
Return
Result<Vec<Timeline>, TigerError>
| Field | Type | Description |
|---|---|---|
| symbol | String | Stock symbol |
| period | String | Period |
| pre_close | f64 | Previous close |
| intraday | Option | Intraday timeline data |
| pre_hours | Option | Pre-market timeline data |
| after_hours | Option | After-hours timeline data |
Example
use std::sync::Arc;
use tigeropen::client::http_client::HttpClient;
use tigeropen::config::ClientConfig;
use tigeropen::error::TigerError;
use tigeropen::model::order::*;
use tigeropen::model::quote::*;
use tigeropen::model::quote_requests::*;
use tigeropen::model::trade_requests::*;
use tigeropen::push::*;
use tigeropen::quote::QuoteClient;
use tigeropen::trade::TradeClient;
async fn example_get_timeline_history(config: ClientConfig, quote: &QuoteClient, trade: &TradeClient, push: &Arc<PushClient>) -> Result<(), TigerError> {
let result_0 = quote.get_timeline_history(TimelineHistoryRequest { symbols: Some(vec!["AAPL".into()]), ..Default::default() }).await?;
Ok(())
}
Response example
[
{
"symbol": "AAPL",
"period": "day",
"pre_close": 192.53,
"intraday": null,
"pre_hours": null,
"after_hours": null
}
]get_trade_tick
get_trade_tickSignature
pub async fn get_trade_tick( &self, req: TradeTickRequest, ) -> Result<Vec<TradeTick>, TigerError>
Description
Stock ticks; symbols required; indexes, limit, session optional.
Parameters
| Parameter | Rust type | Requirement | SDK default |
|---|---|---|---|
| req.symbols | Option<Vec<String>> | Required by server; SDK does not pre-validate | None (omitted) |
| req.begin_index | Option<i32> | Optional | None (omitted) |
| req.end_index | Option<i32> | Optional | None (omitted) |
| req.limit | Option<i32> | Optional | None (omitted) |
| req.trade_session | Option<String> | Optional | None (omitted) |
| req.lang | Option<String> | Optional | None (omitted) |
Return
Result<Vec<TradeTick>, TigerError>
| Field | Type | Description |
|---|---|---|
| symbol | String | Stock symbol |
| begin_index | i64 | Begin index |
| end_index | i64 | End index |
| items | Vec | Data items |
Example
use std::sync::Arc;
use tigeropen::client::http_client::HttpClient;
use tigeropen::config::ClientConfig;
use tigeropen::error::TigerError;
use tigeropen::model::order::*;
use tigeropen::model::quote::*;
use tigeropen::model::quote_requests::*;
use tigeropen::model::trade_requests::*;
use tigeropen::push::*;
use tigeropen::quote::QuoteClient;
use tigeropen::trade::TradeClient;
async fn example_get_trade_tick(config: ClientConfig, quote: &QuoteClient, trade: &TradeClient, push: &Arc<PushClient>) -> Result<(), TigerError> {
let result_0 = quote.get_trade_tick(TradeTickRequest { symbols: Some(vec!["AAPL".into()]), ..Default::default() }).await?;
Ok(())
}
Response example
[
{
"symbol": "AAPL",
"begin_index": 0,
"end_index": 30,
"items": [
{
"time": 1738180750000,
"price": 195.5,
"volume": 100,
"type": "+"
},
{
"time": 1738180745000,
"price": 195.49,
"volume": 50,
"type": "-"
}
]
}
]get_quote_depth
get_quote_depthSignature
pub async fn get_quote_depth(&self, req: QuoteDepthRequest) -> Result<Vec<Depth>, TigerError>
Description
Order book; symbols required. Requires the applicable depth license.
Parameters
| Parameter | Rust type | Requirement | SDK default |
|---|---|---|---|
| req.symbols | Option<Vec<String>> | Required by server; SDK does not pre-validate | None (omitted) |
| req.market | Option<String> | Optional | None (omitted) |
| req.trade_session | Option<String> | Optional | None (omitted) |
| req.lang | Option<String> | Optional | None (omitted) |
Return
Result<Vec<Depth>, TigerError>
| Field | Type | Description |
|---|---|---|
| symbol | String | Stock symbol |
| asks | Vec | Ask levels |
| bids | Vec | Bid levels |
Example
use std::sync::Arc;
use tigeropen::client::http_client::HttpClient;
use tigeropen::config::ClientConfig;
use tigeropen::error::TigerError;
use tigeropen::model::order::*;
use tigeropen::model::quote::*;
use tigeropen::model::quote_requests::*;
use tigeropen::model::trade_requests::*;
use tigeropen::push::*;
use tigeropen::quote::QuoteClient;
use tigeropen::trade::TradeClient;
async fn example_get_quote_depth(config: ClientConfig, quote: &QuoteClient, trade: &TradeClient, push: &Arc<PushClient>) -> Result<(), TigerError> {
let result_0 = quote.get_quote_depth(QuoteDepthRequest { symbols: Some(vec!["AAPL".into()]), ..Default::default() }).await?;
Ok(())
}
Response example
[
{
"symbol": "AAPL",
"asks": [
{
"price": 195.51,
"volume": 200
},
{
"price": 195.52,
"volume": 350
}
],
"bids": [
{
"price": 195.49,
"volume": 150
},
{
"price": 195.48,
"volume": 400
}
]
}
]get_stock_broker
get_stock_brokerSignature
pub async fn get_stock_broker( &self, req: StockBrokerRequest, ) -> Result<Option<StockBroker>, TigerError>
Description
Broker queue; symbol required; HK permissions apply.
Parameters
| Parameter | Rust type | Requirement | SDK default |
|---|---|---|---|
| req.symbol | Option<String> | Required by server; SDK does not pre-validate | None (omitted) |
| req.limit | Option<i32> | Optional | None (omitted) |
| req.sec_type | Option<String> | Optional | None (omitted) |
| req.lang | Option<String> | Optional | None (omitted) |
Return
Result<Option<StockBroker>, TigerError>
| Field | Type | Description |
|---|---|---|
| symbol | String | Stock symbol |
| level_ask_list | Vec | Broker ask levels |
| level_bid_list | Vec | Broker bid levels |
Example
use std::sync::Arc;
use tigeropen::client::http_client::HttpClient;
use tigeropen::config::ClientConfig;
use tigeropen::error::TigerError;
use tigeropen::model::order::*;
use tigeropen::model::quote::*;
use tigeropen::model::quote_requests::*;
use tigeropen::model::trade_requests::*;
use tigeropen::push::*;
use tigeropen::quote::QuoteClient;
use tigeropen::trade::TradeClient;
async fn example_get_stock_broker(config: ClientConfig, quote: &QuoteClient, trade: &TradeClient, push: &Arc<PushClient>) -> Result<(), TigerError> {
let result_0 = quote.get_stock_broker(StockBrokerRequest { symbol: Some("AAPL".into()), ..Default::default() }).await?;
Ok(())
}
Response example
{
"symbol": "AAPL",
"level_ask_list": [
{
"level": 1,
"broker_count": 3,
"broker_ids": [
"5860",
"4374",
"6998"
]
}
],
"level_bid_list": [
{
"level": 1,
"broker_count": 2,
"broker_ids": [
"6998",
"4374"
]
}
]
}get_capital_flow
get_capital_flowSignature
pub async fn get_capital_flow( &self, symbol: &str, market: &str, period: &str, ) -> Result<Option<CapitalFlow>, TigerError>
Description
Capital flow; all arguments required; licensed data.
Parameters
| Parameter | Rust type | Requirement | SDK default |
|---|---|---|---|
| symbol | &str | Required by Rust type | None |
| market | &str | Required by Rust type | None |
| period | &str | Required by Rust type | None |
Return
Result<Option<CapitalFlow>, TigerError>
| Field | Type | Description |
|---|---|---|
| symbol | String | Stock symbol |
| period | String | Period |
| items | Vec | Data items |
Example
use std::sync::Arc;
use tigeropen::client::http_client::HttpClient;
use tigeropen::config::ClientConfig;
use tigeropen::error::TigerError;
use tigeropen::model::order::*;
use tigeropen::model::quote::*;
use tigeropen::model::quote_requests::*;
use tigeropen::model::trade_requests::*;
use tigeropen::push::*;
use tigeropen::quote::QuoteClient;
use tigeropen::trade::TradeClient;
async fn example_get_capital_flow(config: ClientConfig, quote: &QuoteClient, trade: &TradeClient, push: &Arc<PushClient>) -> Result<(), TigerError> {
let result_0 = quote.get_capital_flow("AAPL", "US", "day").await?;
Ok(())
}
Response example
{
"symbol": "AAPL",
"period": "day",
"items": [
{
"netInflow": -109057032.20,
"time": "2025-07-28",
"timestamp": 1753660800000
},
{
"netInflow": 52340018.55,
"time": "2025-07-25",
"timestamp": 1753488000000
}
]
}get_capital_distribution
get_capital_distributionSignature
pub async fn get_capital_distribution( &self, symbol: &str, market: &str, ) -> Result<Option<CapitalDistribution>, TigerError>
Description
Capital distribution; both arguments required.
Parameters
| Parameter | Rust type | Requirement | SDK default |
|---|---|---|---|
| symbol | &str | Required by Rust type | None |
| market | &str | Required by Rust type | None |
Return
Result<Option<CapitalDistribution>, TigerError>
| Field | Type | Description |
|---|---|---|
| symbol | String | Stock symbol |
| net_inflow | f64 | Net inflow |
| in_all | f64 | Total inflow |
| in_big | f64 | Large order inflow |
| in_mid | f64 | Medium order inflow |
| in_small | f64 | Small order inflow |
| out_all | f64 | Total outflow |
| out_big | f64 | Large order outflow |
| out_mid | f64 | Medium order outflow |
| out_small | f64 | Small order outflow |
Example
use std::sync::Arc;
use tigeropen::client::http_client::HttpClient;
use tigeropen::config::ClientConfig;
use tigeropen::error::TigerError;
use tigeropen::model::order::*;
use tigeropen::model::quote::*;
use tigeropen::model::quote_requests::*;
use tigeropen::model::trade_requests::*;
use tigeropen::push::*;
use tigeropen::quote::QuoteClient;
use tigeropen::trade::TradeClient;
async fn example_get_capital_distribution(config: ClientConfig, quote: &QuoteClient, trade: &TradeClient, push: &Arc<PushClient>) -> Result<(), TigerError> {
let result_0 = quote.get_capital_distribution("AAPL", "US").await?;
Ok(())
}
Response example
{
"symbol": "AAPL",
"net_inflow": -52340018.55,
"in_all": 2850000000.0,
"in_big": 1520000000.0,
"in_mid": 830000000.0,
"in_small": 500000000.0,
"out_all": 2902340018.55,
"out_big": 1600000000.0
}get_short_interest
get_short_interestSignature
pub async fn get_short_interest( &self, req: ShortInterestRequest, ) -> Result<Vec<ShortInterest>, TigerError>
Description
Short interest; symbols required; primarily US.
Parameters
| Parameter | Rust type | Requirement | SDK default |
|---|---|---|---|
| req.symbols | Option<Vec<String>> | Required by server; SDK does not pre-validate | None (omitted) |
| req.lang | Option<String> | Optional | None (omitted) |
Return
Result<Vec<ShortInterest>, TigerError>
| Field | Type | Description |
|---|---|---|
| symbol | String | Stock symbol |
| settlement_date | String | Settlement date |
| short_interest | f64 | Short interest shares |
| avg_daily_volume | f64 | Average daily volume |
| days_to_cover | f64 | Days to cover |
| percent_of_float | f64 | Percent of float |
| short_interest_previous | f64 | Previous short interest |
| percent_change | f64 | Percent change |
Example
use std::sync::Arc;
use tigeropen::client::http_client::HttpClient;
use tigeropen::config::ClientConfig;
use tigeropen::error::TigerError;
use tigeropen::model::order::*;
use tigeropen::model::quote::*;
use tigeropen::model::quote_requests::*;
use tigeropen::model::trade_requests::*;
use tigeropen::push::*;
use tigeropen::quote::QuoteClient;
use tigeropen::trade::TradeClient;
async fn example_get_short_interest(config: ClientConfig, quote: &QuoteClient, trade: &TradeClient, push: &Arc<PushClient>) -> Result<(), TigerError> {
let result_0 = quote.get_short_interest(ShortInterestRequest { symbols: Some(vec!["AAPL".into()]), ..Default::default() }).await?;
Ok(())
}
Response example
[
{
"symbol": "AAPL",
"settlement_date": "2025-01-15",
"short_interest": 98520000.0,
"avg_daily_volume": 58263100.0,
"days_to_cover": 1.69,
"percent_of_float": 0.64,
"short_interest_previous": 95130000.0,
"percent_change": 3.56
}
]get_trade_rank
get_trade_rankSignature
pub async fn get_trade_rank( &self, req: TradeRankRequest, ) -> Result<Vec<TradeRankItem>, TigerError>
Description
Trading ranking; market required.
Parameters
| Parameter | Rust type | Requirement | SDK default |
|---|---|---|---|
| req.market | Option<String> | Required by server; SDK does not pre-validate | None (omitted) |
| req.lang | Option<String> | Optional | None (omitted) |
Return
Result<Vec<TradeRankItem>, TigerError>
| Field | Type | Description |
|---|---|---|
| symbol | String | Stock symbol |
| name | String | Name |
| latest_price | f64 | Latest price |
| change | f64 | Price change |
| change_rate | f64 | Change rate |
| volume | i64 | Volume |
| amount | f64 | Turnover amount |
Example
use std::sync::Arc;
use tigeropen::client::http_client::HttpClient;
use tigeropen::config::ClientConfig;
use tigeropen::error::TigerError;
use tigeropen::model::order::*;
use tigeropen::model::quote::*;
use tigeropen::model::quote_requests::*;
use tigeropen::model::trade_requests::*;
use tigeropen::push::*;
use tigeropen::quote::QuoteClient;
use tigeropen::trade::TradeClient;
async fn example_get_trade_rank(config: ClientConfig, quote: &QuoteClient, trade: &TradeClient, push: &Arc<PushClient>) -> Result<(), TigerError> {
let result_0 = quote.get_trade_rank(TradeRankRequest { market: Some("US".into()), ..Default::default() }).await?;
Ok(())
}
Response example
[
{
"symbol": "AAPL",
"name": "Apple Inc",
"latest_price": 195.5,
"change": 2.97,
"change_rate": 0.0154,
"volume": 58263100,
"amount": 11329847520.0
}
]Updated about 13 hours ago
