# Send Binance Dca to your agent
Hand the extracted package to your coding agent with a concrete install brief instead of figuring it out manually.
## Fast path
- Download the package from Yavira.
- Extract it into a folder your agent can access.
- Paste one of the prompts below and point your agent at the extracted folder.
## Suggested prompts
### New install

```text
I downloaded a skill package from Yavira. Read SKILL.md from the extracted folder and install it by following the included instructions. Tell me what you changed and call out any manual steps you could not complete.
```
### Upgrade existing

```text
I downloaded an updated skill package from Yavira. Read SKILL.md from the extracted folder, compare it with my current installation, and upgrade it while preserving any custom configuration unless the package docs explicitly say otherwise. Summarize what changed and any follow-up checks I should run.
```
## Machine-readable fields
```json
{
  "schemaVersion": "1.0",
  "item": {
    "slug": "binance-dca",
    "name": "Binance Dca",
    "source": "tencent",
    "type": "skill",
    "category": "开发工具",
    "sourceUrl": "https://clawhub.ai/fpsjago/binance-dca",
    "canonicalUrl": "https://clawhub.ai/fpsjago/binance-dca",
    "targetPlatform": "OpenClaw"
  },
  "install": {
    "downloadUrl": "/downloads/binance-dca",
    "sourceDownloadUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=binance-dca",
    "sourcePlatform": "tencent",
    "targetPlatform": "OpenClaw",
    "packageFormat": "ZIP package",
    "primaryDoc": "SKILL.md",
    "includedAssets": [
      "SKILL.md",
      "scripts/dca.sh"
    ],
    "downloadMode": "redirect",
    "sourceHealth": {
      "source": "tencent",
      "slug": "binance-dca",
      "status": "healthy",
      "reason": "direct_download_ok",
      "recommendedAction": "download",
      "checkedAt": "2026-04-30T12:17:49.708Z",
      "expiresAt": "2026-05-07T12:17:49.708Z",
      "httpStatus": 200,
      "finalUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=binance-dca",
      "contentType": "application/zip",
      "probeMethod": "head",
      "details": {
        "probeUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=binance-dca",
        "contentDisposition": "attachment; filename=\"binance-dca-1.2.0.zip\"",
        "redirectLocation": null,
        "bodySnippet": null,
        "slug": "binance-dca"
      },
      "scope": "item",
      "summary": "Item download looks usable.",
      "detail": "Yavira can redirect you to the upstream package for this item.",
      "primaryActionLabel": "Download for OpenClaw",
      "primaryActionHref": "/downloads/binance-dca"
    },
    "validation": {
      "installChecklist": [
        "Use the Yavira download entry.",
        "Review SKILL.md after the package is downloaded.",
        "Confirm the extracted package contains the expected setup assets."
      ],
      "postInstallChecks": [
        "Confirm the extracted package includes the expected docs or setup files.",
        "Validate the skill or prompts are available in your target agent workspace.",
        "Capture any manual follow-up steps the agent could not complete."
      ]
    }
  },
  "links": {
    "detailUrl": "https://openagent3.xyz/skills/binance-dca",
    "downloadUrl": "https://openagent3.xyz/downloads/binance-dca",
    "agentUrl": "https://openagent3.xyz/skills/binance-dca/agent",
    "manifestUrl": "https://openagent3.xyz/skills/binance-dca/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/binance-dca/agent.md"
  }
}
```
## Documentation

### Binance DCA — Professional Dollar-Cost Averaging Tool

Systematic crypto accumulation made simple.
Plan, execute, and track DCA strategies on Binance with confidence.

### What is DCA?

Dollar-Cost Averaging (DCA) is an investment strategy where you buy a fixed dollar amount of an asset at regular intervals, regardless of price. This approach:

✅ Reduces timing risk — no need to predict market tops/bottoms
✅ Smooths volatility — averages out price fluctuations over time
✅ Removes emotion — systematic buying, no panic or FOMO
✅ Builds discipline — consistent accumulation, perfect for long-term holders

This tool helps you plan, automate, and track your DCA strategy on Binance spot markets.

### Features

📊 DCA Plan Projections — scenario analysis showing potential outcomes at different price levels
💰 Market & Limit Orders — flexible execution options
📈 Trade History — track your accumulation progress
🔒 Secure — credentials via environment variables only, zero hardcoded secrets
🧪 Testnet Support — practice on Binance testnet before going live
🤖 OpenClaw Integration — automate DCA buys via cron jobs with alerts
🛡️ Risk Management — conservative defaults, validation before execution

### 1. Get Binance API Keys

Log in to binance.com
Go to Account → API Management
Create a new API key:

Label: OpenClaw-DCA (or similar)
Restrictions: Enable Spot & Margin Trading only
IP Whitelist: Add your server IP for security (optional but recommended)


Save your API Key and Secret Key securely

⚠️ Security tips:

Never share your secret key
Enable IP whitelist if your server has a static IP
Use a separate API key for DCA (easier to revoke if needed)
Start with small amounts to test

### 2. Set Environment Variables

Never hardcode credentials. Always use environment variables:

export BINANCE_API_KEY="your-api-key-here"
export BINANCE_SECRET_KEY="your-secret-key-here"

Make them permanent (optional, add to ~/.bashrc or ~/.zshrc):

echo 'export BINANCE_API_KEY="your-api-key-here"' >> ~/.bashrc
echo 'export BINANCE_SECRET_KEY="your-secret-key-here"' >> ~/.bashrc
source ~/.bashrc

For testnet (recommended for first-time users):

export BINANCE_BASE_URL="https://testnet.binance.vision"

Get testnet API keys at: testnet.binance.vision

### 3. Verify Setup

# Check balance (should not error)
bash scripts/dca.sh balance USDT

# Check BTC price
bash scripts/dca.sh price BTCUSDT

If you see prices/balances, you're ready!

### Example 1: Check Current Price

bash scripts/dca.sh price BTCUSDT
# Output: BTCUSDT = 95234.50

Works for any pair:

bash scripts/dca.sh price ETHUSDT
bash scripts/dca.sh price SOLUSDT

### Example 2: Check Your Balance

bash scripts/dca.sh balance USDT
# Output: USDT: free=1000.00000000, locked=0.00000000

Check any asset:

bash scripts/dca.sh balance BTC
bash scripts/dca.sh balance ETH

### Example 3: Plan a DCA Strategy

Scenario: You want to invest $600 over 3 months in BTC.

# $50 every week for 12 weeks
bash scripts/dca.sh plan 50 7 12 BTCUSDT

Output:

DCA Plan: BTCUSDT
==========================
Buy amount:  $50 per buy
Frequency:   every 7 days
Duration:    12 buys
Current:     95234.50
==========================
Total invest:  $600.00
At cur. price: 0.00630245 BTC
Time span:     84 days (~2.8 months)

Scenario Analysis (if avg price over period is):
  -30% -> avg $ 66,664.15 -> 0.00900000 BTC -> PnL: -$186.00 (-31.0%)
  -20% -> avg $ 76,187.60 -> 0.00787500 BTC -> PnL: -$126.00 (-21.0%)
  -10% -> avg $ 85,711.05 -> 0.00700000 BTC -> PnL: -$63.00 (-10.5%)
   +0% -> avg $ 95,234.50 -> 0.00630245 BTC -> PnL: +$0.00 (+0.0%)
  +10% -> avg $104,757.95 -> 0.00572727 BTC -> PnL: +$63.00 (+10.5%)
  +20% -> avg $114,281.40 -> 0.00525000 BTC -> PnL: +$126.00 (+21.0%)
  +50% -> avg $142,851.75 -> 0.00420000 BTC -> PnL: +$378.00 (+63.0%)
 +100% -> avg $190,469.00 -> 0.00315122 BTC -> PnL: +$630.00 (+105.0%)

What this tells you:

If BTC stays flat → break even
If BTC averages -20% during your buys → you're down ~21% (but you own more BTC)
If BTC averages +50% → you're up ~63%

Use this to set realistic expectations before committing.

### Example 4: Execute Your First DCA Buy

Market order (instant execution):

# Buy $50 worth of BTC at current market price
bash scripts/dca.sh buy BTCUSDT 50

Output:

Placing MARKET buy: BTCUSDT for 50 USDT...
Order #123456789: FILLED
Filled: 0.00052500 BTC

Limit order (wait for your price):

# Only buy if BTC drops to $94,000
bash scripts/dca.sh buy BTCUSDT 50 LIMIT 94000

Output:

Placing LIMIT buy: BTCUSDT for 50 USDT...
Order #123456790: NEW
Filled: 0.00000000 BTC

(Order will fill when price hits $94,000)

### Example 5: Check Your Trade History

# Last 10 trades for BTCUSDT
bash scripts/dca.sh history BTCUSDT 10

Output:

Last 10 trades for BTCUSDT:
---
1738752000 | BUY | qty=0.00052500 | price=95238.10 | fee=0.00000053 BNB
1738665600 | BUY | qty=0.00051234 | price=97567.20 | fee=0.00000051 BNB
...

### price [SYMBOL]

Get current spot price for a trading pair.

bash scripts/dca.sh price BTCUSDT
bash scripts/dca.sh price ETHUSDT
bash scripts/dca.sh price SOLUSDT

Default: BTCUSDT if symbol is omitted.

### balance [ASSET]

Check free and locked balance for an asset.

bash scripts/dca.sh balance USDT
bash scripts/dca.sh balance BTC
bash scripts/dca.sh balance ETH

Output format: ASSET: free=X.XXXXXXXX, locked=Y.YYYYYYYY

Default: USDT if asset is omitted.

Use case: Check how much capital you have available before placing orders.

### buy SYMBOL AMOUNT [TYPE] [PRICE]

Place a buy order.

Arguments:

SYMBOL — Trading pair (e.g., BTCUSDT, ETHUSDT)
AMOUNT — Amount in quote currency (USDT). The tool calculates how much BTC/ETH you get.
TYPE — MARKET (default) or LIMIT
PRICE — Required for LIMIT orders

Market order examples:

# Buy $50 worth of BTC instantly
bash scripts/dca.sh buy BTCUSDT 50

# Buy $100 worth of ETH instantly
bash scripts/dca.sh buy ETHUSDT 100

Limit order examples:

# Buy $50 BTC only if price drops to $90,000
bash scripts/dca.sh buy BTCUSDT 50 LIMIT 90000

# Buy $200 ETH only if price hits $3,200
bash scripts/dca.sh buy ETHUSDT 200 LIMIT 3200

Safety features:

Amount validation (must be a number)
API key check before execution
Order status confirmation in output

### history [SYMBOL] [LIMIT]

Show recent trade history.

# Last 10 trades for BTCUSDT
bash scripts/dca.sh history BTCUSDT 10

# Last 20 trades for ETHUSDT
bash scripts/dca.sh history ETHUSDT 20

# Last 50 trades for SOLUSDT
bash scripts/dca.sh history SOLUSDT 50

Defaults: BTCUSDT, limit 10

Output includes:

Timestamp (Unix seconds)
Side (BUY/SELL)
Quantity purchased
Execution price
Fees paid (and fee asset)

Use case: Track your DCA progress over time, calculate average entry price.

### plan [AMOUNT] [FREQ_DAYS] [NUM_BUYS] [SYMBOL]

Project a DCA plan with scenario analysis.

Arguments:

AMOUNT — Dollar amount per buy (default: 50)
FREQ_DAYS — Days between buys (default: 7)
NUM_BUYS — Number of buys (default: 12)
SYMBOL — Trading pair (default: BTCUSDT)

Examples:

# Default plan: $50 every 7 days, 12 buys
bash scripts/dca.sh plan

# Aggressive: $200 every 3 days, 30 buys
bash scripts/dca.sh plan 200 3 30 BTCUSDT

# Conservative: $25 every 14 days, 24 buys
bash scripts/dca.sh plan 25 14 24 BTCUSDT

# ETH DCA: $100 weekly for 6 months
bash scripts/dca.sh plan 100 7 26 ETHUSDT

What you get:

Total investment amount
BTC/ETH you'd own at current price
Time span (days + months)
Scenario analysis: PnL at -30%, -20%, -10%, 0%, +10%, +20%, +50%, +100% average prices

Use this to:

Decide on a comfortable budget and frequency
Understand risk/reward before starting
Show the math to justify DCA vs. lump sum

### When to Use DCA

✅ Good for:

Long-term accumulation (6+ months)
High-volatility assets (BTC, ETH, altcoins)
Building positions without timing stress
Removing emotional decision-making

❌ Not ideal for:

Short-term trading (use manual buys)
Assets you want to flip quickly
Low-volatility stablecoins (just buy once)

### Best Practices

Start small — Test with 1-2% of your budget first
Use testnet — Practice on https://testnet.binance.vision before going live
Set a timeline — DCA works best over 3-12+ months
Stick to the plan — Resist urge to stop during dips (that's when DCA shines)
Track progress — Use history to see your average entry price
Adjust if needed — Life changes, budgets change — recalculate with plan and adapt

### Position Sizing Recommendations

Conservative (1-2% per buy):

Portfolio: $10,000 → DCA $100-$200 per buy
Lower risk, slower accumulation

Moderate (3-5% per buy):

Portfolio: $10,000 → DCA $300-$500 per buy
Balanced approach, standard for most users

Aggressive (5-10% per buy):

Portfolio: $10,000 → DCA $500-$1,000 per buy
Higher risk, faster accumulation, requires strong conviction

Never go above 10% per buy — leaves no room for unexpected dips or expenses.

### Frequency Guidelines

Daily — For very active traders, high time commitment
Every 3 days — Aggressive, good for short DCA periods (1-3 months)
Weekly — Most popular, good balance (Mondays are common)
Bi-weekly — Aligns with paychecks, moderate pace
Monthly — Long-term HODLers, lowest effort

Pro tip: Match DCA frequency to your income schedule (weekly paycheck → weekly DCA).

### Manual Cron (Basic)

Run DCA buys automatically via system cron:

# Every Monday at 9:00 AM UTC, buy $50 BTC
0 9 * * 1 BINANCE_API_KEY=... BINANCE_SECRET_KEY=... /path/to/dca.sh buy BTCUSDT 50

Limitations:

No alerts if it fails
No confirmations
Silent execution

### OpenClaw Cron (Recommended)

Use OpenClaw for intelligent DCA automation with alerts:

Example: Weekly BTC DCA with Telegram notifications

{
  "name": "Weekly BTC DCA",
  "schedule": {
    "kind": "cron",
    "expr": "0 9 * * 1",
    "tz": "America/New_York"
  },
  "sessionTarget": "isolated",
  "payload": {
    "kind": "agentTurn",
    "message": "Execute weekly DCA: buy $50 BTCUSDT via binance-dca skill. After execution, send me a summary: amount bought, price, total BTC accumulated so far (check history). If it fails, alert me immediately.",
    "deliver": true,
    "channel": "telegram"
  }
}

Benefits:

✅ Execution confirmations sent to you
✅ Failure alerts
✅ Can ask agent to analyze history and report progress
✅ Easy to pause/resume via openclaw cron commands

Setup:

# Add the cron job (paste JSON above when prompted)
openclaw cron add

# List all jobs
openclaw cron list

# Run manually to test
openclaw cron run <jobId>

# Disable temporarily
openclaw cron update <jobId> --enabled false

### Error: BINANCE_API_KEY not set

Fix: Set environment variables before running:

export BINANCE_API_KEY="your-key"
export BINANCE_SECRET_KEY="your-secret"
bash scripts/dca.sh price

### Error: Timestamp for this request is outside of the recvWindow

Cause: Your system clock is out of sync with Binance servers.

Fix (Linux/macOS):

# Sync system time
sudo ntpdate -s time.nist.gov

# Or install/enable NTP
sudo systemctl enable systemd-timesyncd
sudo systemctl start systemd-timesyncd

Fix (Docker):

Add --cap-add SYS_TIME when running container, or sync host clock.

### Error: Signature for this request is not valid

Causes:

Wrong BINANCE_SECRET_KEY
API key restrictions (IP whitelist mismatch, disabled Spot Trading)

Fix:

Double-check your secret key (copy-paste from Binance)
Verify API key has Spot & Margin Trading enabled
If using IP whitelist, confirm your server IP is allowed
Regenerate API key if uncertain

### Error: API request failed

Causes:

Network issues
Wrong BINANCE_BASE_URL
Binance API maintenance

Fix:

Test network: curl -I https://api.binance.com
Check Binance status: binance.com/en/support/announcement
If using testnet, confirm: export BINANCE_BASE_URL="https://testnet.binance.vision"

### Error: Account has insufficient balance for requested action

Cause: Not enough USDT in your spot account.

Fix:

Check balance: bash scripts/dca.sh balance USDT
Deposit USDT to your spot account
Reduce DCA amount to match available balance

### Order shows NEW status (limit order not filling)

This is normal for limit orders. Status means:

NEW — Order placed, waiting for price
FILLED — Order executed
PARTIALLY_FILLED — Partial execution
CANCELED — You or system canceled it

Check order status:

# View recent orders to see if it filled later
bash scripts/dca.sh history BTCUSDT 20

Cancel pending limit orders:

Use Binance web/app → Orders → Open Orders → Cancel.

### Q: Can I DCA into altcoins (not just BTC)?

A: Yes! Use any Binance spot pair:

bash scripts/dca.sh buy ETHUSDT 100
bash scripts/dca.sh buy SOLUSDT 50
bash scripts/dca.sh buy ADAUSDT 25

Just replace BTCUSDT with your desired pair.

### Q: What's the minimum buy amount?

A: Binance sets minimums per pair (usually $10-$20). Check Binance docs or test with a small amount on testnet first.

### Q: Does this work with Binance.US?

A: Not directly. Binance.US has a separate API (https://api.binance.us). You'd need to change BINANCE_BASE_URL and test. Not officially supported.

### Q: Can I sell with this tool?

A: Not currently. This is DCA (accumulation) only. For selling, use Binance web/app or modify the script (change side=BUY to side=SELL).

### Q: Is my data stored anywhere?

A: No. Zero data storage. All credentials are environment variables. The script makes direct API calls to Binance and exits.

### Q: Can I use this on multiple machines?

A: Yes, but set up API keys separately on each. Consider using IP whitelist on your API key for security.

### Q: What if I want to change my DCA amount mid-strategy?

A: Just adjust the amount in your next manual/cron execution. DCA is flexible — no commitment to fixed amounts.

Example: Week 1-4 use $50, Week 5+ use $100.

### Q: How do I calculate my average entry price?

Run history and average the price column:

bash scripts/dca.sh history BTCUSDT 50 | grep BUY | awk '{print $8}' | awk '{s+=$1; n++} END {print s/n}'

Or use a spreadsheet: export history, paste prices, =AVERAGE().

### Security Best Practices

🔒 API Key Safety:

Use dedicated API key for DCA (label it DCA-Only)
Enable Spot Trading only (no Futures, Margin, Withdrawals)
Set IP whitelist if your server has static IP
Rotate keys every 3-6 months
Revoke immediately if compromised

🔒 Credential Management:

Never commit .env files with keys to Git
Use environment variables, not hardcoded strings
On shared servers, restrict file permissions: chmod 600 ~/.bashrc

🔒 Testnet First:

Always test new strategies on testnet before using real funds
Testnet keys: testnet.binance.vision
Set: export BINANCE_BASE_URL="https://testnet.binance.vision"

🔒 Start Small:

First live DCA: use 10-20% of planned amount
Verify execution, fees, and confirmations
Scale up once confident

### Dynamic DCA (Market Conditions)

Adjust buy amounts based on price:

Buy more when BTC dips:

# If BTC < $90k, buy $100. Otherwise $50.
CURRENT=$(bash scripts/dca.sh price BTCUSDT | awk '{print $3}')
if (( $(echo "$CURRENT < 90000" | bc -l) )); then
  bash scripts/dca.sh buy BTCUSDT 100
else
  bash scripts/dca.sh buy BTCUSDT 50
fi

Use limit orders to "buy the dip":

# Place limit orders 5%, 10%, 15% below current price
PRICE=$(bash scripts/dca.sh price BTCUSDT | awk '{print $3}')
LIMIT_5=$(echo "$PRICE * 0.95" | bc)
LIMIT_10=$(echo "$PRICE * 0.90" | bc)
LIMIT_15=$(echo "$PRICE * 0.85" | bc)

bash scripts/dca.sh buy BTCUSDT 50 LIMIT $LIMIT_5
bash scripts/dca.sh buy BTCUSDT 50 LIMIT $LIMIT_10
bash scripts/dca.sh buy BTCUSDT 50 LIMIT $LIMIT_15

### Multi-Asset DCA

DCA into multiple coins:

# Weekly: $30 BTC, $20 ETH, $10 SOL
bash scripts/dca.sh buy BTCUSDT 30
bash scripts/dca.sh buy ETHUSDT 20
bash scripts/dca.sh buy SOLUSDT 10

### Logging for Analysis

Track all DCA buys to a log file:

#!/bin/bash
LOGFILE="$HOME/dca-log.txt"
DATE=$(date '+%Y-%m-%d %H:%M:%S')

bash scripts/dca.sh buy BTCUSDT 50 | tee -a "$LOGFILE"
echo "[$DATE] DCA executed" >> "$LOGFILE"

Then analyze with:

grep "Filled:" ~/dca-log.txt

### Contributing

Found a bug? Have a feature idea? Want to add support for other exchanges?

GitHub: (if public repo exists, link here)
Issues: Report via GitHub Issues
Pull Requests: Welcome! Follow existing code style.

### License

MIT License — Free to use, modify, and distribute.

Disclaimer: This tool is provided as-is. Use at your own risk. The authors are not responsible for trading losses, API issues, or incorrect usage. Always test on testnet first and never invest more than you can afford to lose.

### v1.2.0 (2026-02-05)

📚 Comprehensive documentation overhaul
📋 Added real-world examples for all actions
🎓 DCA strategy guide with best practices
🔧 Troubleshooting section
❓ FAQ with common questions
🔒 Security best practices guide
🚀 Advanced usage examples
🤖 OpenClaw automation guide

### v1.1.0 (2026-02-05)

Initial public release
Core DCA functionality: plan, buy, history, price, balance
Testnet support
Market and limit orders

Built with ❤️ for long-term crypto accumulation.

Questions? Feedback? Tag @fpsjago on ClawHub or OpenClaw Discord.
## Trust
- Source: tencent
- Verification: Indexed source record
- Publisher: fpsjago
- Version: 1.2.0
## Source health
- Status: healthy
- Item download looks usable.
- Yavira can redirect you to the upstream package for this item.
- Health scope: item
- Reason: direct_download_ok
- Checked at: 2026-04-30T12:17:49.708Z
- Expires at: 2026-05-07T12:17:49.708Z
- Recommended action: Download for OpenClaw
## Links
- [Detail page](https://openagent3.xyz/skills/binance-dca)
- [Send to Agent page](https://openagent3.xyz/skills/binance-dca/agent)
- [JSON manifest](https://openagent3.xyz/skills/binance-dca/agent.json)
- [Markdown brief](https://openagent3.xyz/skills/binance-dca/agent.md)
- [Download page](https://openagent3.xyz/downloads/binance-dca)