Tyler Goodlet
23dcc45b63
Port monitor to normalized streams
2020-08-10 15:49:07 -04:00
Tyler Goodlet
37607d61ca
Port `DataFeed` api to broker specific normalizer routine
2020-08-10 15:23:35 -04:00
Tyler Goodlet
5fe8e420b8
Add a normalizer routine which emits quote differentials/ticks
2020-08-09 00:03:09 -04:00
Tyler Goodlet
75824f7afa
Future todo
2020-08-09 00:02:04 -04:00
Tyler Goodlet
a1e2730aa1
Handle (far end forced) disconnects
2020-08-09 00:01:40 -04:00
Tyler Goodlet
bdcf5f884b
Add `services` cmd for monitoring actors
2020-08-03 21:31:56 -04:00
Tyler Goodlet
e6e06a52cb
Flatten out chart tasks
2020-08-02 20:10:06 -04:00
Tyler Goodlet
ccf600f79a
Add ravel() reference link
2020-08-02 20:09:27 -04:00
Tyler Goodlet
0389836fe6
Handle "mouse-not-on-plot" edge cases
2020-08-02 15:23:20 -04:00
Tyler Goodlet
bfc1a1fcf5
Attempt more reliable chart startup
...
Wait for a first actual real-time quote before starting graphics update
tasks. Use the new normalized tick format brokers are expected to emit
as a `quotes['ticks']` list. Auto detect time frame from historical
bars.
2020-08-02 12:18:53 -04:00
Tyler Goodlet
3066ab216a
Passthrough loglevel from qtractor
2020-08-02 12:17:38 -04:00
Tyler Goodlet
699fffd964
Trigger connection reset on slowed heartbeat
2020-08-02 12:17:03 -04:00
Tyler Goodlet
f779af02f1
Drop forkserver usage.
...
We've got the sweet and realable `trio` spawner now :)
2020-08-02 01:42:04 -04:00
Tyler Goodlet
72d6b5b06f
Trace log the heartbeat
2020-08-02 01:35:29 -04:00
Tyler Goodlet
9e4ee4d382
Pass piker log level through to tractor for chart app
2020-08-02 00:18:54 -04:00
Tyler Goodlet
b743230f7f
Add a couple more deps
2020-08-01 22:24:51 -04:00
Tyler Goodlet
b872696d9f
Set tractor loglevel in cli config
2020-08-01 22:23:19 -04:00
Tyler Goodlet
4e9057621c
Drop "pipfiles"; pipenv is getting the hard boot
2020-08-01 22:22:12 -04:00
Tyler Goodlet
fad58d18c9
Make ws loop restart on connection failures
2020-08-01 22:12:26 -04:00
Tyler Goodlet
06f03c690c
Begin to wrap marketstore as a data feed
...
Wrap the sync client in an async interface in anticipation of an actual
async client. This starts support for the `open_fee()`/`stream_quotes()`
api though the tick normalization isn't correct yet.
2020-08-01 20:08:05 -04:00
Tyler Goodlet
fa899c3979
Generate tick data correctly using .etime
2020-08-01 16:52:51 -04:00
Tyler Goodlet
e2dab3977e
Support new normalized ticks format with kraken
...
Generate tick datums in a list under a `ticks` field in each quote
kinda like how IB does it.
2020-07-31 00:11:17 -04:00
Tyler Goodlet
bcd17d0bb6
Also log the payload
2020-07-31 00:10:47 -04:00
Tyler Goodlet
e49417a4b8
Add normalization step for ticks
...
Start a draft normalization format for (sampled) tick data.
Ideally we move toward the dense tick format (DFT) enforced by
techtonicDB, but for now let's just get a dict of something simple
going: `{'type': 'trade', 'price': <price}` kind of thing. This
gets us started being able to real-time chart from all data feed
back-ends. Oh, and hack in support for XAUUSD..and get subactor
logging workin.
2020-07-31 00:03:17 -04:00
Tyler Goodlet
307bc87738
Fix typo
2020-07-28 14:45:18 -04:00
Tyler Goodlet
80b656e2ab
Add startup logic to handle market closure
2020-07-28 14:44:32 -04:00
Tyler Goodlet
b16bc9b42d
Define "packetizer" in specific broker mod
...
Allows for formatting published quotes using a broker specific
formatting callback.
2020-07-28 14:27:51 -04:00
Tyler Goodlet
12655f87fd
Support the `stream_quotes()` api in questrade backend
2020-07-20 16:58:40 -04:00
Tyler Goodlet
a59497c949
Always just look up the current plot on mouse handling
2020-07-17 10:43:03 -04:00
Tyler Goodlet
b97286d7f5
Allow for dynamically added plots
...
Add `ChartPlotWidget.add_plot()` to add sub charts for indicators which
can be updated independently. Clean up rt bar update code and drop some
legacy ohlc loading cruft.
2020-07-17 09:06:20 -04:00
Tyler Goodlet
a1032a0cd7
Massively simplify the cross-hair monstrosity
...
Stop with all this "main chart" special treatment.
Manage all lines in the same way across all referenced plots.
Add `CrossHair.add_plot()` for adding new plots dynamically.
Just, smh.
2020-07-16 21:54:24 -04:00
Tyler Goodlet
d6bd964fac
Raise errors, fix module script entry
2020-07-15 13:26:48 -04:00
Tyler Goodlet
5513d48c11
Use array of names for lookup
2020-07-15 10:59:29 -04:00
Tyler Goodlet
ce1c98463c
Change name to qtractor
2020-07-15 09:55:09 -04:00
Tyler Goodlet
7ea6f25993
Pass broker name
2020-07-15 09:54:47 -04:00
Tyler Goodlet
d431ec20a8
Override annoying stuff in ib_insync
2020-07-15 09:54:24 -04:00
Tyler Goodlet
c6b4b62228
Standardize ohlc dtype
2020-07-15 08:42:01 -04:00
Tyler Goodlet
4a1bcf7626
Fix import error
2020-07-15 08:41:29 -04:00
Tyler Goodlet
8fa569787d
Port to new streaming api, yield whole tickers
2020-07-15 08:40:20 -04:00
Tyler Goodlet
50f903d7c5
Handle overloaded arg
2020-07-15 08:28:50 -04:00
Tyler Goodlet
d0a9afbb36
Port to new data apis
2020-07-15 08:28:13 -04:00
Tyler Goodlet
b05a205d1b
Start enforcing a common stream setup api
...
Add routines for brokerd spawning and quote stream creation.
2020-07-15 08:22:09 -04:00
Tyler Goodlet
f9dcb9a984
Add kraken to backend list
2020-07-15 08:20:29 -04:00
Tyler Goodlet
7395b22e3d
Add historical bars retreival
2020-07-15 08:20:03 -04:00
Tyler Goodlet
cf8a5d04ce
Store lines graphics in struct array to simplify indexing
2020-07-09 08:37:30 -04:00
Tyler Goodlet
93fed5ec28
Drop kivy stuff from docs
2020-07-08 15:42:51 -04:00
Tyler Goodlet
5d0f4bf112
Deps bump
2020-07-08 15:42:32 -04:00
Tyler Goodlet
9dc3bdf273
Add WIP real-time 5s bar charting
2020-07-08 15:42:05 -04:00
Tyler Goodlet
ee4b3a327c
Always convert to posix time
2020-07-08 15:41:14 -04:00
Tyler Goodlet
ac5e9de1b3
Make run_qtrio invoke tractor at top level
2020-07-08 15:40:35 -04:00