Tyler Goodlet
df2f6487ff
Apply `brokerd` quote rate throttling when requested in `open_feed()`
2021-06-14 21:55:51 -04:00
Tyler Goodlet
d269edc0b3
Re-org main window singleton into a new module
...
Avoids some cyclical and confusing import time stuff that we needed to get
DPI aware fonts configured from the active display. Move the main window
singleton into its own module and add a `main_window()` getter for it.
Make `current_screen()` a ``MainWindow` method to avoid so many module
variables.
2021-06-13 23:47:52 -04:00
Tyler Goodlet
0dcadec11a
Add multi-status updates throughout chart init
2021-06-10 13:23:28 -04:00
Tyler Goodlet
f68295653d
Load cache search before other providers
2021-06-10 13:23:28 -04:00
Tyler Goodlet
bb1c549d94
Add some initial status updates during startup
2021-06-10 13:23:28 -04:00
Tyler Goodlet
cc60ad46fc
Skip chart updates if parent widget is hidden to save cpus
2021-06-10 13:23:28 -04:00
Tyler Goodlet
754a5cce4f
WIP toying with a simple status bar
2021-06-10 13:23:28 -04:00
Tyler Goodlet
b689adaeb0
Throttle L1 label updates at a lower rate
2021-05-28 14:11:02 -04:00
Tyler Goodlet
1a7b06c147
Limit l1 graphics updates to half the refresh rate
2021-05-28 14:11:02 -04:00
Tyler Goodlet
ec6ea32dda
Don't pass through linked charts x-axis handle
2021-05-27 13:05:23 -04:00
Tyler Goodlet
924960a359
Add label to search bar
2021-05-27 13:05:23 -04:00
Tyler Goodlet
46d88965d3
Get LIFO sort on cache syms working properly
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
af9dcf9230
Use an ordered dict to get LIFO cache sorting on sym selection
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
212882a5a5
Don't try to show xhair if no active plot
2021-05-27 13:05:23 -04:00
Tyler Goodlet
2471ce446e
Require `<symbol>.<provider>` format to cli
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
fd8dc4f1a3
Make -b a multi-option for backends
2021-05-27 13:05:23 -04:00
Tyler Goodlet
63363d750c
Port chart to multi-search api
2021-05-27 13:05:23 -04:00
Tyler Goodlet
51c61587d2
Make list pop out next to primary y-axis
2021-05-27 13:05:23 -04:00
Tyler Goodlet
5766dd518d
Enforce lower case symbols across providers
2021-05-27 13:05:22 -04:00
Tyler Goodlet
c9efbcc6d2
Drop completion list from startup
2021-05-27 13:05:22 -04:00
Tyler Goodlet
be39e9bdf5
Load async kb search handler at startup
2021-05-27 13:05:22 -04:00
Tyler Goodlet
5e1b15f319
Repair indents from rebasing
2021-05-27 13:05:22 -04:00
Tyler Goodlet
821d5ab9ec
Bring back in and merge tractor stream api patch
2021-05-27 13:05:22 -04:00
Tyler Goodlet
0e83906f11
Initial WIP search completer; still a mess
2021-05-27 13:05:22 -04:00
Tyler Goodlet
157f6ab02b
Drop lingering chart focus call
2021-05-27 13:05:22 -04:00
Tyler Goodlet
1f9f2b873a
Super fast switching, just hide loaded charts
2021-05-27 13:05:22 -04:00
Tyler Goodlet
0627f7dcee
First draft: symbol switching via QLineEdit widget
2021-05-27 13:05:22 -04:00
Tyler Goodlet
9e367432fd
Minimize update to Qt reported display's refresh rate
2021-05-25 06:56:18 -04:00
Tyler Goodlet
e623c58754
Naively throttle graphics updates to 60 FPS
2021-05-25 06:33:22 -04:00
Tyler Goodlet
c08f192f77
Move charting to new tractor stream api
...
This required a fsp task spawning logic rework which ended up being
cleaner just spawning tasks in a loop sequentially instead of trying
a 2-phase spawn-then-initialize approach.
This also includes changes from the symbol search branch hacked in.
Mostly it includes isolating the main chart startup-sequence to a
function that can be run in a new task every time a new symbol is
requested by the selector/searcher. The actual search functionality
obviously isn't in here yet but minor changes are included as part of
pulling out the `tractor` stream api patch from the symbol search dev
branch.
2021-04-29 11:28:00 -04:00
Tyler Goodlet
9a15cd48f0
Just symbol info in window title
2021-04-10 14:18:40 -04:00
Tyler Goodlet
e1dc2b9225
Enable daemon debug through top level kwarg
2021-03-17 08:36:34 -04:00
Tyler Goodlet
31c14a2f9f
Add l1 label size tracking to chart widget
2021-03-11 21:40:50 -05:00
Tyler Goodlet
7075a968b4
Create an order mode module
2021-03-08 09:05:37 -05:00
Tyler Goodlet
a1a1dec885
Move L1 labels into lone module
2021-03-01 14:48:08 -05:00
Tyler Goodlet
948e133cae
Split out ems daemon, client api and paper engine into new mods
2021-02-22 18:37:57 -05:00
Tyler Goodlet
a9bbc223bb
Add a new exchange subpackage
2021-02-22 17:28:34 -05:00
Tyler Goodlet
6fb1945360
Fix and pass through piker loglevel correctly
2021-02-21 11:50:33 -05:00
Tyler Goodlet
1ac4cc3dd3
Use new field label api for L1
2021-02-16 06:42:48 -05:00
Tyler Goodlet
890f932400
Use through lot digits, drop YSticky
2021-02-08 07:00:51 -05:00
Tyler Goodlet
a8c4829cb6
Start using `tick_size` throughout charting
...
The min tick size is the smallest step an instrument can move in value
(think the number of decimals places of precision the value can have).
We start leveraging this in a few places:
- make our internal "symbol" type expose it as part of it's api
so that it can be passed around by UI components
- in y-axis view box scaling, use it to keep the bid/ask spread (L1 UI)
always on screen even in the case where the spread has moved further
out of view then the last clearing price
- allows the EMS to determine dark order live order submission offsets
2021-02-06 11:35:12 -05:00
Tyler Goodlet
25ec5faaef
Drop removed show_label kwarg
2021-01-26 11:28:24 -05:00
Tyler Goodlet
f072e2551b
Snap y-axis crosshair to min tick(s)
2021-01-22 22:59:00 -05:00
Tyler Goodlet
e6724b6559
Move order mode handling into charting code
2021-01-18 20:28:37 -05:00
Tyler Goodlet
5acd780eb6
Get live mode correct and working
2021-01-15 21:10:08 -05:00
Tyler Goodlet
c835cc10e0
Get "live" order mode mostly workin
2021-01-15 21:10:08 -05:00
Tyler Goodlet
5503a5705a
Drop old line
2021-01-15 21:10:08 -05:00