← 返回 Skills 市场
avmw2025

Defi Trading Engine

作者 Elway Botty · GitHub ↗ · v1.0.1 · MIT-0
cross-platform ✓ 安全检测通过
319
总下载
0
收藏
2
当前安装
2
版本数
在 OpenClaw 中安装
/install defi-trading-engine
功能描述
DeFi Trading Engine - Autonomous DeFi trading bot with self-improving review system for OpenClaw agents. Use when setting up DeFi trading, crypto trading bot...
使用说明 (SKILL.md)

DeFi Trading Engine

Autonomous DeFi trading bot with self-improving review system. Scans for opportunities, executes trades, logs performance, and learns from mistakes.

When to Use

Apply this skill when:

  • Setting up automated crypto trading on Base or other EVM chains
  • Building a self-improving trading system
  • Implementing systematic DeFi trading strategies
  • Executing DCA, momentum, or mean reversion strategies
  • Reviewing and optimizing trading performance
  • Managing trading risk (position sizing, drawdown limits)
  • Integrating with Bankr CLI or other DEX tools

Architecture

Self-Improvement Loop:

scan → evaluate → execute → log → review → patch params → repeat

Components:

  1. Token Scanner (scan-tokens.py) — Finds trading opportunities
  2. Risk Manager (risk-manager.py) — Enforces position limits and risk rules
  3. Trade Executor (trade-executor.py) — Executes trades via Bankr CLI
  4. Daily Review (daily-review.py) — Analyzes performance and suggests improvements
  5. Config File (trading-config.json) — Central configuration for all parameters

Quick Start

1. Setup

Create workspace:

mkdir -p ~/trading-bot/{trades,reviews}
cd ~/trading-bot

Copy skill scripts:

cp ~/.openclaw/skills/defi-trading-engine/scripts/* .

2. Configure

Create trading-config.json:

{
  "risk": {
    "max_position_size_usd": 40,
    "take_profit_pct": 4,
    "stop_loss_pct": 8,
    "max_active_positions": 5,
    "max_daily_trades": 8,
    "cooldown_minutes": 30,
    "max_drawdown_pct": 15
  },
  "strategy": {
    "type": "momentum_swing",
    "entry_signal": "volume_spike_and_price_up",
    "exit_signal": "take_profit_or_stop_loss",
    "timeframe": "15min"
  },
  "bankr": {
    "chain": "base",
    "wallet": "trading-wallet",
    "slippage_pct": 1.5
  },
  "data_sources": {
    "use_coingecko_trending": true,
    "use_dexscreener": true,
    "min_liquidity_usd": 50000,
    "min_volume_24h_usd": 100000
  }
}

3. Setup Bankr (if needed)

See references/bankr-setup.md for Bankr CLI setup.

4. Run the Trading Loop

Manual execution:

# 1. Scan for opportunities
python3 scan-tokens.py --output candidates.json

# 2. Review candidates
cat candidates.json

# 3. Execute a trade (after risk check)
python3 trade-executor.py --symbol SOL --action buy --amount 40

# 4. Run daily review
python3 daily-review.py

Automated loop (cron):

# Run scanner every 30 minutes
*/30 * * * * cd ~/trading-bot && python3 scan-tokens.py --output candidates.json

# Run daily review at 23:00
0 23 * * * cd ~/trading-bot && python3 daily-review.py

Core Scripts

scan-tokens.py

Scans for trading opportunities using free APIs.

Data Sources:

  • CoinGecko trending coins
  • Volume spikes (24h volume vs 7d average)
  • Price momentum (1h, 4h, 24h trends)
  • Liquidity and market cap filters

Output (candidates.json):

[
  {
    "symbol": "SOL",
    "name": "Solana",
    "price": 145.5,
    "volume_24h": 2800000000,
    "volume_spike_ratio": 1.8,
    "price_change_1h_pct": 2.5,
    "price_change_24h_pct": 5.2,
    "liquidity_usd": 850000000,
    "score": 8.5,
    "signals": ["trending", "volume_spike", "momentum_up"]
  }
]

Usage:

python3 scan-tokens.py --output candidates.json --min-score 7.0

risk-manager.py

Enforces risk limits before every trade. Acts as the gatekeeper.

Checks:

  • Position size within limit
  • Max active positions not exceeded
  • Daily trade limit not exceeded
  • Cooldown period respected
  • Max drawdown not breached

Usage:

python3 risk-manager.py --action check --symbol SOL --amount 40

Exit Codes:

  • 0 — Trade approved
  • 1 — Trade denied (prints reason)

Example Output:

✅ Risk check passed
  - Position size: $40 (limit: $40)
  - Active positions: 3 (limit: 5)
  - Daily trades: 5 (limit: 8)
  - Cooldown: OK (35 minutes since last trade)
  - Drawdown: 8.5% (limit: 15%)

trade-executor.py

Executes trades via Bankr CLI (or generic DEX interface).

Supported Actions:

  • buy — Market buy
  • sell — Market sell
  • limit_buy — Limit order buy
  • limit_sell — Limit order sell
  • set_stop_loss — Stop-loss order
  • set_take_profit — Take-profit order

Usage:

# Market buy
python3 trade-executor.py --symbol SOL --action buy --amount 40

# Sell with stop-loss
python3 trade-executor.py --symbol SOL --action sell --stop-loss-pct 8

Trade Log (trades/YYYY-MM-DD.json):

[
  {
    "timestamp": "2026-03-13T15:45:00Z",
    "symbol": "SOL",
    "action": "buy",
    "amount_usd": 40,
    "price": 145.5,
    "quantity": 0.275,
    "tx_hash": "0xabc123...",
    "status": "success",
    "take_profit_price": 151.32,
    "stop_loss_price": 133.86
  }
]

daily-review.py

Analyzes trade history, calculates P&L, identifies weaknesses, and suggests parameter adjustments.

Metrics Calculated:

  • Total P&L (realized + unrealized)
  • Win rate (% of profitable trades)
  • Average win vs average loss
  • Sharpe ratio (if enough data)
  • Max drawdown
  • Best/worst trades

Output (reviews/review-YYYY-MM-DD.md):

# Trading Review — 2026-03-13

## Performance Summary
- **Total P&L:** +$42.50 (+5.3%)
- **Trades:** 8 (6 wins, 2 losses)
- **Win Rate:** 75%
- **Avg Win:** $9.20
- **Avg Loss:** -$5.80
- **Max Drawdown:** 8.5%

## Top Performers
1. SOL: +$18.50 (+12.7%)
2. LINK: +$12.20 (+8.1%)

## Worst Performers
1. UNI: -$8.50 (-5.7%)

## Pattern Analysis
- ✅ Momentum trades (4/5 profitable)
- ⚠️ Low liquidity tokens (1/3 profitable)
- ❌ Entries during high volatility (0/2 profitable)

## Recommended Adjustments
1. Increase `min_liquidity_usd` from $50k to $100k (low liquidity trades underperformed)
2. Add volatility filter (skip trades when VIX > 30)
3. Tighten stop-loss to 6% (avg loss exceeds target)

## Next Actions
- [ ] Update `trading-config.json` with new parameters
- [ ] Backtest on last 30 days with new rules
- [ ] Monitor performance for 1 week before further changes

Usage:

python3 daily-review.py --start-date 2026-03-01 --end-date 2026-03-13

Configuration Reference

Risk Parameters

Parameter Default Purpose
max_position_size_usd 40 Max $ per trade
take_profit_pct 4 Exit when +4% gain
stop_loss_pct 8 Exit when -8% loss
max_active_positions 5 Max concurrent positions
max_daily_trades 8 Max trades per day
cooldown_minutes 30 Wait time between trades
max_drawdown_pct 15 Stop trading if down 15%

Strategy Parameters

Parameter Options Purpose
type momentum_swing, mean_reversion, dca, asymmetric Strategy type
entry_signal volume_spike_and_price_up, oversold, breakout Entry condition
exit_signal take_profit_or_stop_loss, reversal, time_based Exit condition
timeframe 5min, 15min, 1h, 4h Trading timeframe

Bankr Integration

Parameter Default Purpose
chain base EVM chain (base, ethereum, polygon)
wallet trading-wallet Bankr wallet name
slippage_pct 1.5 Max acceptable slippage

Strategy Templates

See references/strategies.md for detailed strategy implementations:

  1. DCA (Dollar-Cost Averaging) — Buy fixed amount on schedule
  2. Momentum Swing — Ride short-term momentum with tight stops
  3. Mean Reversion — Buy dips, sell rallies
  4. Asymmetric Bets — Small positions on high-upside opportunities

Risk Management Rules

The risk manager enforces these rules:

Position Sizing

Position size ≤ max_position_size_usd

Active Position Limit

count(open_positions) \x3C max_active_positions

Daily Trade Limit

count(trades_today) \x3C max_daily_trades

Cooldown Period

time_since_last_trade ≥ cooldown_minutes

Max Drawdown Circuit Breaker

if current_drawdown ≥ max_drawdown_pct:
  halt_all_trading()
  send_alert()

When max drawdown is hit, all trading stops until manually reset.


Self-Improvement Process

The bot learns from performance:

1. Daily Review Run daily-review.py to analyze trades.

2. Pattern Recognition Identify which setups worked:

  • Entry conditions with >70% win rate
  • Tokens with consistent performance
  • Timeframes with best risk/reward

3. Parameter Adjustment Update trading-config.json based on findings:

  • Tighten filters if win rate \x3C 60%
  • Adjust position size if drawdown too high
  • Change timeframe if signals lag

4. Backtest Changes Test new parameters on historical data (manual or automated).

5. Monitor Run new parameters for 7 days, then review again.

Cycle: Weekly reviews → Parameter tweaks → Monitor → Repeat


Safety Features

DO:

  • Start with small position sizes ($40 default)
  • Use stop-losses on every trade
  • Respect cooldown periods (avoid overtrading)
  • Run daily reviews to catch bad patterns early
  • Keep max drawdown limit low (15% default)
  • Paper trade first (simulate without real funds)

DON'T:

  • Disable risk manager checks
  • Increase position size without testing
  • Remove stop-losses ("this time is different")
  • Trade during network congestion (high gas fees)
  • Ignore max drawdown signals
  • Use leverage (this engine is spot-only by design)

Monitoring & Alerts

Track bot health:

Check active positions:

jq '.[] | select(.status == "open")' trades/*.json

Check today's P&L:

python3 daily-review.py --start-date $(date +%Y-%m-%d) --end-date $(date +%Y-%m-%d)

Alert on max drawdown:

# Add to cron (every hour)
python3 risk-manager.py --action check_drawdown && echo "Trading halted: max drawdown exceeded"

Troubleshooting

Problem: Risk manager denies all trades

Solution: Check trading-config.json limits. May have hit daily trade limit or max drawdown.


Problem: Trades execute but P&L is negative

Solution: Run daily-review.py to identify losing patterns. Tighten entry filters or adjust stop-loss.


Problem: Bankr CLI errors

Solution: Check wallet balance, network connection, and gas fees. See references/bankr-setup.md.


Problem: Scanner returns no candidates

Solution: Lower min_score threshold or relax liquidity filters.


Advanced Features

Paper Trading Mode

Test strategies without real funds:

{
  "mode": "paper",
  "paper_balance_usd": 1000
}

All trades simulate execution, no real transactions.

Multi-Strategy Support

Run multiple strategies in parallel:

{
  "strategies": [
    {
      "name": "momentum",
      "allocation_pct": 60,
      "config": { ... }
    },
    {
      "name": "mean_reversion",
      "allocation_pct": 40,
      "config": { ... }
    }
  ]
}

Backtesting

Test parameters on historical data (requires historical price data):

python3 backtest.py --start 2026-01-01 --end 2026-03-01 --config trading-config.json

(Backtest script not included — implement based on your data source)


Resources


Version: 1.0 Last Updated: 2026-03-13 Security Note: Store API keys and wallet private keys securely. Never commit to Git.

安全使用建议
This skill appears internally consistent with an automated DeFi trading bot, but it can execute real trades via the Bankr CLI. Before installing or running: - Review and vet the Bankr CLI (npm package and https://bankr.bot). Only install trusted CLIs and understand where they store keys (~/.bankr/config.json). - Start in dry-run / paper-trade mode (configs default to dry_run=true) and test with small amounts or no funds. - Inspect the included scripts (you already have them) for unexpected network endpoints — they call CoinGecko and use the local Bankr CLI only. - Keep private keys / API keys offline or limited; consider a separate wallet with minimal funds for testing. - If you want higher assurance, run the scripts in an isolated environment/container and review the Bankr CLI's source or reputation before granting it access to funds.
功能分析
Type: OpenClaw Skill Name: defi-trading-engine Version: 1.0.1 The bundle provides a comprehensive framework for an automated DeFi trading bot on the Base chain, utilizing the 'bankr' CLI for execution. It includes well-structured scripts for market scanning (scan-tokens.py), risk enforcement (risk-manager.py), trade execution (trade-executor.py), and performance analysis (daily-review.py). The code demonstrates legitimate functionality such as P&L calculation, drawdown limits, and 'dry run' simulations, with no evidence of data exfiltration, malicious command injection, or hidden backdoors. All network and shell activities are strictly aligned with the stated purpose of cryptocurrency trading and performance optimization.
能力评估
Purpose & Capability
Name/description match the included scripts and behavior: token scanner, risk manager, trade executor, and review loop. Required capabilities (calling CoinGecko, reading/writing local trade logs, calling a DEX CLI) are consistent with an automated trading engine. No unrelated credentials or binaries are requested.
Instruction Scope
SKILL.md instructs copying the provided scripts, creating a local config, installing/using the Bankr CLI, and running the scanner/risk checks/review. The instructions reference only local files (trading-config.json, trades/, reviews/) and expected external APIs (CoinGecko). There are no instructions to read arbitrary system files or exfiltrate data.
Install Mechanism
This is an instruction-only skill with included Python scripts (no install spec). The skill expects the user to install the Bankr CLI separately (npm install -g @bankr/cli) per the README. That external install step is normal for a CLI-driven trading workflow and is not performed by the skill itself.
Credentials
The skill does not declare or require environment variables. It relies on the Bankr CLI for authentication (references ~/.bankr/config.json and bankr login). This is proportionate for a CLI-based trading bot, but it means the bot will operate using whatever wallet/API keys the Bankr CLI holds — review and restrict those credentials before enabling live trades.
Persistence & Privilege
The skill does not request always:true and is user-invocable. It does not attempt to modify other skills or system-wide settings. It writes/read local logs and config files within the workspace (trades/, reviews/, trading-config.json), which is expected for this use case.
如何使用
  1. 确保已安装 OpenClaw(本地或 Docker 部署)
  2. 在对话框中输入安装命令:/install defi-trading-engine
  3. 安装完成后,直接呼叫该 Skill 的名称或使用 /defi-trading-engine 触发
  4. 根据 Skill 的参数说明提供必要输入,即可获得结构化输出
版本历史
v1.0.1
Tested release. All scripts verified. Config defaults to dry-run. Missing config no longer crashes.
v1.0.0
Initial release: Autonomous DeFi trading bot with self-improving review system. 4 strategies, risk management, trade journal.
元数据
Slug defi-trading-engine
版本 1.0.1
许可证 MIT-0
累计安装 2
当前安装数 2
历史版本数 2
常见问题

Defi Trading Engine 是什么?

DeFi Trading Engine - Autonomous DeFi trading bot with self-improving review system for OpenClaw agents. Use when setting up DeFi trading, crypto trading bot... 它是一个面向 Claude Code / OpenClaw 的 AI Agent Skill 插件,目前累计下载 319 次。

如何安装 Defi Trading Engine?

在 OpenClaw 或 Claude Code 对话框中运行命令「/install defi-trading-engine」即可一键安装,无需额外配置。

Defi Trading Engine 是免费的吗?

是的,Defi Trading Engine 完全免费,采用 MIT-0 许可证,可自由下载、安装和使用。

Defi Trading Engine 支持哪些平台?

Defi Trading Engine 跨平台运行,可在任意部署了 OpenClaw / Claude Code 的环境中使用(cross-platform)。

谁开发了 Defi Trading Engine?

由 Elway Botty(@avmw2025)开发并维护,当前版本 v1.0.1。

💬 留言讨论