# Parameter patterns

### Cartesian Product of Patterns <a href="#cartesian-product-of-patterns" id="cartesian-product-of-patterns"></a>

If the params lists contain more than one element, the resulting pattern will be constructed as a cartesian product of each element of the lists, i.e:

`pattern = exchange1,exchange2:instrument_class:instrument1,instrument2`

will be equivalent to the union of 4 patterns:

* `pattern1 = exchange1:instrument_class:instrument1`
* `pattern2 = exchange1:instrument_class:instrument2`
* `pattern3 = exchange2:instrument_class:instrument1`
* `pattern4 = exchange2:instrument_class:instrument`

## Union of Patterns <a href="#union-of-patterns" id="union-of-patterns"></a>

Multiple patterns can also be combined with the `+` operator:\
\
where:

`pattern = pattern1+pattern2`

* `pattern1 = <exchange1>:<instrument_class1>:<instrument1>`
* `pattern2 = <exchange2>:<instrument_class2>:<instrument2>`

<br>
