Stock Screener

market_scanner

Signature


pub async fn market_scanner( &self, req: MarketScannerRequest, ) -> Result<Option<ScannerResult>, TigerError>

Description

v1; market required; paging/cursor/filter JSON/sort optional; scanner permission.

Parameters

ParameterRust typeRequirementSDK default
req.marketStringRequiredNone
req.pageOption<i32>OptionalNone (omitted)
req.page_sizeOption<i32>OptionalNone (omitted)
req.cursor_idOption<String>OptionalNone (omitted)
req.base_filter_listOption<Vec<serde_json::Value>>OptionalNone (omitted)
req.accumulate_filter_listOption<Vec<serde_json::Value>>OptionalNone (omitted)
req.financial_filter_listOption<Vec<serde_json::Value>>OptionalNone (omitted)
req.multi_tags_filter_listOption<Vec<serde_json::Value>>OptionalNone (omitted)
req.sort_field_dataOption<serde_json::Value>OptionalNone (omitted)
req.multi_tags_fieldsOption<Vec<String>>OptionalNone (omitted)

Return

  • QuoteClient: Result<Option<ScannerResult>, TigerError>. page: i32, total_page: i32, total_count: i32, page_size: i32, cursor_id: String, items: Vec

Paging and categorized result 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_market_scanner(config: ClientConfig, quote: &QuoteClient, trade: &TradeClient, push: &Arc<PushClient>) -> Result<(), TigerError> {

    let result_0 = quote.market_scanner(MarketScannerRequest { market: "US".into(), ..Default::default() }).await?;

    Ok(())

}

Response example

{
  "page": 1,
  "total_page": 5,
  "total_count": 98,
  "page_size": 20,
  "cursor_id": "abc123",
  "items": [{"symbol":"AAPL","market":"US","latest_price":195.50}]
}

get_market_scanner_tags

Signature


pub async fn get_market_scanner_tags( &self, req: MarketScannerTagsRequest, ) -> Result<Vec<MarketScannerTagGroup>, TigerError>

Description

Optional market/fields; Rust multi_tags_fields maps to wire multi_tag_field_list.

Parameters

ParameterRust typeRequirementSDK default
req.marketOption<String>OptionalNone (omitted)
req.multi_tags_fieldsOption<Vec<String>>OptionalNone (omitted)
req.langOption<String>OptionalNone (omitted)

Return

  • QuoteClient: Result<Vec<MarketScannerTagGroup>, TigerError>. market: String, multi_tag_field: String, tag_list: Vec

market/field/tag list.

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_market_scanner_tags(config: ClientConfig, quote: &QuoteClient, trade: &TradeClient, push: &Arc<PushClient>) -> Result<(), TigerError> {

    let result_0 = quote.get_market_scanner_tags(MarketScannerTagsRequest { ..Default::default() }).await?;

    Ok(())

}

Response example

[
  {
    "market": "",
    "multi_tag_field": "",
    "tag_list": []
  }
]


Did this page help you?