## 提示

- `live-or-trading-module-only`
- `backtest-only`


## 原型

```python
get_open_orders(security=None)
```

## 释义

get_open_orders 是 PTrade 中用于获取未完成订单的接口。

研究：不支持；回测：支持；模拟：官方目录未明确；实盘：支持。

## 参数

| 参数 | 是否必填 | 官方原始定义 |
|---|---:|---|
| `security` | 否 | security=None |

## 返回值

返回一个list，该list中包含多个Order对象(list[Order,...])。

[&lt;Order {'id': '52e6a3f8a2b7468e92258c52dfcb6d42', 'dt': datetime.datetime(2025, 2, 21, 11, 25, 1, 229575), 'priceGear': 0, 'limit': 34.1, 'symbol': '600570.XSHG', 'amount': 1000, 'created': datetime.datetime(2025, 2, 21, 11, 25, 1, 229575), 'filled': 0, 'status': '2', 'entrust_no': '3596', 'cancel_entrust_no': None}&gt;]

## 示例

```python
def initialize(context):

g.security = ['600570.SS', '000001.SZ']

set_universe(g.security)

def handle_data(context, data):

for _sec in g.security:

_id = order(_sec, 100, limit_price = 30)

# 当运行周期为分钟则可获取本周期及之前所有未完成的订单

dict_list = get_open_orders()

log.info(dict_list)

# 当运行周期为天，可在after_trading_end中调用此函数获取当天未完成的订单

def after_trading_end(context, data):

dict_list = get_open_orders()

log.info(dict_list)
```

## 详细说明

get_open_orders(security=None)

### 使用场景

该函数仅在回测、交易模块可用

### 接口说明

该接口用于获取当天所有未完成的订单，或按条件获取指定未完成的订单。

### 注意事项

该接口仅支持获取本策略内的订单

未完成的状态(status(str))包括以下类型:
'0' -- "未报"
'1' -- "待报"
'2' -- "已报"
'3' -- "已报待撤"
'4' -- "部成待撤"
'7' -- "部成"

### 参数详细说明

security：标的代码，如'600570.SS'，不传时默认为获取所有未成交订单(str)；

### 返回值

返回一个list，该list中包含多个Order对象(list[Order,...])。

[&lt;Order {'id': '52e6a3f8a2b7468e92258c52dfcb6d42', 'dt': datetime.datetime(2025, 2, 21, 11, 25, 1, 229575), 'priceGear': 0, 'limit': 34.1, 'symbol': '600570.XSHG', 'amount': 1000, 'created': datetime.datetime(2025, 2, 21, 11, 25, 1, 229575), 'filled': 0, 'status': '2', 'entrust_no': '3596', 'cancel_entrust_no': None}&gt;]
