Tyler Goodlet
fd8be33f10
Add portal getter, store throttle rate
2021-09-21 15:48:40 -04:00
Tyler Goodlet
03c38a1163
It's a map of symbols to first quote dicts
2021-09-06 09:28:10 -04:00
Tyler Goodlet
dfb9c55944
Compute symbol digits at creation time
...
Add a new factory func `mk_symbol()` to create the initial
instance at feed creation time.
2021-09-06 09:28:10 -04:00
Tyler Goodlet
26cb7aa660
Drop tractor stream shielding use
2021-09-01 09:03:55 -04:00
Tyler Goodlet
1184a4d88e
Cache sample step streams per actor
2021-08-31 09:28:22 -04:00
Tyler Goodlet
bbcce0cab6
Facepalm^2: pass through kwargs
2021-08-30 18:04:19 -04:00
Tyler Goodlet
1e42f58478
Add pause/resume feed api, delegate to msg stream for broadcast api
2021-08-26 17:04:59 -04:00
Tyler Goodlet
c8e320849a
Add super basic support for data feed "pausing"
2021-08-26 17:04:59 -04:00
Tyler Goodlet
7d0f47364c
Use `maybe_open_feed()` in ems and fsp daemons
2021-08-26 17:04:59 -04:00
Tyler Goodlet
a7d3afc9b1
Add a `maybe_open_feed()` which uses new broadcast chans
...
Try out he new broadcast channels from `tractor` for data feeds
we already have cached. Any time there's a cache hit we load the
cached feed and just slap a broadcast receiver on it for the local
consumer task.
2021-08-26 17:04:59 -04:00
Tyler Goodlet
f4a998655b
Feed detach must explicitly unsub throttled streams
...
If a client attaches to a quotes data feed and requests a throttle rate,
be sure to unsub that side-band memchan + task when it detaches and
especially so on any transport connection error.
Also, use an explicit `tractor.Context.cancel()` on the client feed
block exit since we removed the implicit cancel option from the
`tractor` api.
2021-07-07 07:51:09 -04:00
Tyler Goodlet
df2f6487ff
Apply `brokerd` quote rate throttling when requested in `open_feed()`
2021-06-14 21:55:51 -04:00
Tyler Goodlet
57a35a3c6c
Port feed bus endpoint to a `@tractor.context`
2021-06-14 10:55:01 -04:00
Tyler Goodlet
3455ebc60c
Cast back to tuples after msgspec strips them...
2021-06-14 00:03:05 -04:00
Tyler Goodlet
f4c9e20f0d
Avoid `numpy` type usage on the wire
2021-06-01 10:48:23 -04:00
Tyler Goodlet
50aff72f8e
Don't require map (yet) in backend modules
2021-05-27 13:05:23 -04:00
Tyler Goodlet
59475cfd81
Store lowercase symbols within piker data internals
2021-05-27 13:05:23 -04:00
Tyler Goodlet
9bfc230dde
Speedup: load provider searches async at startup
2021-05-27 13:05:23 -04:00
Tyler Goodlet
42fda2a9e6
Drop old code
2021-05-27 13:05:23 -04:00
Tyler Goodlet
1bd0ee8746
Support loading multi-brokerds search at startup
2021-05-27 13:05:23 -04:00
Tyler Goodlet
59377da0ad
Load pause configs from backends on feed opens
2021-05-27 13:05:23 -04:00
Tyler Goodlet
c9c686c98d
Register context-stream with multi-search for each feed
2021-05-27 13:05:23 -04:00
Tyler Goodlet
f19f4348e0
Decouple symbol search from feed type
2021-05-27 13:05:22 -04:00
Tyler Goodlet
5766dd518d
Enforce lower case symbols across providers
2021-05-27 13:05:22 -04:00
Tyler Goodlet
534553a6f5
Add client side multi-provider feed symbol search
2021-05-27 13:05:22 -04:00
Tyler Goodlet
dcc60524cb
Add remote context allocation api to service daemon
...
This allows for more deterministically managing long running sub-daemon
services under `pikerd` using the new context api from `tractor`.
The contexts are allocated in an async exit stack and torn down at root
daemon termination. Spawn brokerds using this method by changing the
persistence entry point to be a `@tractor.context`.
2021-05-24 12:26:11 -04:00
Tyler Goodlet
0b36bacfb6
Avoid weird `pydantic` runtime warning
2021-05-24 12:22:17 -04:00
Tyler Goodlet
0d9f091a34
Port data feed to new tractor stream api
2021-04-29 09:10:18 -04:00
Tyler Goodlet
7d6bc4d856
Move feed api(s) into new submodule
...
Also add a --pdb flag to chart app.
2021-04-15 10:43:29 -04:00