Back to trackQuant Developer
Next
Track progress147 items
OOP Design

Observer on a Market-Data Bus

Premium
Difficulty

Asked at Hudson River Trading

Theory: Order Books and Matching

Read the problem, hints and solution here. The editor needs a bigger screen: open this page on a laptop to write and run your code.

Available in Python and C++. You are solving it in Python. Switch to C++

xxxxxxxxx xxx, x xxxxxx-xxxx xxx xxxx xxxx xxx xxxx xxx xx xxxxx xxxxxxxx xxxx xxxxxxxxxx. xxxxxxxxxxx xxx xxxxxx xxxxx x xxxx xx xxxxx xxxxxxxxx: x xxxxxxxx xxxx xxxx xxx xxxx xxxxxxxxxxxx xxxxxx xxxx xxxxxx xxx xxxxxxxx, xxxxx xxx xxx xx xxxx-xxx xxxxxxx xxx xxxx.

xxxxxxxxx xxx xxxx xxxxxxxxxx xxxxx x xxxxxxxx xxxxxxx xx xxx xxxx xx xxx xxxxxx xx x xxxx. xxxxxxx xxx xxxx xxxxx xxxxxx xxx xxxxx xxx xxxxxxxxxx x xxxxxxx xxx.

xxx xxx xxxxx xxxxxxx:

  • xxxxxxxxx(xxxx, xxxxxxxx): xxxxxxxx. x xxxxxxxx xxxx xxxxxxxx xxx xxxxxxxx xxx xxxxx xxx xxxxxxxx xxxxxxxx.
  • xxxxxxxxxxx(xxxx): xxxxxx; xxxxxx xxxxxxx xx xxx xxxxx.
  • xxxxxxx(xxxx): xxxx xxxxx xxxxxxxxxx xxxx xxx xxxx, xx xxxxxxxxxxxx xxxxx, xxx xxxxxx xxx xxxx xxxxxxxxx xxxx xxxxxxxx xxxxxxx.
  • xxxxxxxxxxx(): xxx xxxxx, xx xxxxxxxxxxxx xxxxx.
xxxxx xxx:
    xxx xxxxxxxxx(xxxx, xxxx: xxx, xxxxxxxx: xxxxxxxx[[xxx], xxxxxx]) -> xxxx: ...
    xxx xxxxxxxxxxx(xxxx, xxxx: xxx) -> xxxx: ...
    xxx xxxxxxx(xxxx, xxxx: xxx) -> xxx: ...
    xxx xxxxxxxxxxx(xxxx) -> xxxx[xxx]: ...

x xxxxxxxx xx xxx xxxxxxxx, xxx xxxxxxxxxxx xxxxxxx xxxx xx xxx xxxx xxx xxxxx. xxxxxxxxxxx() xxxxxxx x xxx xxxx xx xxx xxxxx.

xxx xxxxx xxxxxx xxxxxxx xxxx xxxxxx x xxxxxxx, xxx xxxx xxx xxxxxxxxxxxx xxx xxx xxxx xxxx:

  • x xxxxxxxxxx xxxxx xxxxxx xxx xxxx xxxx xxx xxxxxxx xx: xx xxx xxx xxxxxxxxxx xxxx xxx xxxx xxxxx;
  • x xxxxxxxxxx xxxxxxx xxxxxx xxx xxxx xxxx xxx xxxxxxx xx xxxxxx, xxxx xx xxx xxxx xxx xxx xxxxxxx xx xxx.

xxxxxxxx

xxxx = []
xxx = xxx()
xxx.xxxxxxxxx('x', xxxxxx x: (xxxx.xxxxxx(('x', x)), xxx.xxxxxxxxxxx('x')))
xxx.xxxxxxxxx('x', xxxxxx x: xxxx.xxxxxx(('x', x)))
xxx.xxxxxxxxx('x', xxxxxx x: xxxx.xxxxxx(('x', x)))

xxx.xxxxxxx(x)   # x, xxx 'x' xxxxx xxxxx xxxxx xx
xxxx             # [('x', x), ('x', x)]

xxxxxxxxxxx

  • xx xxx xxxxx xx xxxxx xxxx xxx xxxxxxx xxxxxx xxx xxx xxxxxxxxxx xx xxxxxxx xx xxx xx. x xxxxx xxxxxxxx xxxx xxx xxxxx xxxx xxx xxxxx xxx xxxxxx; xxxxxxxxx xxx xxxx xxxxxxxxxx xxxxx xxxxxxxx.
  • xxxxxxxxxxxxx xxxxxxxxx xxxx xx xxx xxxxx xxxxxxx xxxx xx xxx xxxxxx xxx xx xxx xx xxxxx. x xxxxxxxx xxxxxxxx xxxx xxxx xxx xxxxxxxxxxx xxxx xxxxxxx xx xx xxxxx xxxxxxxxxx.
  • xxxxxxx xxxxxxx xxx xxxxxx xx xxxxxxxxx xxxxxxx, xxx xxx xxxxxx xx xxxxxxxxxxx.

This problem is only available to subscribers.

Language:
Python 3.12C++23
Bus

Unlock the problem to run it against the tests.