技能详情(站内镜像,无评论)
作者:Angelos Kappos @adacapo21
许可证:MIT-0
MIT-0 ·免费使用、修改和重新分发。无需归因。
版本:v0.1.0
统计:⭐ 0 · 462 · 5 current installs · 6 all-time installs
⭐ 0
安装量(当前) 6
🛡 VirusTotal :良性 · OpenClaw :可疑
Package:adacapo21/openmm-grid-trading
安全扫描(ClawHub)
- VirusTotal :良性
- OpenClaw :可疑
OpenClaw 评估
The skill's stated purpose (run OpenMM grid strategies) is plausible, but the metadata requests multiple exchange API keys and an npm package from a third party without justification — this mismatch warrants caution.
目的
The skill claims to run OpenMM grid trading (which legitimately needs an 'openmm' binary and an API key for the exchange you choose). However the metadata requires four different exchange API keys (MEXC, GATEIO, BITGET, KRAKEN) even though a user will typically only trade on a single exchange per run. Requiring all exchange keys up-front is disproportionate and unexplained.
说明范围
The SKILL.md itself only instructs the agent to run the 'openmm' CLI with flags and to load optional local JSON profile files; it does not ask the agent to read arbitrary system files or exfiltrate data. However the runtime metadata declares environment variables (multiple API keys) that the docs do not clearly justify or scope to 'only provide the key for the exchange you will use'. This gap between instructions and declared requirements is n…
安装机制
Install is via an npm package (@3rd-eye-labs/openmm) which will create the 'openmm' binary. Using npm is a common mechanism but carries moderate risk because packages are third-party code. No direct downloads from untrusted URLs or archive extraction are declared, but the package source/maintainer is unknown and should be audited before install.
证书
Listing four exchange API keys as required is excessive for a tool that only needs the key for the exchange you choose at runtime. These API keys are sensitive (can enable trading and possibly withdrawals). The skill does not declare a primary credential nor document minimal required permissions (e.g., disable withdrawals), so the requested secrets are not proportional or adequately justified.
持久
The skill does not request always: true, does not declare system config paths, and does not appear to demand persistent system-level privileges. It appears to be limited to installing/using its own 'openmm' binary.
安装(复制给龙虾 AI)
将下方整段复制到龙虾中文库对话中,由龙虾按 SKILL.md 完成安装。
请把本段交给龙虾中文库(龙虾 AI)执行:为本机安装 OpenClaw 技能「OpenMM Grid Trading」。简介:Create and manage grid trading strategies with OpenMM. Automated buy/sell aroun…。
请 fetch 以下地址读取 SKILL.md 并按文档完成安装:https://raw.githubusercontent.com/openclaw/skills/refs/heads/main/skills/adacapo21/openmm-grid-trading/SKILL.md
(来源:yingzhi8.cn 技能库)
SKILL.md
---
name: openmm-grid-trading
version: 0.1.0
description: "Create and manage grid trading strategies with OpenMM. Automated buy/sell around center price."
tags: [openmm, grid, trading, strategy, automation]
metadata:
openclaw:
emoji: "📊"
requires:
bins: [openmm]
env: [MEXC_API_KEY, GATEIO_API_KEY, BITGET_API_KEY, KRAKEN_API_KEY]
install:
- kind: node
package: "@3rd-eye-labs/openmm"
bins: [openmm]
---
# OpenMM Grid Trading
Create automated grid trading strategies that profit from market volatility.
## What is Grid Trading?
Grid trading places multiple buy and sell orders at preset price intervals around the current center price. As price oscillates, the bot automatically:
- **Buys low** — places buy orders below the center price
- **Sells high** — places sell orders above the center price
- **Profits from volatility** — each complete cycle captures the spread
The grid uses **levels per side** and **spacing** to distribute orders. With 5 levels and 2% spacing (linear), orders are placed at 2%, 4%, 6%, 8%, 10% from center on both sides (10 total orders).
## When to Use
**Good for:**
- Sideways/ranging markets
- High volatility pairs
- Passive income generation
- 24/7 automated trading
**Avoid when:**
- Strong trending markets (risk of holding losing positions)
- Low liquidity pairs
- High fee environments
## Quick Start
### 1. Dry Run First (Always!)
```bash
openmm trade --strategy grid --exchange mexc --symbol INDY/USDT --dry-run
```
### 2. Start Grid with Defaults
```bash
openmm trade --strategy grid --exchange mexc --symbol INDY/USDT
```
### 3. Custom Configuration
```bash
openmm trade --strategy grid --exchange mexc --symbol INDY/USDT
--levels 5
--spacing 0.02
--size 50
--max-position 0.6
--safety-reserve 0.3
```
### 4. Stop the Strategy
Press `Ctrl+C` to gracefully stop. The system will:
1. Cancel all open orders
2. Disconnect from exchange
3. Display final status
## Command Options
### Required Parameters
- `--strategy grid` — Specifies grid trading strategy
- `--exchange <exchange>` — Exchange to trade on (mexc, bitget, gateio, kraken)
- `--symbol <symbol>` — Trading pair (e.g., INDY/USDT, SNEK/USDT, ADA/EUR)
### Grid Parameters
| Parameter | Description | Default |
|-----------|-------------|---------|
| `--levels <number>` | Grid levels each side (max: 10, total = levels x 2) | 5 |
| `--spacing <decimal>` | Base price spacing between levels (0.02 = 2%) | 0.02 |
| `--size <number>` | Base order size in quote currency | 50 |
| `--confidence <decimal>` | Minimum price confidence to trade | 0.6 |
| `--deviation <decimal>` | Price deviation to trigger grid recreation | 0.015 |
| `--debounce <ms>` | Delay between grid adjustments | 2000 |
| `--max-position <decimal>` | Max position size as % of balance | 0.8 |
| `--safety-reserve <decimal>` | Safety reserve as % of balance | 0.2 |
| `--dry-run` | Simulate without placing real orders | — |
### Dynamic Grid Parameters
| Parameter | Description | Default |
|-----------|-------------|---------|
| `--spacing-model <model>` | linear, geometric, or custom | linear |
| `--spacing-factor <number>` | Geometric spacing multiplier per level | 1.3 |
| `--size-model <model>` | flat, pyramidal, or custom | flat |
| `--grid-profile <path>` | Load grid config from a JSON profile file | — |
### Volatility Parameters
| Parameter | Description | Default |
|-----------|-------------|---------|
| `--volatility` | Enable volatility-based spread adjustment | off |
| `--volatility-low <decimal>` | Low volatility threshold | 0.02 |
| `--volatility-high <decimal>` | High volatility threshold | 0.05 |
## Spacing Models
**Linear (default):** Equal spacing between all levels.
```
With --spacing 0.02 and 5 levels:
Level 1: 2% from center
Level 2: 4% from center
Level 3: 6% from center
Level 4: 8% from center
Level 5: 10% from center
```
**Geometric:** Tighter spacing near center, wider gaps at outer levels.
```bash
openmm trade --strategy grid --exchange kraken --symbol BTC/USD
--levels 5 --spacing 0.005 --spacing-model geometric --spacing-factor 1.5
```
```
Level 1: 0.50% from center
Level 2: 1.25% from center
Level 3: 2.38% from center
Level 4: 4.06% from center
Level 5: 6.59% from center
```
**Custom:** Define exact spacing offsets per level using a grid profile JSON file.
## Size Models
**Flat (default):** All levels get equal order sizes.
**Pyramidal:** Larger orders near center price where fills are more likely, tapering at outer levels.
```bash
openmm trade --strategy grid --exchange mexc --symbol INDY/USDT
--levels 5 --size 50 --size-model pyramidal
```
## Grid Profiles
JSON files for complete grid configuration:
```json
{
"name": "balanced-geometric",
"description": "Geometric spacing with pyramidal sizing",
"levels": 10,
"spacingModel": "geometric",
"baseSpacing": 0.005,
"spacingFactor": 1.3,
"sizeModel": "pyramidal",
"baseSize": 50
}
```
```bash
openmm trade --strategy grid --exchange gateio --symbol SNEK/USDT
--grid-profile ./profiles/balanced-geometric.json
```
## Volatility-Based Spread Adjustment
When enabled, the grid automatically widens during volatile conditions and tightens when the market calms. Tracks price changes over a 5-minute rolling window.
- Below low threshold (default 2%): Normal spacing (1.0x)
- Between thresholds: Elevated spacing (1.5x)
- Above high threshold (default 5%): Wide spacing (2.0x)
```bash
openmm trade --strategy grid --exchange mexc --symbol INDY/USDT
--levels 10
--spacing 0.005
--spacing-model geometric
--spacing-factor 1.3
--size-model pyramidal
--size 5
--volatility
```
## Trading Examples
### Conservative
```bash
openmm trade --strategy grid --exchange bitget --symbol SNEK/USDT
--levels 2
--spacing 0.02
--size 20
```
### Active
```bash
openmm trade --strategy grid --exchange mexc --symbol BTC/USDT
--levels 7
--spacing 0.005
--size 25
```
### Dynamic (Geometric + Pyramidal)
```bash
openmm trade --strategy grid --exchange kraken --symbol SNEK/EUR
--levels 10
--spacing 0.005
--spacing-model geometric
--spacing-factor 1.5
--size-model pyramidal
--size 5
```
## Risk Management
- `--max-position` — Maximum % of balance used for trading (default: 80%)
- `--safety-reserve` — % of balance kept as reserve (default: 20%)
- `--confidence` — Minimum price confidence required (default: 60%)
- Grid is automatically recreated when orders are filled
- Adjusts to significant price movements (configurable via `--deviation`)
## Exchange-Specific Notes
**MEXC/Gate.io:** Minimum order value 1 USDT per order
**Bitget:** Minimum 1 USDT. Requires API key, secret, and passphrase. 6 decimal price precision for SNEK/NIGHT pairs.
**Kraken:** Minimum 5 EUR/USD per order. Supports major fiat pairs (EUR, USD, GBP).
## Tips for Agents
1. **Always dry-run first** — show user the plan before executing
2. **Check balance** — verify sufficient funds with `openmm balance --exchange <ex>`
3. **Check current price** — use `openmm ticker --exchange <ex> --symbol <sym>`
4. **Respect minimum order values** — ensure `--size` divided by `--levels` meets exchange minimums
5. **Use Ctrl+C to stop** — graceful shutdown cancels all open orders