ib: only normalize and log first quote if it arrives
parent
637d33d7cc
commit
543c11f377
|
@ -1000,7 +1000,9 @@ _scan_ignore: set[tuple[str, int]] = set()
|
|||
|
||||
def get_config() -> dict[str, Any]:
|
||||
|
||||
conf, path = config.load('brokers')
|
||||
conf, path = config.load(
|
||||
conf_name='brokers',
|
||||
)
|
||||
section = conf.get('ib')
|
||||
|
||||
accounts = section.get('accounts')
|
||||
|
|
|
@ -25,6 +25,7 @@ from contextlib import (
|
|||
from dataclasses import asdict
|
||||
from datetime import datetime
|
||||
from functools import partial
|
||||
from pprint import pformat
|
||||
from math import isnan
|
||||
import time
|
||||
from typing import (
|
||||
|
@ -836,9 +837,12 @@ async def stream_quotes(
|
|||
|
||||
con: Contract = details.contract
|
||||
first_ticker: Ticker = await proxy.get_quote(contract=con)
|
||||
first_quote: dict = normalize(first_ticker)
|
||||
|
||||
log.warning(f'FIRST QUOTE: {first_quote}')
|
||||
if first_ticker:
|
||||
first_quote: dict = normalize(first_ticker)
|
||||
log.info(
|
||||
'Rxed init quote:\n'
|
||||
f'{pformat(first_quote)}'
|
||||
)
|
||||
|
||||
# TODO: we should instead spawn a task that waits on a feed to start
|
||||
# and let it wait indefinitely..instead of this hard coded stuff.
|
||||
|
@ -858,7 +862,10 @@ async def stream_quotes(
|
|||
'crypto',
|
||||
}
|
||||
):
|
||||
task_status.started((init_msgs, first_quote))
|
||||
task_status.started((
|
||||
init_msgs,
|
||||
first_quote,
|
||||
))
|
||||
|
||||
# it's not really live but this will unblock
|
||||
# the brokerd feed task to tell the ui to update?
|
||||
|
@ -889,7 +896,10 @@ async def stream_quotes(
|
|||
# only on first entry at feed boot up
|
||||
if startup:
|
||||
startup = False
|
||||
task_status.started((init_msgs, first_quote))
|
||||
task_status.started((
|
||||
init_msgs,
|
||||
first_quote,
|
||||
))
|
||||
|
||||
# start a stream restarter task which monitors the
|
||||
# data feed event.
|
||||
|
|
Loading…
Reference in New Issue