# M219.1 installation and activation / 導入と認証

Windows x64: download the Setup installer from https://quant-research.org/downloads and verify its publisher is Song Associates G.K. Finish research tasks and stop strategies and connections before updating. Use Settings → Check for updates → Install and restart. The installer includes .NET, the C# compiler and the isolated Databento DBN/Parquet reader. Your separate workspace and saved keys are preserved. Trading does not restart automatically.

Ubuntu 22.04 x64: save the AppImage, installer script, both guides, SHA256SUMS, signature and public key in the same directory. Verify the public-key fingerprint and signature using the commands on the download page, then verify every checksum before installation.

```sh
bash install_ubuntu-M219.1.sh "$PWD/QuantResearcherStudio-M219.1.AppImage"
export PATH="$HOME/.local/bin:$PATH"
qr-studio license trial
qr-studio license status
# Later updates:
qr-studio update check
qr-studio update install
```

New trials started with M219.1 last exactly 14 days (336 hours) from first successful activation. Existing trials retain their previously issued expiry; reinstalling or transferring does not reset or extend a trial. Windows Activation shows the entitlement status and exact expiry. Ubuntu `license status` reports it. Existing keys use `license activate`; enter them through its hidden input, not command-line arguments. One key permits one active PC across Windows and Ubuntu. Deactivate the old PC before transfer, and allow the previous short lease to expire. Contact support if the old PC is lost. Online checkout remains disabled; starting a trial does not create a paid subscription or charge a card.

Windows：配布元がSong Associates G.K.であることを確認してSetupを実行します。更新前に研究処理を完了し、戦略・接続を停止してください。SettingsのCheck for updatesから更新できます。.NET、C#コンパイラー、Databento DBN・Parquet用リーダーは同梱済みです。別置きのワークスペースと保存済みキーは保持し、取引は自動再開しません。

Ubuntu：ダウンロードページの各ファイルを同じフォルダーへ保存し、公開鍵フィンガープリント・署名・全チェックサムを検証後、上記コマンドで導入します。追加の.NET SDKやPython設定は不要です。

M219.1で新たに開始する試用は、初回認証成功から14日間（336時間）です。既存試用の期限は変更せず、再インストールやPC移行で延長・再開始しません。WindowsのActivation、Ubuntuの `license status` で状態と期限を確認できます。既存キーには `license activate` を使用し、非表示入力に入力してください。同じキーで有効にできるPCはWindows・Ubuntuを合わせて1台です。旧PCの認証を解除し、短い認証リースの失効後に移行できます。旧PCを紛失した場合はサポートにご連絡ください。オンライン決済は停止中です。試用開始に伴う課金や自動契約はありません。

Uninstall / 削除：Windowsのインストール済みアプリ、Ubuntuは `bash install_ubuntu-M219.1.sh --uninstall` を使用します。ワークスペースと認証情報は保持します。

# M219.1 — Execution and trial update / 執行・試用期間の更新

## M219.1: execution recovery and current workflows

M219.1 builds on the M209 release with more responsive execution scheduling, clearer order timing, and improvements to strategy editing and optimization. Use the Windows installer or Ubuntu CLI/headless package for the same release. Bundled .NET and Databento DBN/Parquet reader dependencies require no separate setup.

### Execution and pending orders

- **Submitted time** is the original submission time. **Last update time**, immediately beside it, records the last confirmed accepted submit or price amendment using the broker-provided time or exact response-receipt time. Polling, pending requests and rejected or unknown amendments do not advance this value. Older records without evidence remain blank.
- A temporary local sell-capacity conflict can wait for a newer account reconciliation and fresh quotes. Studio retains conservative reservations, retires a request proven not sent, and lets a later strategy decision produce a new request. It does not resend the old request. Journal records the position, reserved and requested quantities used by the decision and final check.
- A strategy waiting for fresh quotes can resume after fresh data and the required broker confirmation arrive. An amendment rejected locally before transmission does not permanently prevent subsequent quoting. **Stop** revokes automatic resumption. Existing working orders remain tracked; quote waiting alone does not cancel them.
- You can change the source or parameters of a **stopped** strategy while peer strategies run. A different strategy clears only the target's setup and trust; a compatible update retains its parameters and instruments. Editing a running instance still uses the existing validated-update handover or stop requirements.
- M219.1 avoids redundant full-account reads while the ordered command queue is busy. The reuse window is bounded by five seconds or half the configured hard account-age limit, whichever is shorter. Streamed account, position and fill changes invalidate that reuse. The original reconciliation age is retained; reuse does not pretend an old account snapshot is new.

Commands retain account-wide FIFO order, one request in flight, final risk/authorization/freshness/sell-capacity checks and uncertain-request reservations. Unknown and acknowledged-but-unreconciled requests are never resent. Network and serial broker acknowledgement delays can still produce a queue; offline regression tests do not guarantee live-broker latency.

### Reading timing evidence

Record `Quote.ReceivedUtc`, the strategy's decision time, and the matching `StrategyOrderUpdate.CommandId` with `Timing.SendStartedUtc`, `SendCompletedUtc` and `ResponseReceivedUtc`. Provider timestamps, when supplied, help separate upstream delivery from host processing. Receipt-to-decision includes strategy gating; decision-to-send includes queued work and checks; send-to-response includes transport and broker response time. Missing timestamps remain null. **TIMING STUDIO_SCHEDULER** diagnostics additionally report poll gaps and time spent reading accounts, delivering events and dispatching commands. Compare synchronized clocks and the same request identity.

### Optimization and large results

After **Load Opt. param**, explicitly choosing data for one instrument updates a preset's Symbol/SymbolName/InstrumentSymbol fixed value to that instrument. A symbol you type yourself stays intentional; multiple instruments are not guessed. Other fixed values, ranges, steps and candidate lists remain unchanged.

Backtest, Optimize and Research use compressed, verified worker responses for large outcomes, retaining fills, equity and position excursions. The decoded response budget is 512 MiB; ordinary metadata budgets remain bounded. This fixes the earlier 32 MiB worker-response failure without truncating evidence. It is not unlimited storage, and an older failed run with missing evidence must be rerun.

## M219.1：執行の復旧と現行の操作

M219.1はM209以降の執行スケジューリング、注文時刻の表示、戦略編集、最適化の改善を含みます。WindowsインストーラーとUbuntu CLI・ヘッドレス版は同じリリースを使用してください。.NETとDatabento DBN・Parquetリーダーの依存パッケージは同梱され、追加設定は不要です。

### 執行と未約定注文

- **Submitted time**は最初の注文送信時刻です。直後の**Last update time**は、受理された注文・価格変更の最終確認時刻を、ブローカー提供時刻または応答受信時刻から表示します。照会、確認待ち、拒否、結果不明の変更では進みません。証拠がない旧記録は空欄です。
- ローカルで売却可能数量の競合を検出した場合は、新しい口座照合と有効な気配を待てます。予約数量を保守的に維持し、未送信と確認できた要求を終了扱いにして、後続の戦略判断から新しい要求を作成します。旧要求は再送しません。Journalには判断時・最終検証時の建玉、予約数量、要求数量を記録します。
- 気配待機中の戦略は、新しい有効なデータと必要なブローカー確認がそろえば再開できます。送信前にローカルで拒否された注文変更が、その後の値付けを永久に止めないようにしました。**Stop**は自動再開を解除します。既存注文は追跡を続け、気配待機だけでは取り消しません。
- 他の戦略が実行中でも、**停止中**の戦略のソース・パラメーターを変更できます。別の戦略に変更した場合は対象行だけの設定・信頼確認を解除し、互換更新ではパラメーターと銘柄を維持します。実行中の対象行は、従来の検証済み更新の引継ぎまたは停止条件に従います。
- 注文が連続する間は、同じ口座情報の全件取得を繰り返さないようにします。再利用は5秒または設定された口座情報の最大経過時間の半分のうち短い方までです。口座、建玉、約定の更新を受信すると再取得が必要になります。元の照合時刻を保持し、古い口座情報を新しい情報として扱いません。

口座全体のFIFO送信順序、応答待ち1件、送信直前のリスク・認証・鮮度・売却可能数量の検証、不確実な要求の予約数量を維持します。Unknownや受理後未照合の要求は再送しません。通信と逐次ブローカー応答による待ち時間は残り、オフライン回帰試験は実ブローカーの遅延を保証しません。

### タイミングの確認

`Quote.ReceivedUtc`、戦略判断時刻、対応する`StrategyOrderUpdate.CommandId`の`Timing.SendStartedUtc`、`SendCompletedUtc`、`ResponseReceivedUtc`を照合します。配信元時刻がある場合は上流の配信遅延とローカル処理を分けて確認できます。受信から判断には戦略の待機、判断から送信には順番待ちと検証、送信から応答には通信とブローカー応答が含まれます。未取得はnullです。**TIMING STUDIO_SCHEDULER**はポーリング間隔、口座取得、イベント配信、コマンド送信処理の所要時間も記録します。時計を同期し、同じ要求IDを比較してください。

### 最適化と大きな結果

**Load Opt. param**の後に1銘柄のデータを明示選択すると、プリセットのSymbol／SymbolName／InstrumentSymbol固定値をその銘柄へ更新します。直接手入力した銘柄は保持し、複数銘柄から推測しません。他の固定値、範囲、刻み、候補リストは変更しません。

Backtest・Optimize・Researchでは大きなワーカー結果を圧縮して検証し、約定、純資産、建玉の損益推移を保持します。展開後の応答上限は512 MiBで、通常のメタデータ上限は維持します。旧32 MiB制限による失敗を、証拠を切り捨てずに修正しました。容量無制限ではなく、旧失敗実行で証拠が失われた場合は再実行が必要です。

