Tyler Goodlet
ef04781a2b
Expect new flow type through display and fsp UI code
2022-02-08 15:56:20 -05:00
Tyler Goodlet
e3a3fd2d39
Add a `Flow` compound type for coupling graphics with backing data-streams
2022-02-08 15:52:50 -05:00
Tyler Goodlet
860ed99757
Drop dvlm "rates" curves from flows chart
2022-02-08 12:05:56 -05:00
Tyler Goodlet
326b2c089a
Drop dvlm 'rates' (they're just means), add default params, period -> 6
2022-02-08 12:04:01 -05:00
Tyler Goodlet
8f467bf4f0
Factor batch curve plotting into helper func
2022-02-08 08:21:08 -05:00
Tyler Goodlet
4a7b2d835b
Yield 0 initial values from `flow_rates` fsp
2022-02-08 07:46:36 -05:00
Tyler Goodlet
30cf54480d
Add more appropriate default params
2022-02-07 13:59:26 -05:00
Tyler Goodlet
ee4ad32d3b
Fix `dvlm` to actually yield trade count, add instantaneous support
2022-02-07 12:53:30 -05:00
Tyler Goodlet
e7516447df
Better rate axis title?
2022-02-07 12:53:30 -05:00
Tyler Goodlet
a006b87546
Exit `.maxmin()` early on non-yet-registered array lookup
2022-02-07 12:53:30 -05:00
Tyler Goodlet
9490129a74
Add overlays to end of layout grid (aka append) by default
2022-02-07 12:53:30 -05:00
Tyler Goodlet
2f2aef28dd
Adjust x-axis label from summed left axes widths
2022-02-07 12:53:30 -05:00
Tyler Goodlet
0271841412
Add `PlotItemOverlay.get_axes()`
...
Enables retrieving all "named axes" on a particular "side" of the
overlayed plot items. This is useful for calculating how much space
needs to be allocated for the axes before the view box area starts.
2022-02-07 12:53:30 -05:00
Tyler Goodlet
e8d7709358
Drop notification display time to piker seconds worth
2022-02-07 12:53:30 -05:00
Tyler Goodlet
e3c46a5d4d
Add draft, commented tickbytick for ib
2022-02-07 12:53:30 -05:00
Tyler Goodlet
8d432e1988
Shorter clear rate axis title
2022-02-07 12:53:30 -05:00
Tyler Goodlet
87653ddca2
Simplify to only needed one LHS axis for clearing rates
2022-02-07 12:53:30 -05:00
Tyler Goodlet
73faafcfc1
Add trade "rates" (i.e. trade counts) support B)
...
Though it's not per-tick accurate, accumulate the number of "trades"
(i.e. the "clearing rate" - maybe this is a better name?) per bar
inside the `dolla_vlm` fsp and average and report wmas of this in the
`flow_rates` fsp.
2022-02-07 12:53:30 -05:00
Tyler Goodlet
e4244e96a9
Fix var name typo
2022-02-07 12:53:30 -05:00
Tyler Goodlet
5274eb538c
Add 16 period dollar vlm rates, drop ib rates for now
2022-02-07 12:53:30 -05:00
Tyler Goodlet
b358b8e874
Move `wma` fsp earlier in module
2022-02-07 12:53:30 -05:00
Tyler Goodlet
2d3c685e19
Typecast np dtype description to a tuple
2022-02-07 12:53:30 -05:00
Tyler Goodlet
4570b06c26
Handle no y-range maxmin output (seems like bug?)
2022-02-07 12:53:30 -05:00
Tyler Goodlet
26b0071471
Subscribe for rate calcs from IB in default tick set
2022-02-07 12:53:30 -05:00
Tyler Goodlet
1fc6429f75
Prep for manual rate calcs, handle non-ib backends XD
2022-02-07 12:53:30 -05:00
Tyler Goodlet
ebf3e00438
Add `Fsp._flow_registry` as actor-local table
...
Define the flows table as a class var (thus making it a "global" and/or
actor-local state) which can be accessed by any in process task. Add
`Fsp.get_shm()` to allow accessing output streams by source-token + fsp
routine reference and thus providing inter-fsp low level access to
real-time flows.
2022-02-07 12:53:30 -05:00
Tyler Goodlet
df6afe24a4
Define a flow registry on `FspAdmin`, use it to update fsp engine clusters
2022-02-07 12:53:30 -05:00
Tyler Goodlet
d130f0449f
Expect registry of fsp "flows" to each engine task
...
In order for fsp routines to be able to look up other "flows" in the
cascade, we need a small registry-table which gives access to a map of
a source stream + an fsp -> an output stream. Eventually we'll also
likely want a dependency (injection) mechanism so that any fsp demanded
can either be dynamically allocated or at the least waited upon before
a consumer tries to access it.
2022-02-07 12:53:30 -05:00
Tyler Goodlet
efb743fd85
Flip to using `pydantic` for shm tokens
2022-02-07 12:53:30 -05:00
Tyler Goodlet
615bf3a55a
Use solid line for vlm rate and dashed for trades rate
2022-02-07 12:53:30 -05:00
Tyler Goodlet
d4f79a6245
Comment flow rates fsp prints
2022-02-07 12:53:30 -05:00
Tyler Goodlet
4b7d1fb35b
Add line style via `str` style name to our fast curve
2022-02-07 12:53:30 -05:00
Tyler Goodlet
0b5250d5e3
Plot the vlm rate (per min) taken verbatim from ib
2022-02-07 12:53:30 -05:00
Tyler Goodlet
97c2f86092
TOSQUASH, fix separate vlm vs trade rate
2022-02-07 12:53:30 -05:00
Tyler Goodlet
f3289c1977
Create source length zeroed arrays from yielded `None` fsp history
2022-02-07 12:53:30 -05:00
Tyler Goodlet
4e96dd09e3
Add a `.text_color` property to our axes types
2022-02-07 12:53:30 -05:00
Tyler Goodlet
b81209e78e
Ensure `sym` arg is a `str`
2022-02-07 12:53:30 -05:00
Tyler Goodlet
dfe4473c9a
Yield history `dict`s, add a `flow_rates` fsp
2022-02-07 12:53:30 -05:00
Tyler Goodlet
1aae40cdeb
Expect multi-output fsps to yield a `dict` of history arrays
2022-02-07 12:53:30 -05:00
Tyler Goodlet
8118a57b9a
Guard against no time field in some provider quotes
2022-02-07 12:53:30 -05:00
Tyler Goodlet
5952e7f538
Add dark vlm deduplication support via flag
2022-02-07 12:53:30 -05:00
goodboy
cef2cdd6b6
Merge pull request #271 from pikers/ib_mkt_closed
...
Ib mkt closed
2022-02-07 11:13:40 -05:00
Tyler Goodlet
16c04e11e4
Comment out nan-price assert previously for `ib` in ems clear tasks
2022-02-07 09:49:45 -05:00
Tyler Goodlet
9bfad86c29
Drop timeout-cancel block
2022-02-07 09:49:45 -05:00
Tyler Goodlet
a9d42b374f
ib: Allow history backfilling even when markets are closed
2022-02-07 09:49:45 -05:00
goodboy
43b39d3b6b
Merge pull request #275 from pikers/py3.10_support
...
Py3.10 support
2022-02-07 09:48:54 -05:00
Tyler Goodlet
174590ee88
Note 3.10 support and add msgspec as dep
2022-02-07 09:41:13 -05:00
Tyler Goodlet
00a90e7390
Change dpi log msg back to debug
2022-02-07 09:36:07 -05:00
Tyler Goodlet
1aaa382036
Avoid null index race-error during startup
2022-02-07 09:36:07 -05:00
Tyler Goodlet
999d3efdd7
Another `int` required
2022-02-07 09:36:07 -05:00