Skip to content

Commit ff48522

Browse files
committed
updates README
1 parent 0c70b6c commit ff48522

File tree

1 file changed

+30
-13
lines changed

1 file changed

+30
-13
lines changed

README.md

Lines changed: 30 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -2,9 +2,9 @@
22

33
# High level
44

5-
Builds a live orderbook from http snapshots from N configurable exchanges and updates it through
6-
websocket depth updates. After a update the best ten asks and bids aswell as well as the spread
7-
are provided through a grpc server endpoint
5+
Builds a live orderbook from http snapshots from N configurable exchanges and then updates the orderbook
6+
through soft real time websocket depth updates. After a update the best ten asks and bids aswell as well
7+
as the spread are provided through a grpc server endpoint
88

99
# Lower level
1010

@@ -13,13 +13,27 @@ pinned threads.
1313

1414
Orderbook is ran with multiplie threads. One for writing to the book the others for reading it.
1515

16+
## Orderbook structure
17+
18+
// todo -- update my reasoning here ... on why i didn't just use a simple red black tree
19+
20+
# Configuration
21+
22+
Exchange boots through a config by running `./orderbook-quoter-server --config=$(CONFIG_LOCATION)`. The
23+
amount of exchanges in the exchange array must be equal to the orderbook's `exchange_count`. Every
24+
`depth` field must be equal in the exchanges and orderbook's depth field should cover the entire
25+
expected trading range for the lifetime of this service.
26+
27+
The larger expected volatility the higher the orderbook's depth needs to be.
28+
1629
# Configuration
1730

1831
Exchange boots through a config by running `./orderbook-quoter-server --config=$(CONFIG_LOCATION)`. The
1932
amount of exchanges in the exchange array must be equal to the orderbook's `exchange_count`. Every
2033
`depth` field must be equal in the exchanges and orderbook's depth field should cover the entire
21-
expected trading range for the lifetime of this service. The larger expected volatility the higher the orderbook's
22-
depth needs to be.
34+
expected trading range for the lifetime of this service.
35+
36+
The larger expected volatility the higher the orderbook's depth needs to be.
2337

2438
```
2539
exchanges:
@@ -85,9 +99,9 @@ Wrapper around exchange stream to handle websocket sinks and other functionality
8599

86100
### DepthDriver
87101

88-
Provides a controlling interface to all exchange streams.
102+
Provides a controlling interface to all exchange streams that push depths.
89103

90-
Future work:
104+
#### Future work:
91105

92106
(1) Needs to handle orderbook reset and orderbook snapshot
93107
retriggering with correct sequencing (https://github.com/binance/binance-spot-api-docs/blob/master/web-socket-streams.md#how-to-manage-a-local-order-book-correctly)
@@ -104,7 +118,7 @@ Has 2 states:
104118

105119
(2) Updating the the orderbook with ws depths and then reading the orderbook for best deals
106120

107-
Future work:
121+
#### Future work:
108122

109123
(1) A state when the orderbook is needs rebuilding if a ExchangeStream websocket connection fails.
110124

@@ -122,24 +136,27 @@ Future work:
122136

123137
#### 1. Depth Generator
124138

125-
Generates depths in many different sequences.
139+
Generates depths in many different sequences: upward, downward through
140+
hacking a brownian motion stochastic process.
126141

127-
Future Work:
142+
##### Future Work:
128143

129144
Oscillating Depths rather then just upward and downward trends
130145

131146
#### 2. Exchange Stubs
132147

133-
Provides both HTTP and websocket endpoints for depths. Leverages depth generator.
148+
Provides both HTTP and websocket endpoints for depths. Leverages depth generator
149+
as a dependency.
134150

135151
#### 3. Exchange Server
136152

137-
Dockerized exchange stub for full integration testing.
153+
Dockerized exchange stub for full integration testing. Leverages exchange stub as a
154+
dependency.
138155

139156
### Quote GRPC Server
140157

141158
Takes the spread and provides the best ten deals and asks to a grpc client
142159

143-
Future work:
160+
#### Future work:
144161

145162
TBD

0 commit comments

Comments
 (0)