> For the complete documentation index, see [llms.txt](https://weidex.gitbook.io/weidex-v2/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://weidex.gitbook.io/weidex-v2/smart-contracts/exchangebatchtrade.sol.md).

# ExchangeBatchTrade.sol

## Functions

### cancelMultipleOrders()

This function **cancels an array of orders**, but only if the message sender is **the** **same as** the original order signer.

```
function cancelMultipleOrders(Order[] memory orders, bytes[] memory signatures) public
```

| parameter  | type                   |
| ---------- | ---------------------- |
| orders     | array of Order structs |
| signatures | array of signatures    |

### takeAllOrRevert()

This function executes multiple trades based on the input orders and signatures. It reverts if one or more trades fail.

```
function takeAllOrRevert(Order[] memory orders, bytes[] memory signatures) public
```

| parameter  | type                   |
| ---------- | ---------------------- |
| orders     | array of Order structs |
| signatures | array of signatures    |

### takeAllPossible()

Executes multiple trades based on the input orders and signatures, but **does not** revert if one or more trades fail.

```
function takeAllPossible(Order[] memory orders, bytes[] memory signatures) public
```

| parameter  | type                   |
| ---------- | ---------------------- |
| orders     | array of Order structs |
| signatures | array of signatures    |
