今天先記錄一下:如何在本地端成功啟動這個交易系統專案。
畢竟要先能夠順利 build 起來,才有辦法往下研究架構與效能和開發
NautilusTrader 的開發者已經將大部分啟動流程封裝在 Makefile 裡面,對開發者非常友善,這絕對是這個專案值得學習的一點,相關資訊可以在專案中的 docs/developer_guide/environment_setup.md 找到。
首先,先安裝必要工具:
• rustup:Rust 工具鏈安裝器
• clang:LLVM 編譯器,C/C++ 編譯用(有些 Python 原生模組會依賴)
• uv:建議用來管理 Python 環境與相依套件(比 pip 快超多)
因為這些工具過去已經安裝過了,這邊就不再仔細說明,可以點擊進入官網去安裝
進入專案根目錄後,執行以下指令即可完成初始安裝:
這邊建議一開始就先開自己的 branch
make install
如果你是開發者、會頻繁修改 Rust/Cython 程式碼,建議改用:
make install-debug
這會使用 debug 編譯模式,速度快非常多。
開發時我們會希望在 commit 前就先跑格式檢查、靜態分析等流程,這樣可以減少 CI 的錯誤。
.venv/bin/pre-commit install
make format
make pre-commit
任何對 .rs, .pyx, .pxd 檔案的更動,都需要重新編譯:
make build
一樣,如果你是開發者,使用 debug 模式比較快:
make build-debug
接下來我們啟動後端依賴服務(PostgreSQL、Redis 等):
make start-services
建立開發用的預設資料庫:
make init-db
你可以用psql或pgAdmin來測試連線是否成功
如果連不上,有可能是你本機的 PostgreSQL 服務和 Docker 的 5432 port 發生衝突,
可以考慮去 docker-compose.yml 裡調整 port mapping
底下示範一下如何登入
進入pgAdmin後 點選Add server
填入對應的連接資訊
進入之後就可以看到他幫你創建的table
今天就先到這,明天跟後天會簡單說明一下,如何在上面撰寫策略,畢竟還是會有人想知道這個部分,接著就會進入Rust的部分了.