Almost ready...

Free Crypto Trading Bot

Run a free crypto trading bot on your own computer: Python 3.10+, Freqtrade, dry-run vs live, security practices, and optional local CLI install from GitHub. Educational guide only.

Open source · Local-first

Free crypto trading bot — local setup guide

Crypto trading is buying and selling digital assets on an exchange. A crypto trading bot automates that workflow: it follows rules you configure (signals, entries, and exits) so trades can run without constant manual clicks — often using tools like Freqtrade. Running a bot on your own computer keeps API keys off third-party dashboards and avoids paying for hosted “black box” services.

See local setup

Free core stack

Python + Freqtrade are open source.

Security by design

Encrypted storage, tight file permissions, no credential logs.

Optional CLI

The optional CLI walks you through Freqtrade so you can run your bot from the terminal with a guided menu.

Trading styles

Common patterns

Different market conditions favour different ideas. Below are common rule-based styles people use with trading bots; the included CLI ships starter templates for Grid, RSI, and EMA.

Grid

Buy toward the lower bound of a range, sell toward the upper bound. Works best in sideways, oscillating markets.

RSI mean reversion

Enter when the Relative Strength Index suggests oversold conditions; exit when it suggests overbought. Suited to ranging or mildly trending pairs.

EMA crossover

Golden cross (short EMA above long EMA) for entries; death cross for exits. Classic trend-following on higher timeframes.

Market making

Places bid and ask quotes around mid-price to earn spread. Needs low fees, fast connectivity, and careful inventory risk management.

Arbitrage

Exploits price differences across venues or instruments. Technically demanding and sensitive to latency and capital locks.

Breakout / momentum

Enters when price clears a volatility band or structure level. Fits strong trends; false breakouts are the main risk.

Setup

Run a bot locally

Follow these steps on macOS, Linux, or Windows (WSL recommended for Freqtrade). Always start with dry-run or exchange sandbox before live trading.

This open-source CLI helper runs a local trading bot: it manages Freqtrade processes, talks to Freqtrade’s REST API, and stores state in a local SQLite database — no separate web app or cloud database.

  1. Prerequisites

    Install Python 3.10+ and Freqtrade.

    python3 --version   # must be >= 3.10
    pip install freqtrade
    freqtrade --version

    If freqtrade is not found, add ~/.local/bin to PATH (e.g. export in ~/.zshrc).

  2. Install the CLI

    Recommended: clone from GitHub and install locally in editable mode. PyPI remains optional when the package is published.

    git clone https://github.com/SaintQuant/saintquant-crypto-trading-cli saintquant-crypto-trading-cli
    cd saintquant-crypto-trading-cli && pip install -e .
    # Optional (PyPI, when published): pip install saintquant-crypto-trading-cli
    saintbot-cli --version
  3. First launch

    Run the wizard; confirm the Freqtrade binary path and optional proxy for geo-restricted exchanges.

    saintbot-cli
  4. Create a bot

    From the menu, choose create bot: pick exchange, prefer Dry-run (paper) first, enter API keys if needed, select Grid / RSI / EMA, accept or tune parameters, then start. You’ll get a local Web UI URL on 127.0.0.1 with a generated password.

  5. Proxy (optional)

    Only affects exchange API traffic; local Freqtrade API calls bypass the proxy.

    saintbot-cli proxy
    saintbot-cli proxy http://127.0.0.1:1087
    saintbot-cli proxy clear

Want ready-made strategies instead?

If self-hosting feels too cumbersome or the results are disappointing, you can use proven strategies from your dashboard in a few clicks.

Parameters

Typical settings

Each built-in template shares basics like pair, timeframe, order type, position size, max open trades, stop-loss, take-profit, and optional trailing stop. Template-specific defaults (e.g. RSI thresholds, EMA periods, grid spacing) can be adjusted in the wizard.

  • Dry-run — virtual balance, no real orders — ideal for learning.
  • Sandbox — exchange testnet with testnet API keys.
  • Live — real funds; use only after thorough testing.

Security highlights

  • API secrets encrypted at rest (Fernet); key derived from your machine ID.
  • Temporary Freqtrade configs with credentials are deleted right after the subprocess reads them.
  • Config and database files created with 600 permissions (owner read/write only).
  • Raw credentials are never written to logs.

Reset wizard: saintbot-cli setup — full wipe: saintbot-cli setup --reset

Sign In Sign Up