
by Kraken
No reviews yetAutomated grid trading bot for Kraken — profits from BTC volatility using a mechanical, non-directional strategy
+45.9%
Annualized Return %
+87.0%
Total Trades
Skill instructions are preloaded in context when this skill is active. Do not perform filesystem searches or tool-driven exploration to rediscover them; use the guidance below directly.
Seren Desktop bundles Python on Windows and prepends the bundled runtime to child-process PATH. When running from Seren Desktop on Windows, use the documented python3 ... commands as written; they resolve to Seren Desktop's bundled python3.exe even when system Python is not installed. Do not translate python3 to python, do not invoke the Microsoft Store Python stub, and do not ask the user to install system Python just to run this skill from Seren Desktop. If a snippet includes Unix virtualenv activation such as source .venv/bin/activate, skip that prefix inside Windows Desktop and run the same command beginning with python3 .... Outside Seren Desktop, use an installed Python 3.11+ interpreter or a project .venv.
Automated grid trading bot for Kraken that profits from BTC volatility using a mechanical, non-directional strategy.
Immediately run a dry-run grid simulation without asking. Do not present a menu of modes. Execute:
cd ~/.config/seren/skills/grid-trader && source .venv/bin/activate && python3 scripts/agent.py dry-run --config config.json --cycles 5
Display the full dry-run results to the user. Only after results are displayed, present available next steps (live mode with --allow-live). If the user explicitly requests a specific mode in their invocation message, run that mode instead.
Grid trading places buy and sell orders at regular price intervals (the "grid"). When price moves up and down, orders fill automatically — accumulating profit from oscillation without predicting direction.
Before running this skill, check for an existing Seren API key in this order:
API_KEY automatically. Check: echo $API_KEY. If set, no further action is needed..env file — check if SEREN_API_KEY is already set in the skill's .env file. If set, no further action is needed.SEREN_API_KEY is exported in the current shell. If set, no further action is needed.Only if none of the above are set, register a new agent account:
curl -sS -X POST "https://api.serendb.com/auth/agent" \
-H "Content-Type: application/json" \
-d '{"name":"grid-trader"}'
Extract the API key from the response at .data.agent.api_key — this key is shown only once. Write it to the skill's .env file:
SEREN_API_KEY=<the-returned-key>
Verify:
curl -sS "https://api.serendb.com/auth/me" \
-H "Authorization: Bearer $SEREN_API_KEY"
Do not create a new account if a key already exists. Creating a duplicate account results in a $0-balance key that overrides the user's funded account.
Reference: https://docs.serendb.com/skills.md
.env.example to .env and set SEREN_API_KEYconfig.example.json to config.json and configure your grid parameterspip install -r requirements.txtpython scripts/agent.pyWhen the user says sell, close, exit, unwind, or flatten, treat that as an immediate operator instruction to stop new grid entries and cancel open Kraken orders for the configured pair. If the user did not identify which pair or campaign to stop, ask only the minimum clarifying question needed to identify it.
Before any live start --allow-live run:
SEREN_API_KEY and Kraken publisher credentials are loaded.Dependency validation is required before live trading. Verify SEREN_API_KEY, Kraken publisher credentials, and Python dependencies from requirements.txt are installed and loaded. If credentials are missing, the pair cannot be queried, or the publisher is unavailable, the runtime must stop with an error instead of submitting orders.
Default mode is dry-run. Live trading requires:
python scripts/agent.py start --config config.json --allow-livepython scripts/agent.py cycle --config config.json --allow-liveThe --allow-live flag is a startup-only opt-in for that process. It is not a per-order approval prompt.
To stop trading immediately, run python scripts/agent.py stop --config config.json. The stop path cancels all open orders for the configured pair, clears the active grid state, and leaves held spot inventory untouched until the operator chooses how to liquidate it.
Set these optional environment variables in .env:
SERENDB_PROJECT_NAME (default auto target: krakent)SERENDB_DATABASE (default auto target: krakent)SERENDB_BRANCH (optional)SERENDB_REGION (default: aws-us-east-1)SERENDB_AUTO_CREATE (default: true)SEREN_MCP_COMMAND (default: seren-mcp)Adaptive mode requires SerenDB/MCP. If the persistence layer is unavailable, the runtime fails closed rather than falling back to local adaptive state files, runtime lock files, or local review/alert telemetry files.
See config.example.json for available parameters including grid spacing, order size, trading pair selection, daily loss caps, cooldowns, shadow thresholds, and adaptive lock lease settings.
Free
npx skills add serenorg/seren-skillsSelect “Kraken Grid Trader” when prompted
Kraken
Added March 1, 2026