选股器
选股器
功能说明
执行选股器筛选。
方法签名
func (c *QuoteClient) MarketScanner(req model.MarketScannerRequest) (*model.ScannerResult, error)参数
model.MarketScannerRequest
| 参数 | 类型 | 必填 | 默认值 | 说明 |
|---|---|---|---|---|
Market | string | 是 | 始终序列化 | 无;可选值:ALL, US, HK, CN, SG |
Page | int | 否 | 空值省略 | 页码 |
PageSize | int | 否 | 空值省略 | 每页数量 |
CursorID | string | 否 | 空值省略 | 上一页返回的游标 |
BaseFilterList | []map[string]interface{} | 否 | 空值省略 | 基础指标筛选器 |
AccumulateFilterList | []map[string]interface{} | 否 | 空值省略 | 累计指标筛选器 |
FinancialFilterList | []map[string]interface{} | 否 | 空值省略 | 财务指标筛选器 |
MultiTagsFilterList | []map[string]interface{} | 否 | 空值省略 | 多标签筛选器 |
SortFieldData | map[string]interface{} | 否 | 空值省略 | 排序字段配置 |
MultiTagsFields | []string | 否 | 空值省略 | 要返回的多标签字段 |
返回
(*model.ScannerResult, error)。关键字段来自 model.ScannerResult:
| 字段 | 类型 | JSON 字段 | 说明 |
|---|---|---|---|
Page | int | page | 当前页码 |
TotalPage | int | totalPage | 总页数 |
TotalCount | int | totalCount | 结果总数 |
PageSize | int | pageSize | 每页结果数量 |
CursorID | string | cursorId | 分页游标 |
Items | []ScannerResultItem | items | 扫描结果列表 |
ScannerResultItem 字段 | 类型 | JSON 字段 | 说明 |
|---|---|---|---|
Symbol | string | symbol | 标的代码 |
Market | string | market | 市场代码 |
BaseDataList | []ScannerDataRow | baseDataList | 基础指标数据 |
AccumulateDataList | []ScannerDataRow | accumulateDataList | 累计指标数据 |
FinancialDataList | []ScannerDataRow | financialDataList | 财务指标数据 |
MultiTagDataList | []ScannerDataRow | multiTagDataList | 多标签数据 |
ScannerDataRow 字段 | 类型 | JSON 字段 | 说明 |
|---|---|---|---|
Index | int | index | 指标序号 |
Name | string | name | 指标名称 |
Value | string | value | 指标展示值 |
Data | float64 | data | 指标数值 |
示例
result, err := qc.MarketScanner(model.MarketScannerRequest{
Market: "US",
Page: 1,
PageSize: 20,
MultiTagsFields: []string{"MultiTagField_Industry"},
})
if err != nil {
log.Fatal(err)
}
fmt.Printf("%#v\n", result)返回示例
{"page":0,"totalPage":1,"totalCount":1,"pageSize":20,"cursorId":"next-cursor","items":[{"symbol":"NVDA","market":"US","baseDataList":[{"index":1,"name":"latestPrice","value":"132.15","data":132.15}],"accumulateDataList":[],"financialDataList":[],"multiTagDataList":[]}]}调用频率
基础限流为 10 次/分钟。
获取选股器标签
功能说明
扫描器可用标签。
方法签名
func (c *QuoteClient) GetMarketScannerTags(req model.MarketScannerTagsRequest) ([]model.MarketScannerTagGroup, error)参数
model.MarketScannerTagsRequest
| 参数 | 类型 | 必填 | 默认值 | 说明 |
|---|---|---|---|---|
Market | string | 否 | 空值省略 | 无;可选值:ALL, US, HK, CN, SG |
MultiTagsFields | []string | 是 | 空值省略 | 要查询的多标签字段;JSON 字段为 multi_tag_field_list |
Lang | string | 否 | 空值省略 | 无;可选值:zh_CN, zh_TW, en_US |
返回
([]model.MarketScannerTagGroup, error)。返回数组中每项表示一个市场与标签字段组合:
| 字段 | 类型 | JSON 字段 | 说明 |
|---|---|---|---|
Market | string | market | 市场代码 |
MultiTagField | string | multiTagField | 多标签字段名称 |
TagList | []MarketScannerTag | tagList | 标签列表 |
MarketScannerTag 字段 | 类型 | JSON 字段 | 说明 |
|---|---|---|---|
Field | string | field | 标签字段名称 |
Name | string | name | 标签名称 |
Values | []string | values | 标签可选值 |
示例
result, err := qc.GetMarketScannerTags(model.MarketScannerTagsRequest{
Market: "US",
MultiTagsFields: []string{"MultiTagField_Industry"},
Lang: "en_US",
})
if err != nil {
log.Fatal(err)
}
fmt.Printf("%#v\n", result)调用频率
基础限流为 10 次/分钟。
Updated about 1 month ago
Did this page help you?
