$npx -y skills add moss-site/moss-trade-bot-skills --skill moss-trade-bot-factory-en-1.0.3Users describe a trading style in natural language, and the skill creates a crypto trading bot, runs local backtests, supports periodic reflection-driven evolution, and can optionally connect to an external platform for verification and simulated live trading.
| 1 | # Moss Trade Bot Factory |
| 2 | |
| 3 | A professional crypto quantitative trading bot factory plus strategy tuning specialist. |
| 4 | |
| 5 | **Knowledge base** (read on demand, never all at once): |
| 6 | - Parameter reference + tuning cheatsheet -> `cat {baseDir}/knowledge/params_reference.md` |
| 7 | - Evolution logic + 7 reflection principles -> `cat {baseDir}/knowledge/evolution_guide.md` |
| 8 | - Verification upload + live trading operations -> `cat {baseDir}/knowledge/platform_ops.md` |
| 9 | |
| 10 | ## One-Time Local Setup |
| 11 | |
| 12 | - This skill depends on the bundled `scripts/requirements.txt` for local Python packages such as `pandas`, `numpy`, `ccxt`, and `scipy` |
| 13 | - Install them only into the local `{baseDir}/.venv`; do not install extra packages and do not modify system-wide Python |
| 14 | - Before the first dependency install, ask one confirmation question such as `This skill needs its bundled local Python environment. Install it now into {baseDir}/.venv?` |
| 15 | - After the user approves, run: |
| 16 | ```bash |
| 17 | cd {baseDir} && python3 scripts/setup_env.py |
| 18 | ``` |
| 19 | - After setup, prefer this interpreter for every bundled script: |
| 20 | ```bash |
| 21 | PYTHON_BIN="{baseDir}/.venv/bin/python" |
| 22 | ``` |
| 23 | - If the current environment already imports all required packages successfully, you may continue without reinstalling them |
| 24 | |
| 25 | ## Safety And Transparency |
| 26 | |
| 27 | - **Local first**: bot creation, backtesting, and evolution are local by default. If the user provides a CSV directly, the workflow can be fully offline |
| 28 | - **Data boundary**: backtest / evolution / verification upload always use Binance USDT-M or your provided Binance CSV. Coinbase is allowed only as a live signal input |
| 29 | - **Platform features are optional**: connect to the external platform only when the user explicitly asks to upload, bind, or trade live. The default platform URL comes from skill config `trade_api_url`, whose default is `https://ai.moss.site` |
| 30 | - **Platform URL rule**: `--platform-url` should be only the site origin, for example `https://ai.moss.site`; scripts will append the full API prefix and request `https://ai.moss.site/api/v1/moss/agent/agents/bind` |
| 31 | - **Local credentials**: platform credentials are stored at `~/.moss-trade-bot/agent_creds.json` by default; if skill config `agent_creds_path` is set, prefer that path. Credentials are sent only to the user-specified platform address |
| 32 | - **No env vars**: platform scripts depend only on explicit `--platform-url` and the local creds file. They do not read hidden environment variables and do not scan unrelated system credentials |
| 33 | - **Explicit install mechanism**: Python dependencies are installed only from the bundled `scripts/requirements.txt`, through `scripts/setup_env.py`, into the local `.venv` |
| 34 | - **Progressive disclosure**: multiple local markdown files are read only when needed; `/tmp/*.json` files are only local intermediates for params, fingerprints, and backtest outputs |
| 35 | - **Confirmation boundary**: stop at these checkpoints: whether to enable weekly evolution, one confirmation before the first dependency install, one execution confirmation before the first local backtest run, the A/B/C choice after backtest results, the first live data-source switch, and each order in manual mode. All other local steps should continue directly |
| 36 | |
| 37 | Follow the steps below strictly. Do not skip steps. Stop only at the confirmation checkpoints explicitly called out below; continue directly for everything else. |
| 38 | |
| 39 | --- |
| 40 | |
| 41 | ## Step 1: Understand Intent And Confirm Evolution |
| 42 | |
| 43 | After receiving the strategy description, **use professional judgment to auto-fill the configuration**. Ask only one question: **whether to enable evolution**. |
| 44 | |
| 45 | Automatic inference rules (do not ask item by item): |
| 46 | - Direction: trend-following -> bi-directional (`0.5`), bearish / contrarian -> short-biased (`0.1~0.3`), conservative / DCA -> long-biased (`0.6~0.8`) |
| 47 | - Leverage: conservative -> `3~5x`, neutral -> `8~12x`, aggressive -> `15~25x`, all-in -> `50~100x` |
| 48 | - Defaults: `BTC/USDT`, `15m`, `148 days`, `$10,000` |
| 49 | |
| 50 | **You must ask the user:** |
| 51 | ```text |
| 52 | Do you want to enable weekly evolution? |
| 53 | On: every week, tactical parameters are fine-tuned based on trading results while the core personality stays the same. Best for trend / momentum strategies |
| 54 | Off: parameters stay fully fixed. Best for highly disciplined strategies or when you already trust the setup |
| 55 | Default recommendation: On |
| 56 | ``` |
| 57 | |
| 58 | **Backtest data prerequisite**: you must have an OHLCV CSV before running a backtest. |
| 59 | |
| 60 | - **Local experimentation**: any Binance UM time range is acceptable |
| 61 | - **Verification upload**: you must use the **2025-10-06 ~ 2026-03-03** range. `fetch_data.py` defaults to this |