alor-broker / Astras-Trading-UI

Astras. The Angular's trading terminal from Alor Broker. https://alorbroker.ru/
Apache License 2.0
64 stars 20 forks source link

[BUG] Ошибка шага цены при Изменении заявки по бумагам режима MTQR #1671

Closed MorozovDen closed 1 month ago

MorozovDen commented 4 months ago

Опишите баг

При Изменении заявки по тикеру moex:ntzl:mtqr в поле Цена при прокрутке колесика мышки меняется не по шагу цены (шаг цены 0,01, а меняется по 0,0001). Выявленно только при Изменении заявки, если новую ставить, то шаг цены меняется нормально. Эмитент в режием MTQR. Пробовал другие эмитенты этого режима - такая же ситуация.

Воспроизведение

Выставить заявку по moex:ntzl:mtqr , попытаться Изменить заявку, колесиком мышки изменить цену в заявке

Среда.

Win11, Edge

Ожидаемое поведение

"Изменить заявку" и при нажатии "вверх-вниз" на клавиатуре или при прокручивании колесиком мыши в поле "Цена" цену менять по шагу цену по указанному инструменту

Скриншоты

Без имени Без имени-1

Дополнительная информация

No response

Правила

sbelashevskiy commented 4 months ago

Это проблема не связана с режимом MTQR и инструментом ntzl.

Она проявляется абсолютно на всех инструментах, где шаг цены для разных режимах отличается. До недавнего времени режим торгов не передавался, поэтому шаг цены брался бля инструмента с базовым режимом торгов. Для исправления добавлено чтение режима торгов инструмента, для которого создана заявка.

sbelashevskiy commented 4 months ago

Однако для стоп заявок проблема еще существует - API игнорирует режим, с котором создавалась заявка.

создаем заявку с параметрами: {"instrument":{"symbol":"NTZL","instrumentGroup":"MTQR","exchange":"MOEX","isin":"RU0002614686"},"quantity":1,"triggerPrice":68.33,"condition":"More","stopEndUnixTime":1718279979,"side":"buy","price":68.33,"user":{"portfolio":"D61971"}}

а при считывании возвращается: { "id": "11203056", "exchangeOrderId": null, "symbol": "NTZL", "brokerSymbol": "MOEX:NTZL", "portfolio": "D61971", "exchange": "MOEX", "board": "RPMO", "type": "stoplimit", "side": "buy", "condition": "more", "status": "working", "transTime": "2024-05-13T11:59:49.1890129Z", "updateTime": null, "endTime": "2024-06-13T11:59:39.0000000Z", "error": null, "qtyUnits": 1, "qtyBatch": 1, "qty": 1, "filled": 0, "filledQtyUnits": 0, "filledQtyBatch": 0, "price": 68.33, "avg_price": 0, "stopPrice": 68.33, "existing": true, "timeInForce": "oneday", "iceberg": null, "volume": 68.33 }

Это нужно править в API

alorbot[bot] commented 4 months ago

This task is related to backend. [Status: Deployed]

sbelashevskiy commented 1 month ago

Исправлено в API