Examples on how to determine opening prices 
iDog
How to determine the opening price:
-  method 1: don't calc aggregated quantities; check from the best bid and best ask, step by step, until bid price and ask price meet.
 -  method 2: calc aggregated quantities, find the two possible prices, then calc from there.
 
Example:
| Ask | Price | Bid | 
|   | market | 4,000 | 
|   |   |   | 
| 8,000 | 502 | 1,000 | 
| 20,000 | 501 | 8,000 | 
| 4,000 | 500 | 10,000 | 
| 2,000 | 499 | 8,000 | 
| 4,000 | 498 | 30,000 | 
|   |   |   | 
| 6,000 | market |   | 
 Using method 1: 
| Ask | Price | Bid | 
|   | market | 4,000 | 
|   |   |   | 
| 8,000 | 502 | 1,000 | 
| 20,000 | 501 | 8,000 | 
| 4,000 | 500 | 10,000 | 
| 2,000 | 499 | 8,000 | 
| 4,000 | 498 | 30,000 | 
|   |   |   | 
| 6,000 | market |   | 
| Ask | Price | Bid | 
|   | market | 4,000 | 
|   |   |   | 
| 8,000 | 502 | 1,000 | 
| 20,000 | 501 | 8,000 | 
| 4,000 | 500 | 10,000 | 
| 2,000 | 499 | 8,000 | 
| 4,000 | 498 | 30,000 | 
|   |   |   | 
6,000 2,000 | market |   | 
| Ask | Price | Bid | 
|   | market | 4,000 | 
|   |   |   | 
| 8,000 | 502 | 1,000 | 
| 20,000 | 501 | 8,000 | 
| 4,000 | 500 | 10,000 | 
| 2,000 | 499 | 8,000 | 
| 4,000 | 498 | 30,000 | 
|   |   |   | 
6,000 2,000 1,000 | market |   | 
| Ask | Price | Bid | 
|   | market | 4,000 | 
|   |   |   | 
| 8,000 | 502 | 1,000 | 
| 20,000 | 501 | 8,000 7,000 | 
| 4,000 | 500 | 10,000 | 
| 2,000 | 499 | 8,000 | 
| 4,000 | 498 | 30,000 | 
|   |   |   | 
6,000 2,000 1,000 | market |   | 
| Ask | Price | Bid | 
|   | market | 4,000 | 
|   |   |   | 
| 8,000 | 502 | 1,000 | 
| 20,000 | 501 | 8,000 7,000 3,000 | 
| 4,000 | 500 | 10,000 | 
| 2,000 | 499 | 8,000 | 
4,000 | 498 | 30,000 | 
|   |   |   | 
6,000 2,000 1,000 | market |   | 
| Ask | Price | Bid | 
|   | market | 4,000 | 
|   |   |   | 
| 8,000 | 502 | 1,000 | 
| 20,000 | 501 | 8,000 7,000 3,000 1,000 | 
| 4,000 | 500 | 10,000 | 
2,000 | 499 | 8,000 | 
4,000 | 498 | 30,000 | 
|   |   |   | 
6,000 2,000 1,000 | market |   | 
| Ask | Price | Bid | 
|   | market | 4,000 | 
|   |   |   | 
| 8,000 | 502 | 1,000 | 
| 20,000 | 501 | 8,000 7,000 3,000 1,000 | 
4,000 3,000 | 500 | 10,000 | 
2,000 | 499 | 8,000 | 
4,000 | 498 | 30,000 | 
|   |   |   | 
6,000 2,000 1,000 | market |   | 
| Ask | Price | Bid | 
|   | market | 4,000 | 
|   |   |   | 
| 8,000 | 502 | 1,000 | 
| 20,000 | 501 | 8,000 7,000 3,000 1,000 | 
4,000 3,000 | 500 | 10,000 7,000 | 
2,000 | 499 | 8,000 | 
4,000 | 498 | 30,000 | 
|   |   |   | 
6,000 2,000 1,000 | market |   | 
| Ask | Price | Bid | 
|   | market |   | 
|   |   |   | 
| 8,000 | 502 |   | 
| 20,000 | 501 |   | 
|   | 500 | 7,000 | 
|   | 499 | 8,000 | 
|   | 498 | 30,000 | 
|   |   |   | 
|   | market |   | 
 Using method 2 
| Ask | Price | Bid | 
| aggregated | quantity | quantity | aggregated | 
|   |   | market | 4,000 | 4,000 | 
|   |   |   |   |   | 
| 44,000 | 8,000 | 502 | 1,000 | 5,000 | 
| 36,000 | 20,000 | 501 | 8,000 | 13,000 | 
| 16,000 | 4,000 | 500 | 10,000 | 23,000 | 
| 12,000 | 2,000 | 499 | 8,000 | 31,000 | 
| 10,000 | 4,000 | 498 | 30,000 | 61,000 | 
|   |   |   |   |   | 
| 6,000 | 6,000 | market |   |   | 
Possible opening price: 500 or 501. So ask quantities at prices less than 500 and bid quantities at prices greater than 501 should all be executed.
| Ask | Price | Bid | 
| aggregated | quantity | quantity | aggregated | 
|   |   | market | 4,000 | 4,000 | 
|   |   |   |   |   | 
|   | 8,000 | 502 | 1,000 | 5,000 | 
|   | 20,000 | 501 | 8,000 |   | 
|   | 4,000 | 500 | 10,000 |   | 
12,000 7,000 | 2,000 | 499 | 8,000 |   | 
10,000 | 4,000 | 498 | 30,000 |   | 
|   |   |   |   |   | 
6,000 | 6,000 | market |   |   | 
| Ask | Price | Bid | 
| aggregated | quantity | quantity | aggregated | 
|   |   | market | 4,000 | 4,000 | 
|   |   |   |   |   | 
|   | 8,000 | 502 | 1,000 | 5,000 | 
|   | 20,000 | 501 | 8,000 1,000 |   | 
|   | 4,000 | 500 | 10,000 |   | 
12,000 7,000 | 2,000 | 499 | 8,000 |   | 
10,000 | 4,000 | 498 | 30,000 |   | 
|   |   |   |   |   | 
6,000 | 6,000 | market |   |   | 
| Ask | Price | Bid | 
| aggregated | quantity | quantity | aggregated | 
|   |   | market | 4,000 | 4,000 | 
|   |   |   |   |   | 
|   | 8,000 | 502 | 1,000 | 5,000 | 
|   | 20,000 | 501 | 8,000 1,000 |   | 
|   | 4,000 3,000 | 500 | 10,000 |   | 
12,000 7,000 | 2,000 | 499 | 8,000 |   | 
10,000 | 4,000 | 498 | 30,000 |   | 
|   |   |   |   |   | 
6,000 | 6,000 | market |   |   | 
| Ask | Price | Bid | 
| aggregated | quantity | quantity | aggregated | 
|   |   | market | 4,000 | 4,000 | 
|   |   |   |   |   | 
|   | 8,000 | 502 | 1,000 | 5,000 | 
|   | 20,000 | 501 | 8,000 1,000 |   | 
|   | 4,000 3,000 | 500 | 10,000 7,000 |   | 
12,000 7,000 | 2,000 | 499 | 8,000 |   | 
10,000 | 4,000 | 498 | 30,000 |   | 
|   |   |   |   |   | 
6,000 | 6,000 | market |   |   | 
| Ask | Price | Bid | 
| aggregated | quantity | quantity | aggregated | 
|   |   | market |   |   | 
|   |   |   |   |   | 
|   | 8,000 | 502 |   |   | 
|   | 20,000 | 501 |   |   | 
|   |   | 500 | 7,000 |   | 
|   |   | 499 | 8,000 |   | 
|   |   | 498 | 30,000 |   | 
|   |   |   |   |   | 
|   |   | market |   |   |