iT邦幫忙

鐵人檔案

2025 iThome 鐵人賽
回列表
Rust

NautilusTrader 架構解析:Rust 在高效能量化交易平台中的角色與優勢 系列

本研究將深入探討開源量化交易平台 NautilusTrader 的系統設計與高效能實現方式,特別聚焦於其 Rust 元件如何提升整體運算效能與安全性。NautilusTrader 為一個支援回測與實盤交易一致性的 Python 原生框架,透過將核心元件以 Rust 與 Cython 開發,成功克服傳統 Python 向高效能語言重構的斷層。

本專案將從架構層級剖析該平台如何透過 Rust:
• 實現事件驅動的回測與交易引擎
• 確保記憶體與型別安全(type safety)
• 提供 Python-native 的高效能接口
• 同時支援多資產與多交易所的低延遲操作

參賽天數 22 天 | 共 22 篇文章 | 2 人訂閱 訂閱系列文 RSS系列文
DAY 11

【Day11】- Rust(Tokio)

tokio::sync模塊提供了幾種狀態同步的機制: Mutex: 互斥鎖 RwLock: 讀寫鎖 Notify: 通知喚醒機制 Barrier: 屏障 Se...

2025-08-15 ‧ 由 catdev 分享
DAY 12

【Day12】- Rust(Tokio)

Tokio task 的通信 通常來說,對於允許併發多執行分支的內核或引擎來說,都需要提供對應的通信機制和同步機制。 例如,多進程之間,有進程間通信方式,比如管...

2025-08-16 ‧ 由 catdev 分享
DAY 13

【Day13】- Rust(專案管理)

今天來介紹一下要如何管理一個 Rust 專案,因為在開發大型專案時,如何組織程式碼是很重要的。 Rust 有一系列的功能能讓你管理你的程式碼組織,包含哪些細節能...

2025-08-17 ‧ 由 catdev 分享
DAY 14

【Day14】- Rust(自動化測試)

類型 說明 檔案位置 單元測試 測試單一函式/模組邏輯 mod tests {} 內嵌在模組中 整合測試 模擬外部使用情境 tests/ 目錄...

2025-08-18 ‧ 由 catdev 分享
DAY 15

【Day15】- NautilusTrader 如何結合 Rust 和 Python

今天我們來說一下 NautilusTrader 是如何 結合 Rust 和 Python 的 可以透過查看 build.py 來得到,步驟如下 1. Rust...

2025-08-19 ‧ 由 catdev 分享
DAY 16

【Day16】- 推論 Crate

接下來要開始實作 新的 crate 背景如下 : 當我們拿歷史資料訓練後出一個模型後,我們在實盤上要引入這個模型,根據輸出值,做判斷,其實就很像一個指標,那 N...

2025-08-20 ‧ 由 catdev 分享
DAY 17

【Day17】- 轉換模型為Rust可讀

今天會做到在專案中使用 Rust 做出推論 底下先列出 tasks 決定模型架構與輸入輸出格式 載入測試特徵和預測值 隨機初始化測試模型並導出權重 將 Py...

2025-08-21 ‧ 由 catdev 分享
DAY 18

【Day18】- 產出推論模組和測試

今天要做的是針對昨天做出的推論模組,做實際測試⸻ 主要目標:• 驗證 Rust .so 模組輸出與 PyTorch 一致• 實測多次推論在 Rust 是否比 P...

2025-08-22 ‧ 由 catdev 分享
DAY 19

【Day19】- 整合推論模型進入主系統

今天要做的是將昨天完成的推論模組整合進入主系統,底下附上 tasks 準備環境 確認推論模組已經 build 成 .so / crate 可供呼叫 更新...

2025-08-23 ‧ 由 catdev 分享
DAY 20

【Day20】- 新增模型

模型管理設計 在 config 檔(YAML/JSON)中定義 模型清單:名稱、路徑、用途 (e.g. “btc_usdt_orderbook”, “go...

2025-08-24 ‧ 由 catdev 分享