vike-cli

io.github.vike-io由 GitHub 帳號 vike-io 發布v0.1.0更新於 Oct 24, 2026

Backtest, validate and execute trading strategies behind a mandatory two-call preview gate.

發布方自己的服務:Vike Data API

概覽

AI 產生的概覽

讓助理透過本機 CLI 回測、驗證並執行交易策略,任何實盤下單前都必須經過兩次呼叫的預覽閘門。

可以做什麼
vike-cli 這個 MCP 伺服器把一套 Rust 交易平台暴露給 MCP 用戶端:含參數掃描與最佳化器的 bar/tick 回測與研究框架、掛載交易所並執行策略的實盤執行常駐程式、Parquet/DataFusion 歷史資料儲存與錄製器,以及通往 binance、bybit、okx、alpaca、oanda、ibkr、polymarket 等十四個交易所的橋接。交易動作必須經過兩次呼叫的預覽閘門,隨附的 agent 技能涵蓋回測、策略撰寫、資料匯入與在節點上交易。
適用情境
當助理需要在使用者自己的機器上研究、回測或執行交易策略,或透過預覽閘門驅動 vike 節點時,值得安裝。若只想看行情資料或圖表而不安裝該平台,則沒有用處。
執行需求
僅桌面端,以本機 stdio 程序執行;沒有遠端端點,也未宣告環境變數或標頭。需從發行頁或透過 cargo binstall 安裝 vike-cli 執行檔,或使用容器映像。每次讀取歷史資料(包括本機回測)都必須有 vike-datahub 伺服器在執行;全新安裝沒有行情資料,需先灌入。交易所憑證存放在本機設定資料庫中。
安裝前請注意
此伺服器可以下真實訂單:為沒有對應列的帳戶儲存憑證會建立一列 ACTIVE 的資料,因此存入交易所實盤金鑰會在下次啟動實盤常駐程式時武裝該帳戶。帳戶只有在其列處於作用中狀態時才按 paper、demo 或 live 等級交易;缺少憑證則以 paper 掛載。憑證值透過標準輸入輸入,絕不出現在命令列上。示範行情是合成曲線,不是市場資料。Windows 上的獨立回測引擎未發布。

安裝

在 SourceWeft 中

  1. 開啟 儀表板中的 vike-cli,將其新增到工作區。
  2. 為需要使用其工具的對話啟用該服務。

Desktop only,透過 STDIO。 STDIO 服務會啟動本機處理程序,因此需要 SourceWeft 桌面主機。

其他 MCP 客戶端

參照 儲存庫 中的啟動說明。

README

vike

A Rust trading platform: a live execution core, a backtest and research harness, a desktop charting shell, and bridges to fourteen venues.

This repository is a source mirror. It carries the code and nothing else — no CI workflows, no operator runbooks, no history. Each publish is one commit. The development repository is private; what you see here is what the released binaries are built from.

What is in the box

Live daemon (vike-tradehub)headless execution: mounts a venue, runs a strategy, reconciles against the venue, and stops cleanly on SIGTERM with the resting book handled
Backtest + research (backtesthub, vike-study, tearsheet)a bar/tick harness with parameter sweeps, successive-halving refinement and a TPE optimizer; reports persist as a run manifest
Desktop shell (vike-desktop)charts, order entry, a data manager and a connections editor, on egui/wgpu — a client of the daemons: it mounts no venue itself
Data (vike-datahub, vike-recorder)a Parquet/DataFusion history store, a live recorder, and a query server
Venuesbinance, bybit, okx, deribit, hyperliquid, aster, alpaca, ctrader, ig, oanda, polymarket, dukascopy, fxcm, ibkr — each a crate under crates/bridges/
Agent skills (skills/)procedures for an agent driving vike-cli mcp — backtesting, authoring a strategy, getting data in, and trading on a node through the preview gate — one SKILL.md each, indexed in skills/README.md

Running it

Container images carry every headless tool as one binary with a symlink per tool:

sh
docker pull vikeio/vike-tradehub:latest      # Docker Hubdocker pull ghcr.io/vike-io/vike-tradehub    # GHCR

The command-line tool installs from the release without a toolchain (Linux and Windows; any other target compiles from the clone — crates/vike-cli/Cargo.toml's [package.metadata.binstall] says why):

sh
cargo binstall --git https://github.com/vike-io/vike-trader vike-cli

On Windows with no Rust at all, download the executable from the release — it needs nothing installed and no toolchain:

powershell
curl.exe -L -o vike-cli.exe https://github.com/vike-io/vike-trader/releases/latest/download/vike-cli.exe.\vike-cli.exe --version

Verify it against the release's own manifest before running it:

powershell
curl.exe -L -o SHA256SUMS https://github.com/vike-io/vike-trader/releases/latest/download/SHA256SUMS(Get-FileHash vike-cli.exe -Algorithm SHA256).Hash.ToLower()   # compare with the vike-cli.exe line

⚠ Neither path updates itself. cargo binstall records the install under a crate version that never moves, so a re-install needs --force; a downloaded executable is replaced by downloading it again.

⚠ On Windows the standalone backtest ENGINE is not published, so data hist fetch --source demo|starter and backtest run --local are unavailable until you build one. The remote path needs no engine: vike-cli backtest run --addr HOST:PORT runs on a vike-datahub server instead.

From source:

sh
cargo build --workspace                      # no native dependencies on default featurescargo run -p vike-desktop                    # the desktop shell (charts stay empty with no backend)

For an agent (Claude Code, Cursor, any MCP client), the skills install straight from this repo:

sh
npx skills add vike-io/vike-trader           # every procedure under skills/, one SKILL.md each

A fresh install has no market data — this fixes that

sh
vike-cli init                              # example strategies, indicators and run profiles under user_data/vike-cli data hist fetch --source demo     # a SYNTHETIC demo tape, written under the venue id `demo`vike-backend datahub &                     # serves this project's store: key-less, loopback onlyvike-cli backtest run --local --profile user_data/profiles/backtest.toml \                  --script user_data/strategies/rhai/sma_cross/sma_cross.rhai

The datahub line is not optional: every history READ goes through one, a --local run included — --local moves the backtest ENGINE onto this machine, never the history. Started with no environment it serves the same <project>/market_data/hist the seeding command wrote into, and with no hub keys it authenticates nothing and binds loopback only, which is where --local looks by default. If the tape went somewhere else, name that directory:

sh
vike-backend datahub --store DIR   # DIR: where the tape went

The demo tape is a closed-form curve, not market data; it exists so the tools have something to draw and run, and it is written under its own venue id so it can never be mistaken for, or aggregated with, real rows. For real bars:

sh
vike-cli data hist fetch --source starter               # the published dataset, over plain HTTPSvike-cli data hist fetch binance:BTCUSDT:1h --days 180  # public history, no credentials; asks the datahub

Credentials, and the gate that keeps you on paper

There is exactly one credential store, the settings database <project>/settings/db/vike.db, and absent credentials are the live gate — a demo or live account with no keys does not run. Each account trades at its own tier (paper, demo or live) only while its account row is active, or it does not run: no row, an inactive row, or a tier its keys cannot bind exactly runs nothing — never paper in its place. vike-cli secrets accounts lists the rows, and vike-cli secrets account activate|deactivate|set-tier --id <N> changes one. ⚠ A credential belongs to its ACCOUNT, and storing one never creates an account or chooses its tier: vike-cli secrets account add --venue <VENUE> --tier <paper|demo|live> --no-label creates the row, born ACTIVE, so a live row that then holds its keys arms that account at the next start of a live daemon.

On a fresh box vike-cli secrets init creates the empty store; vike-cli secrets set --account <ID> <FIELD> adds one of an account's credentials (the value on stdin, never on the command line); vike-cli secrets path prints which store answers; vike-cli secrets list shows which keys it holds, account by account. Nothing in this workspace deletes, moves or rewrites that database as a whole.

Licence

FSL-1.1-ALv2 — source-available, and each version becomes Apache-2.0 on the second anniversary of its release. You may read, modify, self-host and run it, including commercially, and you may charge for support and consulting; you may not offer it as a competing product or hosted service. The two-year clock means every release eventually lands under a permissive licence.

Where to put a bug, a question, or nothing at all

A bug or a wrong claim in these pages belongs in issues. Issues are open and read. Say what you ran, what happened, what you expected, and the output of vike-cli --version.

A question about using it belongs in discussions.

What this repository cannot take is a pull request, and the reason is structural rather than a policy about contributors: this mirror is a SNAPSHOT — one commit per release, force-pushed, with no history — because a mirror that kept history would hand back every file an earlier release withheld. A branch here is replaced by the next publish. So a patch is welcome as an issue carrying the diff, and it lands upstream by hand.

What will not be answered: requests to run your strategy, judge whether an edge is real, or support a fork. The tests and the decision records in this tree are the argument for every claim it makes; start there.

來源:README.md,提交 ba3c824

工具

0
SourceWeft 尚未在沙箱中啟動過該軟體包,因此其工具未知。

版本歷史

1
  1. v0.1.0最新Sep 16, 2026

評分

已滿足適用檢查項的 40%

該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。

  • 近 30 天內可連通25 分

    請保持端點能夠回應 MCP 握手;SourceWeft 每 30 天探測一次。

  • 已宣告認證方式10 分

    請在註冊中心條目中宣告憑證請求標頭,或保持端點能夠回應探測,以便判定其認證方式。

  • 已列出工具15 分

    請讓伺服器在無憑證時回應 tools/list,或發布可在沙箱中無憑證啟動的軟體包。

  • 描述必需15 分
  • 圖示10 分
  • 文件15 分
  • 授權條款10 分

    請在儲存庫或註冊中心條目中宣告授權條款。

其他 Vike 整合