Send error on non-paper account requests to paperboi
parent
b6b3ca15c5
commit
054ddf6732
|
@ -35,7 +35,7 @@ from ..data._normalize import iterticks
|
||||||
from ..log import get_logger
|
from ..log import get_logger
|
||||||
from ._messages import (
|
from ._messages import (
|
||||||
BrokerdCancel, BrokerdOrder, BrokerdOrderAck, BrokerdStatus,
|
BrokerdCancel, BrokerdOrder, BrokerdOrderAck, BrokerdStatus,
|
||||||
BrokerdFill, BrokerdPosition,
|
BrokerdFill, BrokerdPosition, BrokerdError
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
|
@ -385,6 +385,19 @@ async def handle_order_requests(
|
||||||
action = request_msg['action']
|
action = request_msg['action']
|
||||||
|
|
||||||
if action in {'buy', 'sell'}:
|
if action in {'buy', 'sell'}:
|
||||||
|
|
||||||
|
account = request_msg['account']
|
||||||
|
if account != 'paper':
|
||||||
|
log.error(
|
||||||
|
'This is a paper account, only a `paper` selection is valid'
|
||||||
|
)
|
||||||
|
await ems_order_stream.send(BrokerdError(
|
||||||
|
oid=request_msg['oid'],
|
||||||
|
symbol=request_msg['symbol'],
|
||||||
|
reason=f'Paper only. No account found: `{account}` ?',
|
||||||
|
).dict())
|
||||||
|
continue
|
||||||
|
|
||||||
# validate
|
# validate
|
||||||
order = BrokerdOrder(**request_msg)
|
order = BrokerdOrder(**request_msg)
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue