# 智能选股

> 智能选股功能

## 接口基本信息

- **接口名称**: `smart_stock_picking`
- **功能描述**: 智能选股——用自然语言描述选股条件，返回符合条件的证券列表
- **数据更新频率**: 实时
- **请求方法**: `POST`
- **API 路径**: `https://api.wanxingai.com/openapi/smart_stock_picking/`

---

## 输入参数说明

| 参数名 | 类型 | 必选 | 默认值 | 描述 | 示例 |
| --- | --- | --- | --- | --- | --- |
| `searchstring` | str | **是** | — | 自然语言选股描述 | `近一个月涨幅最大的前5只A股` |
| `searchtype` | str | 否 | `"stock"` | 证券类型：`stock`/ `US_stock`/ `index`/ `NEEQ`/ `HK_stock`/ `fund` | `stock` |

---

### 返回数据说明

返回 JSON 数组，每个元素包含 `table` 对象：

| 字段名 | 类型 | 描述 |
| --- | --- | --- |
| `table.股票代码` | array[str] | 标准股票代码 |
| `table.股票简称` | array[str] | 股票简称 |
| `table.股票市场类型` | array[str] | 所属市场，如 a股 |
| `table.区间涨跌幅:前复权[YYYYMMDD-YYYYMMDD]` | array[float] | 指定区间涨跌幅（%），字段名包含日期区间 |
| `table.区间涨跌幅:前复权排名[YYYYMMDD-YYYYMMDD]` | array[str] | 排名，格式 "名次/总数"，如 "1/5516" |
| `table.区间涨跌幅:前复权排名名次[YYYYMMDD-YYYYMMDD]` | array[int] | 排名名次数字 |
| `table.区间涨跌幅:前复权排名基数[YYYYMMDD-YYYYMMDD]` | array[int] | 排名总基数 |

---

### 支持的选股条件类型

| 类型 | 示例描述 |
| --- | --- |
| 涨幅条件 | 近一个月涨幅超过 20% 的科技股 |
| 估值条件 | 市盈率低于 20 的低估值股票 |
| 财务条件 | ROE 大于 15% 的优质股票 |
| 市值条件 | 市值超过 1000 亿的大盘股 |
| 行业条件 | 新能源行业的龙头股 |
| 技术条件 | 突破 60 日均线的股票 |
| 资金条件 | 北向资金大幅流入的股票 |

---

## 使用示例

```python
import requests

url = "https://api.wanxingai.com/openapi/smart_stock_picking/"
headers = {
    "Content-Type": "application/json",
    "Authorization": "Bearer sk-********"
}
payload = {
    "searchstring": "个股热度最高的前10只A股",
    "searchtype": "stock"
}

resp = requests.post(url, json=payload, headers=headers)
print(resp.json())
```

```java
import java.net.http.*;
import java.net.URI;

HttpClient client = HttpClient.newHttpClient();
String json = "{
     "searchstring": "个股热度最高的前10只A股",
     "searchtype": "stock"
}";

HttpRequest request = HttpRequest.newBuilder()
    .uri(URI.create("https://api.wanxingai.com/openapi/smart_stock_picking/"))
    .header("Content-Type", "application/json")
    .header("Authorization", "Bearer sk-********")
    .POST(HttpRequest.BodyPublishers.ofString(json))
    .build();

HttpResponse response = client.send(request, HttpResponse.BodyHandlers.ofString());
System.out.println(response.body());
```

```curl
curl -X POST https://api.wanxingai.com/openapi/smart_stock_picking/ \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer sk-********" \
  -d '{"searchstring": "个股热度最高的前10只A股", "searchtype": "stock"}'
```

### 注意事项

1. table 字段名包含**动态日期区间**后缀，使用时需注意解析字段名以获取具体日期范围
2. 返回字段随 searchstring 变化而动态变化
