ПокращенаДоданоВиправлено
v2026.11.1Assembly v4.9.8.0
Platform
- Obermind Framework changes in this release are compatible. OberMind.dll file version is 2026.11.1.0 and its assembly version stays 4.9.8.0, so existing strategies and algos keep loading without a rebuild. Deploy Obermind Stream, ObermindDB, Admin.Site, the jobs and the providers together. Adjusted execution messages are stored in a Root#Adjustments series that an older Framework ignores, so do not roll back below this release once a fill has been adjusted.
- Framework apps can start from an obermind.license token instead of configurationManagerSettings.xml. The token is looked up in the executable folder, then the product config folder, then the OberMind config folder. The license service returns Service mode, the deployment API URL and that app's Developers token, which GET /api/v1/configuration now accepts. With no token the XML files are read as before. A refused token does not fall back to them.
Trading
- Book fill on the Dash Create Order ticket, for Operations Director and SuperAdmin (adjust_trades). It sends admin command 0308. The Aggregator books the fill on the Execution Simulator (provider 2) at the entered price, quantity and time, reads no quote and calls no venue. Commission is charged; markup is not added again. The admin mailbox is emailed.
- Adjusting an execution report (last price, average price, text) or an account report amount on Dash Execution Messages now updates the fill, position and balance live, with no Obermind Stream restart. File order stores append the correction to {series}#Adjustments and apply it on load. Database order stores update the row. A restart replays the adjusted values on both.
Obermind Stream
- Data file failure alerts. A read or write error that closes a data file (orders, portfolios, instruments, data), local or served by ObermindDB, raises one DataFile.Failed event and writes a [DataFile] line to the Obermind Stream log. DomainEvents.Job polls admin command 1106 every minute and emails the admin once per failure. Recovery is still an Obermind Stream restart. Startup exceptions are now logged as Startup failed.
Reporting
- Send statements from Dash Users, a user page, Accounts, portfolio Actions and Banks, for chosen portfolio or payment accounts and a date range, up to 200 users per send. Payment statements now generate in bulk next to portfolio statements, on the statements-payments queue in Admin.Site. Bulk year or quarter runs start at once. PDF footers come from the Statements templates. Migration 2026-10-28.sql adds StatementsGenerationTasks.AccountIdsFilter.
Admin
- Partner programme policy under Framework, Application Settings, Partners: custom invite links, masters-only links, a 30-day attribution window, self-enrolment approval, and allow plus require-approval switches for invite links, splits, payout account and account-group default edits. Defaults keep current behaviour. Migration 2026-10-29.sql adds the KYCAdminSettings columns. The user app reads the flags from user.access.areas.partners.
- Dash Move moves funds between two portfolios of the same person: a transfer in one currency, or an exchange priced by GET /api/dash/accounts/move/quote with the user app conversion, fees included. It needs withdraw on the source and deposit on the destination. A failed transfer deposit credits the source back. Payments is emailed when an exchange completes.
Trading
- Every account group assignment now reloads algo items and then risk parameters on the live Obermind Stream session: Dash account and batch type or group edits, deinvest, strategy delete, new accounts, group item create, update or delete, and partner cloned group items. Leverage and other risk settings no longer stay stale until the next login.
Admin
- Dash Instruments: a multi-instrument Update starts blank, writes only the fields edited and confirms the fields and symbols first. A null property on PUT /api/dash/tradeinstruments no longer overwrites the catalog. Configure Instruments deletes checked types or symbols in one action; deleting a type removes its symbols.
Obermind Web
- Add Symbols shows a message under the search when the subscription limit is reached (code max_symbols) and a default-list symbol can no longer be removed (code default_symbol). The subscribe star shows a spinner while the change is applied, and instruments show a type badge.
Admin
- Dash shell: a boot screen on first load, a wide Create Order drawer that can pop out to a floating window, a portfolio strip fed by AdminHub on every account tab, batch Accounts actions (type or group, logout, deposit, withdraw) and a Group column. The Dash page still requires a SuperAdmin PIN. User login sessions survive a hub reconnect.
- Dash, Sales, Token Usage by Brand issues one deployment key per brand and host for licensed deployments that use the origin chat relay. Deployment host is the hostname only. Usage is recorded monthly per brand. The Dash admin assistant now knows the Dash map and the page the operator is on.
Trading
- Edgewater (provider 45): good-till-date orders go out as 59=1 with tag 126 ExpireTime because the venue rejects 59=6; the platform order stays GTD. When a trade logout reports the venue sequence more than 100 behind ours after a weekend reset, the expected incoming sequence moves to theirs. A one-sided snapshot keeps publishing the side that is still quoted.
Payments
- A shared-account user in bank-deposit-only mode can deposit. Bank Deposit shows the shared account and its reference and uses the same portfolio choice and notices as a personal account. Verification donor selection works when a user has more than one verification account.
Trading
- nextFinancingDateTime is set only for instruments with a long or short financing rate. Order average price skips zero-quantity trade reports, and the stored report average now matches the order average shown on Execution Messages.