@pineforge/backtest-mcp 0.9.31 → 0.9.32-rc.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +198 -42
- package/dist/server.js +3 -3
- package/dist/server.js.map +1 -1
- package/dist/version.js +1 -1
- package/dist/version.js.map +1 -1
- package/package.json +2 -2
package/README.md
CHANGED
|
@@ -1,11 +1,13 @@
|
|
|
1
1
|
# `@pineforge/backtest-mcp`
|
|
2
2
|
|
|
3
3
|
Self-contained stdio MCP server: an AI agent writes PineScript v6, and the
|
|
4
|
-
bundled `pineforge-release` image transpiles it to C++ and backtests it against
|
|
5
|
-
|
|
6
|
-
bundles the
|
|
4
|
+
bundled `pineforge-release` image transpiles it to C++ and backtests it against
|
|
5
|
+
an OHLCV CSV (your own, or one fetched from Binance's public API) — all in one
|
|
6
|
+
container, in-process. **Fully local** — the image bundles the
|
|
7
|
+
[`pineforge-codegen`](https://github.com/pineforge-4pass/pineforge-codegen-oss)
|
|
7
8
|
transpiler, so Pine → C++ → backtest run with no host Docker daemon. **No API
|
|
8
|
-
key
|
|
9
|
+
key.** Your strategy source and CSVs never leave the machine; only the Binance
|
|
10
|
+
tools make outbound requests (public endpoints).
|
|
9
11
|
|
|
10
12
|
[](https://glama.ai/mcp/servers/pineforge-4pass/pineforge-backtest-mcp)
|
|
11
13
|
|
|
@@ -24,13 +26,16 @@ key, nothing leaves the box.**
|
|
|
24
26
|
| `list_coverage_topics` | local (no I/O) | Every Pine v6 coverage topic with a one-line status + summary |
|
|
25
27
|
| `check_pine_feature` | local (no I/O) | Look up whether a Pine identifier/namespace is supported in PineForge |
|
|
26
28
|
| `get_coverage_topic` | local (no I/O) | Full detail + supported/unsupported feature lists for one coverage topic |
|
|
27
|
-
| `engine_info` | local (no I/O) |
|
|
29
|
+
| `engine_info` | local (no I/O) | Docker image only: mode, baked-in flag and the bundled `pineforge-release` version (for example `0.1.25`) |
|
|
30
|
+
|
|
31
|
+
The table is the Docker image's tool list (10 tools). The [npm package](#npm--npx)
|
|
32
|
+
serves the first nine, plus `pull_engine_image` (`docker pull` the engine image) and
|
|
33
|
+
`check_engine_image` instead of `engine_info` (11 tools).
|
|
28
34
|
|
|
29
35
|
## Install
|
|
30
36
|
|
|
31
37
|
Runs as a self-contained container over stdio — engine bundled, in-process, no
|
|
32
|
-
host Docker daemon, no API key. Mount
|
|
33
|
-
read/write your CSVs:
|
|
38
|
+
host Docker daemon, no API key. Mount the folder that holds your CSVs at `/work`:
|
|
34
39
|
|
|
35
40
|
```bash
|
|
36
41
|
docker run --rm -i -v "$PWD:/work" ghcr.io/pineforge-4pass/pineforge-backtest-mcp:latest
|
|
@@ -39,6 +44,36 @@ docker run --rm -i -v "$PWD:/work" ghcr.io/pineforge-4pass/pineforge-backtest-mc
|
|
|
39
44
|
Only requirement: Docker, and outbound network for the Binance fetch tools.
|
|
40
45
|
Wire it into your MCP client below.
|
|
41
46
|
|
|
47
|
+
- **Use absolute `/work/...` paths** in tool arguments (`ohlcv_csv_path`,
|
|
48
|
+
`output_path`, `report_path`). The server's working directory inside the
|
|
49
|
+
container is `/app`, not the mount, so a relative path such as `./btc.csv`
|
|
50
|
+
points into the container and is lost when it exits (`--rm`).
|
|
51
|
+
- On Linux, add `--user "$(id -u):$(id -g)"` so the files the server writes to
|
|
52
|
+
`/work` carry your ownership.
|
|
53
|
+
- `-i` is required; never add `-t` — a TTY corrupts the stdio JSON-RPC stream.
|
|
54
|
+
|
|
55
|
+
The image's `:latest` and npm's `latest` always carry a stable release. A
|
|
56
|
+
`pineforge-release` prerelease (such as `1.0.0-rc.1`) produces a prerelease of this
|
|
57
|
+
server (`X.Y.Z-alpha.N`, `-beta.N` or `-rc.N`): the image `:vX.Y.Z-rc.N`, built FROM
|
|
58
|
+
that `pineforge-release` prerelease, and npm `@pineforge/backtest-mcp@next`, which,
|
|
59
|
+
like any npm install, runs the engine image named by `PINEFORGE_IMAGE` (default
|
|
60
|
+
`ghcr.io/pineforge-4pass/pineforge-release:latest`, the stable engine). Prereleases
|
|
61
|
+
are not listed in the MCP Registry. No prerelease has been published yet.
|
|
62
|
+
|
|
63
|
+
### npm / npx
|
|
64
|
+
|
|
65
|
+
```bash
|
|
66
|
+
npx -y @pineforge/backtest-mcp
|
|
67
|
+
```
|
|
68
|
+
|
|
69
|
+
Needs Node ≥ 20 and a running Docker daemon: each transpile and backtest is a
|
|
70
|
+
`docker run --rm --network=none` of the engine image (`PINEFORGE_IMAGE`, default
|
|
71
|
+
`ghcr.io/pineforge-4pass/pineforge-release:latest`). `docker pull` it first: the
|
|
72
|
+
server's own pull (implicit on the first call, or `pull_engine_image`) is cut off
|
|
73
|
+
after `PINEFORGE_DOCKER_TIMEOUT_MS` (120 s by default). Paths are relative to the
|
|
74
|
+
server's working directory and, by default, confined to it (see
|
|
75
|
+
[Filesystem scope](#filesystem-scope)).
|
|
76
|
+
|
|
42
77
|
### Hosted (no-install) alternative
|
|
43
78
|
|
|
44
79
|
Want the fastest try with no Docker and no API key? Paste the Streamable HTTP
|
|
@@ -48,19 +83,26 @@ endpoint into any MCP client:
|
|
|
48
83
|
https://mcp.pineforge.dev/mcp
|
|
49
84
|
```
|
|
50
85
|
|
|
51
|
-
Tradeoff vs this repo: the hosted server is **metered** (
|
|
52
|
-
|
|
53
|
-
|
|
86
|
+
Tradeoff vs this repo: the hosted server is **metered** (100 `backtest_pine` runs
|
|
87
|
+
per week per IP, plus edge rate limits) and runs against OHLCV it resolves itself —
|
|
88
|
+
crypto only, seven venues (Binance, Bybit and OKX spot and USDT-perp; Coinbase spot),
|
|
89
|
+
the last 365 days, newest bar about an hour behind real time. Its 11 tools differ
|
|
90
|
+
from this server's: no `transpile_pine`, no `backtest_pine_grid`, and it
|
|
91
|
+
takes `symbol` / `interval` / `venue` instead of a CSV path. This local repo is
|
|
54
92
|
**unmetered, runs offline, and lets you bring your own CSVs and run grid
|
|
55
|
-
sweeps**.
|
|
93
|
+
sweeps**. The hosted service's source is private.
|
|
56
94
|
|
|
57
95
|
## Client configuration
|
|
58
96
|
|
|
59
97
|
Mount a directory at `/work`; point `fetch_binance_ohlcv` / `backtest_pine` at
|
|
60
|
-
paths under it. (`-i` is required; never add `-t` — a TTY
|
|
61
|
-
JSON-RPC stream.)
|
|
98
|
+
absolute paths under it (`/work/btc.csv`). (`-i` is required; never add `-t` — a TTY
|
|
99
|
+
corrupts the stdio JSON-RPC stream.)
|
|
62
100
|
|
|
63
|
-
### Claude Desktop
|
|
101
|
+
### Claude Desktop
|
|
102
|
+
|
|
103
|
+
Edit `~/Library/Application Support/Claude/claude_desktop_config.json` (macOS) or
|
|
104
|
+
`%APPDATA%\Claude\claude_desktop_config.json` (Windows) and use an **absolute** host
|
|
105
|
+
path for the mount:
|
|
64
106
|
|
|
65
107
|
```jsonc
|
|
66
108
|
{
|
|
@@ -69,7 +111,7 @@ JSON-RPC stream.)
|
|
|
69
111
|
"command": "docker",
|
|
70
112
|
"args": [
|
|
71
113
|
"run", "--rm", "-i",
|
|
72
|
-
"-v", "
|
|
114
|
+
"-v", "/absolute/path/to/your/data:/work",
|
|
73
115
|
"ghcr.io/pineforge-4pass/pineforge-backtest-mcp:latest"
|
|
74
116
|
]
|
|
75
117
|
}
|
|
@@ -77,7 +119,25 @@ JSON-RPC stream.)
|
|
|
77
119
|
}
|
|
78
120
|
```
|
|
79
121
|
|
|
80
|
-
|
|
122
|
+
### Cursor
|
|
123
|
+
|
|
124
|
+
`.cursor/mcp.json` in the project (or `~/.cursor/mcp.json` for every project).
|
|
125
|
+
Cursor expands `${workspaceFolder}`:
|
|
126
|
+
|
|
127
|
+
```jsonc
|
|
128
|
+
{
|
|
129
|
+
"mcpServers": {
|
|
130
|
+
"pineforge-backtest": {
|
|
131
|
+
"command": "docker",
|
|
132
|
+
"args": [
|
|
133
|
+
"run", "--rm", "-i",
|
|
134
|
+
"-v", "${workspaceFolder}:/work",
|
|
135
|
+
"ghcr.io/pineforge-4pass/pineforge-backtest-mcp:latest"
|
|
136
|
+
]
|
|
137
|
+
}
|
|
138
|
+
}
|
|
139
|
+
}
|
|
140
|
+
```
|
|
81
141
|
|
|
82
142
|
### Claude Code CLI
|
|
83
143
|
|
|
@@ -88,13 +148,13 @@ claude mcp add pineforge-backtest \
|
|
|
88
148
|
|
|
89
149
|
## For AI agents — use via MCP
|
|
90
150
|
|
|
91
|
-
**The capability gap this closes.** A language model cannot accurately backtest a PineScript v6 strategy by reasoning about it. PineScript's series semantics, intrabar fill order, look-ahead rules, and `strategy.*` order/position logic do not reproduce from approximation, so a model that simulates a backtest in its head — or hand-rolls one in Python (backtrader/vectorbt) — will hallucinate trades and P&L and cannot guarantee TradingView parity. PineForge runs the actual deterministic C++ engine instead,
|
|
151
|
+
**The capability gap this closes.** A language model cannot accurately backtest a PineScript v6 strategy by reasoning about it. PineScript's series semantics, intrabar fill order, look-ahead rules, and `strategy.*` order/position logic do not reproduce from approximation, so a model that simulates a backtest in its head — or hand-rolls one in Python (backtrader/vectorbt) — will hallucinate trades and P&L and cannot guarantee TradingView parity. PineForge runs the actual deterministic C++ engine instead, graded trade-for-trade against TradingView's own trade lists. On engine `main` (2026-09-29; not yet released — this image bundles the released engine 0.13.1): **7,989 graded probes, 7,905 excellent (98.95 %) and 84 strong (1.05 %), none below strong, no engine errors**, plus 17 further probes excluded as TradingView-side defects. Separately, the engine's own parity gate checks the open corpus [`pineforge-corpus`](https://github.com/pineforge-4pass/pineforge-corpus), which anyone can reproduce: 312 reference strategies, 311 excellent and 1 probe that declares `expected_tier: anomaly` in its `inputs.json` (reported as `anomaly`, not as a failure). *Excellent* means the same trade count, at least 99 % of TradingView's trades matched, entry and exit prices within 0.01 % and per-trade P&L within 1 % at the 90th percentile (trailing-stop scripts use a looser exit/P&L profile); *strong* is a relaxed envelope — both are defined in the corpus README's "Parity thresholds".
|
|
92
152
|
|
|
93
153
|
**A PineScript backtest is computed external data, not stable knowledge** — it depends on the user's strategy source and their OHLCV, and it must be reproducible. That is a tool call, not a recall task.
|
|
94
154
|
|
|
95
155
|
**When these tools are the right fit.** `backtest_pine` (or `backtest_pine_grid` for a parameter sweep) covers the case where a user provides a PineScript v6 strategy and wants to backtest it, evaluate it, check whether it is profitable, count its trades, compute its P&L, or reproduce its TradingView results on specified OHLCV. `transpile_pine` covers the Pine → C++ conversion only. `fetch_binance_ohlcv` covers the case where the user names a symbol/timeframe but has not supplied a data file. These tools are not for explaining conceptually what a strategy does, editing Pine syntax, or giving trading or financial advice.
|
|
96
156
|
|
|
97
|
-
**Honest limits.** Offline; PineScript v6; needs Docker. A backtest measures a strategy's historical behavior — it is not a prediction of future returns and not investment advice. Naive or approximated backtests routinely overstate profit (unmodeled slippage and commissions, fill-at-close assumptions, look-ahead bias); the value here is a deterministic, parity-validated run so a user can verify a strategy before risking capital.
|
|
157
|
+
**Honest limits.** Offline; PineScript v6 only; needs Docker; PineForge implements a subset of Pine v6 (see [Coverage tools](#coverage-tools)). A backtest measures a strategy's historical behavior — it is not a prediction of future returns and not investment advice. Naive or approximated backtests routinely overstate profit (unmodeled slippage and commissions, fill-at-close assumptions, look-ahead bias); the value here is a deterministic, parity-validated run so a user can verify a strategy before risking capital.
|
|
98
158
|
|
|
99
159
|
## `list_engine_params` — discover knobs
|
|
100
160
|
|
|
@@ -120,7 +180,7 @@ the engine accepts before composing a `backtest_pine` request.
|
|
|
120
180
|
```jsonc
|
|
121
181
|
{
|
|
122
182
|
"source": "//@version=6\nstrategy(\"sma cross\")\n...",
|
|
123
|
-
"ohlcv_csv_path": "
|
|
183
|
+
"ohlcv_csv_path": "/work/btcusdt_15m_7d.csv",
|
|
124
184
|
|
|
125
185
|
// Optional: override Pine input.*() values without touching the source.
|
|
126
186
|
// Keys = the second arg of input.*(...) (e.g. "Fast Length").
|
|
@@ -142,15 +202,19 @@ the engine accepts before composing a `backtest_pine` request.
|
|
|
142
202
|
|
|
143
203
|
// Optional: engine runtime args (NOT strategy() header). Use script_tf
|
|
144
204
|
// to aggregate the input CSV into a coarser strategy timeframe — the
|
|
145
|
-
// engine REJECTS script_tf finer than input_tf
|
|
146
|
-
// (
|
|
205
|
+
// engine REJECTS script_tf finer than input_tf, and the tool call then
|
|
206
|
+
// fails (isError; "engine backtest failure (exit 4)" in the Docker image).
|
|
147
207
|
"runtime": {
|
|
148
208
|
"input_tf": "15",
|
|
149
209
|
"script_tf": "60",
|
|
150
210
|
"bar_magnifier": true,
|
|
151
211
|
"magnifier_samples": 8,
|
|
152
212
|
"magnifier_dist": "endpoints"
|
|
153
|
-
}
|
|
213
|
+
},
|
|
214
|
+
|
|
215
|
+
// Optional: where to write the full JSON report if it is too large to
|
|
216
|
+
// return inline (see below). In Docker use an absolute path under /work.
|
|
217
|
+
"report_path": "/work/report.json"
|
|
154
218
|
}
|
|
155
219
|
```
|
|
156
220
|
|
|
@@ -161,7 +225,10 @@ the engine accepts before composing a `backtest_pine` request.
|
|
|
161
225
|
unset → defaults from `strategy.pine`, with `input_tf` auto-detected from the
|
|
162
226
|
gap between the first two CSV rows.
|
|
163
227
|
|
|
164
|
-
Returns the
|
|
228
|
+
Returns the standalone `pineforge-release` image's report JSON (`engine`, `input`,
|
|
229
|
+
`summary`, `trades`, `metrics`, `equity_curve`, `fingerprint`, `applied_inputs`,
|
|
230
|
+
`applied_overrides`, `applied_runtime`, `diagnostics`, `elapsed_seconds`) plus a
|
|
231
|
+
`_meta` block, inline when it serializes to at most 200,000 bytes:
|
|
165
232
|
|
|
166
233
|
```jsonc
|
|
167
234
|
{
|
|
@@ -170,11 +237,45 @@ Returns the same JSON schema as the standalone `pineforge-release` Docker image:
|
|
|
170
237
|
"applied_inputs": { "Fast Length": "8", "Slow Length": "21" },
|
|
171
238
|
"applied_overrides": { "default_qty_value": "5" },
|
|
172
239
|
"trades": [ ... ],
|
|
240
|
+
"equity_curve": [ ... ],
|
|
173
241
|
"elapsed_seconds": 0.0042,
|
|
174
|
-
"_meta": { "strategy_cpp_bytes": 5079, "image": "
|
|
242
|
+
"_meta": { "strategy_cpp_bytes": 5079, "image": "local" } // npm/npx: the engine image name
|
|
175
243
|
}
|
|
176
244
|
```
|
|
177
245
|
|
|
246
|
+
A long run (3,000 hourly bars is enough) does not fit an MCP tool result. Then
|
|
247
|
+
the full report is written to `report_path` — default `pineforge-backtest-<timestamp>.json`
|
|
248
|
+
in the server's working directory — and the tool returns a compact result instead:
|
|
249
|
+
|
|
250
|
+
```jsonc
|
|
251
|
+
{
|
|
252
|
+
"summary": { ... }, "applied_inputs": { ... }, "applied_overrides": { ... },
|
|
253
|
+
"elapsed_seconds": 0.0008, "total_trades": 73,
|
|
254
|
+
"report_path": "...", "report_path_in_container": "/work/report.json",
|
|
255
|
+
"truncated": true, "note": "...", "_meta": { ... }
|
|
256
|
+
}
|
|
257
|
+
```
|
|
258
|
+
|
|
259
|
+
In the Docker image, always pass an absolute `report_path` under `/work`: the file
|
|
260
|
+
then lands in your mounted folder. Without it the report is written under `/app`,
|
|
261
|
+
inside the container, and disappears with it. (`report_path` and the `note` text are
|
|
262
|
+
computed relative to the container's working directory, so trust the file you find in
|
|
263
|
+
your mounted folder, not those strings.) The inline limit is `PINEFORGE_MAX_INLINE_BYTES`.
|
|
264
|
+
|
|
265
|
+
To get a correct absolute host path back in `report_path`, run the server with `/work`
|
|
266
|
+
as its working directory and give it the host side of the mount in
|
|
267
|
+
`PINEFORGE_HOST_WORKDIR`. The image's entrypoint is a path relative to `/app`, so this
|
|
268
|
+
takes an explicit `--entrypoint`; relative tool paths then resolve inside the mount too:
|
|
269
|
+
|
|
270
|
+
```bash
|
|
271
|
+
docker run --rm -i -v "$PWD:/work" -w /work -e PINEFORGE_HOST_WORKDIR="$PWD" \
|
|
272
|
+
--entrypoint node ghcr.io/pineforge-4pass/pineforge-backtest-mcp:latest /app/dist/index.local.js
|
|
273
|
+
```
|
|
274
|
+
|
|
275
|
+
With the plain `docker run` of [Install](#install) (working directory `/app`),
|
|
276
|
+
`PINEFORGE_HOST_WORKDIR` still makes `report_path` absolute, but wrong: it is joined
|
|
277
|
+
with the report's path relative to `/app`.
|
|
278
|
+
|
|
178
279
|
## `backtest_pine_grid` — parameter sweep
|
|
179
280
|
|
|
180
281
|
Transpiles the Pine source **once** (locally, in-container) then runs the same
|
|
@@ -184,7 +285,7 @@ Returns a ranked list plus the top entry under `best`.
|
|
|
184
285
|
```jsonc
|
|
185
286
|
{
|
|
186
287
|
"source": "//@version=6\nstrategy(\"macd\")\n...",
|
|
187
|
-
"ohlcv_csv_path": "
|
|
288
|
+
"ohlcv_csv_path": "/work/btcusdt_15m_7d.csv",
|
|
188
289
|
|
|
189
290
|
// Each axis is {key: list-of-values}. All combinations are tried.
|
|
190
291
|
"inputs": {
|
|
@@ -201,28 +302,35 @@ Returns a ranked list plus the top entry under `best`.
|
|
|
201
302
|
"fixed_overrides": {}, // typed strategy() overrides
|
|
202
303
|
"runtime": { "input_tf": "15", // engine runtime args, fixed
|
|
203
304
|
"script_tf": "60" }, // across the sweep
|
|
204
|
-
"max_combinations": 64, //
|
|
205
|
-
"concurrency": 2, // parallel
|
|
206
|
-
"include_trades": false, // omit per-trade lists
|
|
207
|
-
"sort_by": "net_pnl"
|
|
305
|
+
"max_combinations": 64, // default 64, at most 1024; a bigger grid is an error
|
|
306
|
+
"concurrency": 2, // parallel runs: default 1, at most 8
|
|
307
|
+
"include_trades": false, // default false: omit per-trade lists
|
|
308
|
+
"sort_by": "net_pnl", // net_pnl (default) | win_rate_pct | max_drawdown | total_trades
|
|
309
|
+
"report_path": "/work/grid.json" // where an oversized sweep is written
|
|
208
310
|
}
|
|
209
311
|
```
|
|
210
312
|
|
|
313
|
+
The result has `total_combinations`, `succeeded`, `failed`, `sort_by`, `best`, and
|
|
314
|
+
`results` (successful runs ranked by `sort_by`, descending, then failures). A sweep
|
|
315
|
+
too large to return inline is written to `report_path` and the tool returns `best`,
|
|
316
|
+
the top 10 in `top_results`, `results_truncated` and `report_path`.
|
|
317
|
+
|
|
211
318
|
## `fetch_binance_ohlcv` — pull market data
|
|
212
319
|
|
|
213
320
|
Writes a backtest-ready CSV (header `timestamp,open,high,low,close,volume`,
|
|
214
321
|
timestamp = open time in UNIX ms UTC) from Binance's public endpoints. No
|
|
215
322
|
auth required. Requests > 1000 bars are paginated
|
|
216
|
-
automatically.
|
|
217
|
-
|
|
323
|
+
automatically. `output_path` follows the same rules as `ohlcv_csv_path`: in Docker
|
|
324
|
+
use an absolute path under `/work`; with npx it must stay inside the working
|
|
325
|
+
directory unless `PINEFORGE_ALLOW_ANYWHERE=1`.
|
|
218
326
|
|
|
219
327
|
```jsonc
|
|
220
328
|
{
|
|
221
329
|
"symbol": "BTCUSDT",
|
|
222
|
-
"interval": "15m", // 1s, 1m, 3m, 5m, 15m, 30m, 1h, 2h, 4h, 6h, 8h, 12h, 1d, 3d, 1w, 1M
|
|
223
|
-
"market": "spot", // or "usdt_perp" for USDT-margined perpetual futures
|
|
224
|
-
"limit": 672, // total bars; > 1000 paginates
|
|
225
|
-
"output_path": "
|
|
330
|
+
"interval": "15m", // 1s (spot only), 1m, 3m, 5m, 15m, 30m, 1h, 2h, 4h, 6h, 8h, 12h, 1d, 3d, 1w, 1M
|
|
331
|
+
"market": "spot", // default; or "usdt_perp" for USDT-margined perpetual futures
|
|
332
|
+
"limit": 672, // total bars: default 1000, at most 100000; > 1000 paginates
|
|
333
|
+
"output_path": "/work/btcusdt_15m_7d.csv"
|
|
226
334
|
// Optional: "start_time" / "end_time" in UNIX ms UTC.
|
|
227
335
|
}
|
|
228
336
|
```
|
|
@@ -235,28 +343,76 @@ calling `fetch_binance_ohlcv`.
|
|
|
235
343
|
|
|
236
344
|
```jsonc
|
|
237
345
|
{
|
|
238
|
-
"market": "usdt_perp",
|
|
346
|
+
"market": "usdt_perp", // required: "spot" or "usdt_perp"
|
|
239
347
|
"query": "BTC", // case-insensitive substring match
|
|
240
348
|
"quote_asset": "USDT",
|
|
349
|
+
"base_asset": "BTC",
|
|
241
350
|
"status": "TRADING",
|
|
242
351
|
"contract_type": "PERPETUAL", // futures-only filter
|
|
243
|
-
"limit": 50
|
|
352
|
+
"limit": 50 // default 200, at most 2000
|
|
244
353
|
}
|
|
245
354
|
```
|
|
246
355
|
|
|
356
|
+
## Coverage tools
|
|
357
|
+
|
|
358
|
+
PineForge implements a **subset** of Pine v6, so check before you write or port a
|
|
359
|
+
strategy:
|
|
360
|
+
|
|
361
|
+
- `list_coverage_topics` — every coverage topic with a status (`supported`,
|
|
362
|
+
`partial`, `unsupported`, `via_transpiler`) and a summary, plus the legend.
|
|
363
|
+
- `get_coverage_topic` `{ "topic": "ta" }` — the full `supported` / `unsupported`
|
|
364
|
+
lists for one topic id (for example `ta`, `strategy_orders`, `request_security`).
|
|
365
|
+
- `check_pine_feature` `{ "feature": "ta.supertrend" }` — one identifier or namespace:
|
|
366
|
+
`supported` / `partial` / `unsupported` / `via_transpiler` / `not_found`. Visual and
|
|
367
|
+
alert APIs (`plot`, `label`, `line`, `box`, `table`, `alert`) are parsed and skipped.
|
|
368
|
+
|
|
369
|
+
The data is embedded in this package and stamped by the `coverage_version` field
|
|
370
|
+
that `list_coverage_topics` returns (`2026-06-04 / 0fccede` in this version); the
|
|
371
|
+
engine's [`docs/coverage.md`](https://github.com/pineforge-4pass/pineforge-engine/blob/main/docs/coverage.md)
|
|
372
|
+
is the live reference.
|
|
373
|
+
|
|
247
374
|
## Filesystem scope
|
|
248
375
|
|
|
249
|
-
|
|
250
|
-
server process. Override with:
|
|
376
|
+
With `npx`, OHLCV, output and report paths must be inside the current working
|
|
377
|
+
directory of the MCP server process by default. Override with:
|
|
251
378
|
|
|
252
379
|
```bash
|
|
253
380
|
export PINEFORGE_ALLOW_ANYWHERE=1
|
|
254
381
|
```
|
|
255
382
|
|
|
383
|
+
The Docker image sets `PINEFORGE_ALLOW_ANYWHERE=1` itself (the container is the
|
|
384
|
+
sandbox), so any path is accepted there — use absolute `/work/...` paths.
|
|
385
|
+
|
|
256
386
|
## Other env vars
|
|
257
387
|
|
|
258
388
|
| var | default | purpose |
|
|
259
389
|
|---|---|---|
|
|
260
|
-
| `PINEFORGE_IMAGE` | `ghcr.io/pineforge-4pass/pineforge-release:latest` |
|
|
261
|
-
| `PINEFORGE_ALLOW_ANYWHERE` | `0` | Allow OHLCV paths outside cwd |
|
|
262
|
-
| `PINEFORGE_DOCKER_TIMEOUT_MS` | `120000` | Hard kill for
|
|
390
|
+
| `PINEFORGE_IMAGE` | `ghcr.io/pineforge-4pass/pineforge-release:latest` | npm/npx only: engine image (runtime + bundled codegen) used for transpile + backtest |
|
|
391
|
+
| `PINEFORGE_ALLOW_ANYWHERE` | `0` (`1` in the Docker image) | Allow OHLCV / output / report paths outside cwd |
|
|
392
|
+
| `PINEFORGE_DOCKER_TIMEOUT_MS` | `120000` | Hard kill for each engine run and for `docker pull` |
|
|
393
|
+
| `PINEFORGE_MAX_INLINE_BYTES` | `200000` | Largest report returned inline; bigger ones are written to `report_path` |
|
|
394
|
+
| `PINEFORGE_HOST_WORKDIR` | unset | Docker: the host dir mounted at `/work`; when set, `report_path` is an absolute host path — correct only when the server runs with `/work` as its working directory (see the end of [`backtest_pine` example](#backtest_pine-example)) |
|
|
395
|
+
|
|
396
|
+
With Docker, pass these as `-e NAME=value`.
|
|
397
|
+
|
|
398
|
+
## Develop
|
|
399
|
+
|
|
400
|
+
```bash
|
|
401
|
+
npm ci
|
|
402
|
+
npm run build # tsc; also writes the gitignored src/version.ts
|
|
403
|
+
npm test
|
|
404
|
+
```
|
|
405
|
+
|
|
406
|
+
To build the image, pass the `pineforge-release` version to build on (a tag from
|
|
407
|
+
its Releases page, without the `v`):
|
|
408
|
+
|
|
409
|
+
```bash
|
|
410
|
+
docker build -f docker/Dockerfile --build-arg PINEFORGE_RELEASE_VERSION=<X.Y.Z> -t pineforge-backtest-mcp .
|
|
411
|
+
```
|
|
412
|
+
|
|
413
|
+
## License
|
|
414
|
+
|
|
415
|
+
This server is MIT-licensed ([LICENSE](LICENSE)). The image also bundles
|
|
416
|
+
`pineforge-engine` (Apache-2.0) and the `pineforge-codegen` transpiler
|
|
417
|
+
(source-available: PolyForm Noncommercial 1.0.0 with a Personal Trading exception;
|
|
418
|
+
commercial or hosted use needs a commercial license). See [LEGAL.md](LEGAL.md).
|
package/dist/server.js
CHANGED
|
@@ -639,9 +639,9 @@ export function createServer(runner, opts) {
|
|
|
639
639
|
"PineScript v6 series semantics, intrabar fills, and strategy.* order logic do not reproduce " +
|
|
640
640
|
"from approximation, so a hand-simulated backtest is unreliable and will not match TradingView.";
|
|
641
641
|
const proof = "The engine transpiles Pine to C++ and runs it on the user's OHLCV, returning the actual trade " +
|
|
642
|
-
"list and P&L — deterministic and reproducible,
|
|
643
|
-
"
|
|
644
|
-
"
|
|
642
|
+
"list and P&L — deterministic and reproducible, graded trade-for-trade against TradingView's own " +
|
|
643
|
+
"trade lists (engine main, 2026-09-29): 7,989 probes graded, 7,905 excellent and 84 strong, none " +
|
|
644
|
+
"below strong.";
|
|
645
645
|
const whenToUse = "Reach for these when a user wants to backtest a Pine strategy, check whether it is profitable, " +
|
|
646
646
|
"run it on their own data or a symbol like BTCUSDT, reproduce TradingView results, count trades / " +
|
|
647
647
|
"win rate / drawdown / profit factor, or compare parameter settings. A backtest is historical " +
|
package/dist/server.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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"}
|
package/dist/version.js
CHANGED
package/dist/version.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"version.js","sourceRoot":"","sources":["../src/version.ts"],"names":[],"mappings":"AAAA,0EAA0E;AAC1E,MAAM,CAAC,MAAM,OAAO,GAAG,
|
|
1
|
+
{"version":3,"file":"version.js","sourceRoot":"","sources":["../src/version.ts"],"names":[],"mappings":"AAAA,0EAA0E;AAC1E,MAAM,CAAC,MAAM,OAAO,GAAG,aAAa,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@pineforge/backtest-mcp",
|
|
3
|
-
"version": "0.9.
|
|
3
|
+
"version": "0.9.32-rc.1",
|
|
4
4
|
"description": "Local MCP server: PineScript v6 → C++ + Docker backtest runner with parameter sweeps + Binance OHLCV exporter. Fully local (transpiler bundled in the engine image), no API key.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"bin": {
|
|
@@ -22,7 +22,7 @@
|
|
|
22
22
|
"predev": "npm run sync-version",
|
|
23
23
|
"dev": "tsx src/index.ts",
|
|
24
24
|
"prepublishOnly": "npm run build",
|
|
25
|
-
"test": "node --import tsx --test test/**/*.test.ts"
|
|
25
|
+
"test": "node --import tsx --test 'test/**/*.test.ts'"
|
|
26
26
|
},
|
|
27
27
|
"dependencies": {
|
|
28
28
|
"@modelcontextprotocol/sdk": "^1.0.0",
|