{
  "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": {
    "downloadMode": "redirect",
    "downloadUrl": "/downloads/binance-dca",
    "sourceDownloadUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=binance-dca",
    "sourcePlatform": "tencent",
    "targetPlatform": "OpenClaw",
    "installMethod": "Manual import",
    "extraction": "Extract archive",
    "prerequisites": [
      "OpenClaw"
    ],
    "packageFormat": "ZIP package",
    "includedAssets": [
      "SKILL.md",
      "scripts/dca.sh"
    ],
    "primaryDoc": "SKILL.md",
    "quickSetup": [
      "Download the package from Yavira.",
      "Extract the archive and review SKILL.md first.",
      "Import or place the package into your OpenClaw setup."
    ],
    "agentAssist": {
      "summary": "Hand the extracted package to your coding agent with a concrete install brief instead of figuring it out manually.",
      "steps": [
        "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."
      ],
      "prompts": [
        {
          "label": "New install",
          "body": "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."
        },
        {
          "label": "Upgrade existing",
          "body": "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."
        }
      ]
    },
    "sourceHealth": {
      "source": "tencent",
      "status": "healthy",
      "reason": "direct_download_ok",
      "recommendedAction": "download",
      "checkedAt": "2026-04-23T16:43:11.935Z",
      "expiresAt": "2026-04-30T16:43:11.935Z",
      "httpStatus": 200,
      "finalUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=4claw-imageboard",
      "contentType": "application/zip",
      "probeMethod": "head",
      "details": {
        "probeUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=4claw-imageboard",
        "contentDisposition": "attachment; filename=\"4claw-imageboard-1.0.1.zip\"",
        "redirectLocation": null,
        "bodySnippet": null
      },
      "scope": "source",
      "summary": "Source download looks usable.",
      "detail": "Yavira can redirect you to the upstream package for this source.",
      "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."
      ]
    },
    "downloadPageUrl": "https://openagent3.xyz/downloads/binance-dca",
    "agentPageUrl": "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"
  },
  "agentAssist": {
    "summary": "Hand the extracted package to your coding agent with a concrete install brief instead of figuring it out manually.",
    "steps": [
      "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."
    ],
    "prompts": [
      {
        "label": "New install",
        "body": "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."
      },
      {
        "label": "Upgrade existing",
        "body": "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."
      }
    ]
  },
  "documentation": {
    "source": "clawhub",
    "primaryDoc": "SKILL.md",
    "sections": [
      {
        "title": "Binance DCA — Professional Dollar-Cost Averaging Tool",
        "body": "Systematic crypto accumulation made simple.\nPlan, execute, and track DCA strategies on Binance with confidence."
      },
      {
        "title": "What is DCA?",
        "body": "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:\n\n✅ Reduces timing risk — no need to predict market tops/bottoms\n✅ Smooths volatility — averages out price fluctuations over time\n✅ Removes emotion — systematic buying, no panic or FOMO\n✅ Builds discipline — consistent accumulation, perfect for long-term holders\n\nThis tool helps you plan, automate, and track your DCA strategy on Binance spot markets."
      },
      {
        "title": "Features",
        "body": "📊 DCA Plan Projections — scenario analysis showing potential outcomes at different price levels\n💰 Market & Limit Orders — flexible execution options\n📈 Trade History — track your accumulation progress\n🔒 Secure — credentials via environment variables only, zero hardcoded secrets\n🧪 Testnet Support — practice on Binance testnet before going live\n🤖 OpenClaw Integration — automate DCA buys via cron jobs with alerts\n🛡️ Risk Management — conservative defaults, validation before execution"
      },
      {
        "title": "1. Get Binance API Keys",
        "body": "Log in to binance.com\nGo to Account → API Management\nCreate a new API key:\n\nLabel: OpenClaw-DCA (or similar)\nRestrictions: Enable Spot & Margin Trading only\nIP Whitelist: Add your server IP for security (optional but recommended)\n\n\nSave your API Key and Secret Key securely\n\n⚠️ Security tips:\n\nNever share your secret key\nEnable IP whitelist if your server has a static IP\nUse a separate API key for DCA (easier to revoke if needed)\nStart with small amounts to test"
      },
      {
        "title": "2. Set Environment Variables",
        "body": "Never hardcode credentials. Always use environment variables:\n\nexport BINANCE_API_KEY=\"your-api-key-here\"\nexport BINANCE_SECRET_KEY=\"your-secret-key-here\"\n\nMake them permanent (optional, add to ~/.bashrc or ~/.zshrc):\n\necho 'export BINANCE_API_KEY=\"your-api-key-here\"' >> ~/.bashrc\necho 'export BINANCE_SECRET_KEY=\"your-secret-key-here\"' >> ~/.bashrc\nsource ~/.bashrc\n\nFor testnet (recommended for first-time users):\n\nexport BINANCE_BASE_URL=\"https://testnet.binance.vision\"\n\nGet testnet API keys at: testnet.binance.vision"
      },
      {
        "title": "3. Verify Setup",
        "body": "# Check balance (should not error)\nbash scripts/dca.sh balance USDT\n\n# Check BTC price\nbash scripts/dca.sh price BTCUSDT\n\nIf you see prices/balances, you're ready!"
      },
      {
        "title": "Example 1: Check Current Price",
        "body": "bash scripts/dca.sh price BTCUSDT\n# Output: BTCUSDT = 95234.50\n\nWorks for any pair:\n\nbash scripts/dca.sh price ETHUSDT\nbash scripts/dca.sh price SOLUSDT"
      },
      {
        "title": "Example 2: Check Your Balance",
        "body": "bash scripts/dca.sh balance USDT\n# Output: USDT: free=1000.00000000, locked=0.00000000\n\nCheck any asset:\n\nbash scripts/dca.sh balance BTC\nbash scripts/dca.sh balance ETH"
      },
      {
        "title": "Example 3: Plan a DCA Strategy",
        "body": "Scenario: You want to invest $600 over 3 months in BTC.\n\n# $50 every week for 12 weeks\nbash scripts/dca.sh plan 50 7 12 BTCUSDT\n\nOutput:\n\nDCA Plan: BTCUSDT\n==========================\nBuy amount:  $50 per buy\nFrequency:   every 7 days\nDuration:    12 buys\nCurrent:     95234.50\n==========================\nTotal invest:  $600.00\nAt cur. price: 0.00630245 BTC\nTime span:     84 days (~2.8 months)\n\nScenario Analysis (if avg price over period is):\n  -30% -> avg $ 66,664.15 -> 0.00900000 BTC -> PnL: -$186.00 (-31.0%)\n  -20% -> avg $ 76,187.60 -> 0.00787500 BTC -> PnL: -$126.00 (-21.0%)\n  -10% -> avg $ 85,711.05 -> 0.00700000 BTC -> PnL: -$63.00 (-10.5%)\n   +0% -> avg $ 95,234.50 -> 0.00630245 BTC -> PnL: +$0.00 (+0.0%)\n  +10% -> avg $104,757.95 -> 0.00572727 BTC -> PnL: +$63.00 (+10.5%)\n  +20% -> avg $114,281.40 -> 0.00525000 BTC -> PnL: +$126.00 (+21.0%)\n  +50% -> avg $142,851.75 -> 0.00420000 BTC -> PnL: +$378.00 (+63.0%)\n +100% -> avg $190,469.00 -> 0.00315122 BTC -> PnL: +$630.00 (+105.0%)\n\nWhat this tells you:\n\nIf BTC stays flat → break even\nIf BTC averages -20% during your buys → you're down ~21% (but you own more BTC)\nIf BTC averages +50% → you're up ~63%\n\nUse this to set realistic expectations before committing."
      },
      {
        "title": "Example 4: Execute Your First DCA Buy",
        "body": "Market order (instant execution):\n\n# Buy $50 worth of BTC at current market price\nbash scripts/dca.sh buy BTCUSDT 50\n\nOutput:\n\nPlacing MARKET buy: BTCUSDT for 50 USDT...\nOrder #123456789: FILLED\nFilled: 0.00052500 BTC\n\nLimit order (wait for your price):\n\n# Only buy if BTC drops to $94,000\nbash scripts/dca.sh buy BTCUSDT 50 LIMIT 94000\n\nOutput:\n\nPlacing LIMIT buy: BTCUSDT for 50 USDT...\nOrder #123456790: NEW\nFilled: 0.00000000 BTC\n\n(Order will fill when price hits $94,000)"
      },
      {
        "title": "Example 5: Check Your Trade History",
        "body": "# Last 10 trades for BTCUSDT\nbash scripts/dca.sh history BTCUSDT 10\n\nOutput:\n\nLast 10 trades for BTCUSDT:\n---\n1738752000 | BUY | qty=0.00052500 | price=95238.10 | fee=0.00000053 BNB\n1738665600 | BUY | qty=0.00051234 | price=97567.20 | fee=0.00000051 BNB\n..."
      },
      {
        "title": "price [SYMBOL]",
        "body": "Get current spot price for a trading pair.\n\nbash scripts/dca.sh price BTCUSDT\nbash scripts/dca.sh price ETHUSDT\nbash scripts/dca.sh price SOLUSDT\n\nDefault: BTCUSDT if symbol is omitted."
      },
      {
        "title": "balance [ASSET]",
        "body": "Check free and locked balance for an asset.\n\nbash scripts/dca.sh balance USDT\nbash scripts/dca.sh balance BTC\nbash scripts/dca.sh balance ETH\n\nOutput format: ASSET: free=X.XXXXXXXX, locked=Y.YYYYYYYY\n\nDefault: USDT if asset is omitted.\n\nUse case: Check how much capital you have available before placing orders."
      },
      {
        "title": "buy SYMBOL AMOUNT [TYPE] [PRICE]",
        "body": "Place a buy order.\n\nArguments:\n\nSYMBOL — Trading pair (e.g., BTCUSDT, ETHUSDT)\nAMOUNT — Amount in quote currency (USDT). The tool calculates how much BTC/ETH you get.\nTYPE — MARKET (default) or LIMIT\nPRICE — Required for LIMIT orders\n\nMarket order examples:\n\n# Buy $50 worth of BTC instantly\nbash scripts/dca.sh buy BTCUSDT 50\n\n# Buy $100 worth of ETH instantly\nbash scripts/dca.sh buy ETHUSDT 100\n\nLimit order examples:\n\n# Buy $50 BTC only if price drops to $90,000\nbash scripts/dca.sh buy BTCUSDT 50 LIMIT 90000\n\n# Buy $200 ETH only if price hits $3,200\nbash scripts/dca.sh buy ETHUSDT 200 LIMIT 3200\n\nSafety features:\n\nAmount validation (must be a number)\nAPI key check before execution\nOrder status confirmation in output"
      },
      {
        "title": "history [SYMBOL] [LIMIT]",
        "body": "Show recent trade history.\n\n# Last 10 trades for BTCUSDT\nbash scripts/dca.sh history BTCUSDT 10\n\n# Last 20 trades for ETHUSDT\nbash scripts/dca.sh history ETHUSDT 20\n\n# Last 50 trades for SOLUSDT\nbash scripts/dca.sh history SOLUSDT 50\n\nDefaults: BTCUSDT, limit 10\n\nOutput includes:\n\nTimestamp (Unix seconds)\nSide (BUY/SELL)\nQuantity purchased\nExecution price\nFees paid (and fee asset)\n\nUse case: Track your DCA progress over time, calculate average entry price."
      },
      {
        "title": "plan [AMOUNT] [FREQ_DAYS] [NUM_BUYS] [SYMBOL]",
        "body": "Project a DCA plan with scenario analysis.\n\nArguments:\n\nAMOUNT — Dollar amount per buy (default: 50)\nFREQ_DAYS — Days between buys (default: 7)\nNUM_BUYS — Number of buys (default: 12)\nSYMBOL — Trading pair (default: BTCUSDT)\n\nExamples:\n\n# Default plan: $50 every 7 days, 12 buys\nbash scripts/dca.sh plan\n\n# Aggressive: $200 every 3 days, 30 buys\nbash scripts/dca.sh plan 200 3 30 BTCUSDT\n\n# Conservative: $25 every 14 days, 24 buys\nbash scripts/dca.sh plan 25 14 24 BTCUSDT\n\n# ETH DCA: $100 weekly for 6 months\nbash scripts/dca.sh plan 100 7 26 ETHUSDT\n\nWhat you get:\n\nTotal investment amount\nBTC/ETH you'd own at current price\nTime span (days + months)\nScenario analysis: PnL at -30%, -20%, -10%, 0%, +10%, +20%, +50%, +100% average prices\n\nUse this to:\n\nDecide on a comfortable budget and frequency\nUnderstand risk/reward before starting\nShow the math to justify DCA vs. lump sum"
      },
      {
        "title": "When to Use DCA",
        "body": "✅ Good for:\n\nLong-term accumulation (6+ months)\nHigh-volatility assets (BTC, ETH, altcoins)\nBuilding positions without timing stress\nRemoving emotional decision-making\n\n❌ Not ideal for:\n\nShort-term trading (use manual buys)\nAssets you want to flip quickly\nLow-volatility stablecoins (just buy once)"
      },
      {
        "title": "Best Practices",
        "body": "Start small — Test with 1-2% of your budget first\nUse testnet — Practice on https://testnet.binance.vision before going live\nSet a timeline — DCA works best over 3-12+ months\nStick to the plan — Resist urge to stop during dips (that's when DCA shines)\nTrack progress — Use history to see your average entry price\nAdjust if needed — Life changes, budgets change — recalculate with plan and adapt"
      },
      {
        "title": "Position Sizing Recommendations",
        "body": "Conservative (1-2% per buy):\n\nPortfolio: $10,000 → DCA $100-$200 per buy\nLower risk, slower accumulation\n\nModerate (3-5% per buy):\n\nPortfolio: $10,000 → DCA $300-$500 per buy\nBalanced approach, standard for most users\n\nAggressive (5-10% per buy):\n\nPortfolio: $10,000 → DCA $500-$1,000 per buy\nHigher risk, faster accumulation, requires strong conviction\n\nNever go above 10% per buy — leaves no room for unexpected dips or expenses."
      },
      {
        "title": "Frequency Guidelines",
        "body": "Daily — For very active traders, high time commitment\nEvery 3 days — Aggressive, good for short DCA periods (1-3 months)\nWeekly — Most popular, good balance (Mondays are common)\nBi-weekly — Aligns with paychecks, moderate pace\nMonthly — Long-term HODLers, lowest effort\n\nPro tip: Match DCA frequency to your income schedule (weekly paycheck → weekly DCA)."
      },
      {
        "title": "Manual Cron (Basic)",
        "body": "Run DCA buys automatically via system cron:\n\n# Every Monday at 9:00 AM UTC, buy $50 BTC\n0 9 * * 1 BINANCE_API_KEY=... BINANCE_SECRET_KEY=... /path/to/dca.sh buy BTCUSDT 50\n\nLimitations:\n\nNo alerts if it fails\nNo confirmations\nSilent execution"
      },
      {
        "title": "OpenClaw Cron (Recommended)",
        "body": "Use OpenClaw for intelligent DCA automation with alerts:\n\nExample: Weekly BTC DCA with Telegram notifications\n\n{\n  \"name\": \"Weekly BTC DCA\",\n  \"schedule\": {\n    \"kind\": \"cron\",\n    \"expr\": \"0 9 * * 1\",\n    \"tz\": \"America/New_York\"\n  },\n  \"sessionTarget\": \"isolated\",\n  \"payload\": {\n    \"kind\": \"agentTurn\",\n    \"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.\",\n    \"deliver\": true,\n    \"channel\": \"telegram\"\n  }\n}\n\nBenefits:\n\n✅ Execution confirmations sent to you\n✅ Failure alerts\n✅ Can ask agent to analyze history and report progress\n✅ Easy to pause/resume via openclaw cron commands\n\nSetup:\n\n# Add the cron job (paste JSON above when prompted)\nopenclaw cron add\n\n# List all jobs\nopenclaw cron list\n\n# Run manually to test\nopenclaw cron run <jobId>\n\n# Disable temporarily\nopenclaw cron update <jobId> --enabled false"
      },
      {
        "title": "Error: BINANCE_API_KEY not set",
        "body": "Fix: Set environment variables before running:\n\nexport BINANCE_API_KEY=\"your-key\"\nexport BINANCE_SECRET_KEY=\"your-secret\"\nbash scripts/dca.sh price"
      },
      {
        "title": "Error: Timestamp for this request is outside of the recvWindow",
        "body": "Cause: Your system clock is out of sync with Binance servers.\n\nFix (Linux/macOS):\n\n# Sync system time\nsudo ntpdate -s time.nist.gov\n\n# Or install/enable NTP\nsudo systemctl enable systemd-timesyncd\nsudo systemctl start systemd-timesyncd\n\nFix (Docker):\n\nAdd --cap-add SYS_TIME when running container, or sync host clock."
      },
      {
        "title": "Error: Signature for this request is not valid",
        "body": "Causes:\n\nWrong BINANCE_SECRET_KEY\nAPI key restrictions (IP whitelist mismatch, disabled Spot Trading)\n\nFix:\n\nDouble-check your secret key (copy-paste from Binance)\nVerify API key has Spot & Margin Trading enabled\nIf using IP whitelist, confirm your server IP is allowed\nRegenerate API key if uncertain"
      },
      {
        "title": "Error: API request failed",
        "body": "Causes:\n\nNetwork issues\nWrong BINANCE_BASE_URL\nBinance API maintenance\n\nFix:\n\nTest network: curl -I https://api.binance.com\nCheck Binance status: binance.com/en/support/announcement\nIf using testnet, confirm: export BINANCE_BASE_URL=\"https://testnet.binance.vision\""
      },
      {
        "title": "Error: Account has insufficient balance for requested action",
        "body": "Cause: Not enough USDT in your spot account.\n\nFix:\n\nCheck balance: bash scripts/dca.sh balance USDT\nDeposit USDT to your spot account\nReduce DCA amount to match available balance"
      },
      {
        "title": "Order shows NEW status (limit order not filling)",
        "body": "This is normal for limit orders. Status means:\n\nNEW — Order placed, waiting for price\nFILLED — Order executed\nPARTIALLY_FILLED — Partial execution\nCANCELED — You or system canceled it\n\nCheck order status:\n\n# View recent orders to see if it filled later\nbash scripts/dca.sh history BTCUSDT 20\n\nCancel pending limit orders:\n\nUse Binance web/app → Orders → Open Orders → Cancel."
      },
      {
        "title": "Q: Can I DCA into altcoins (not just BTC)?",
        "body": "A: Yes! Use any Binance spot pair:\n\nbash scripts/dca.sh buy ETHUSDT 100\nbash scripts/dca.sh buy SOLUSDT 50\nbash scripts/dca.sh buy ADAUSDT 25\n\nJust replace BTCUSDT with your desired pair."
      },
      {
        "title": "Q: What's the minimum buy amount?",
        "body": "A: Binance sets minimums per pair (usually $10-$20). Check Binance docs or test with a small amount on testnet first."
      },
      {
        "title": "Q: Does this work with Binance.US?",
        "body": "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."
      },
      {
        "title": "Q: Can I sell with this tool?",
        "body": "A: Not currently. This is DCA (accumulation) only. For selling, use Binance web/app or modify the script (change side=BUY to side=SELL)."
      },
      {
        "title": "Q: Is my data stored anywhere?",
        "body": "A: No. Zero data storage. All credentials are environment variables. The script makes direct API calls to Binance and exits."
      },
      {
        "title": "Q: Can I use this on multiple machines?",
        "body": "A: Yes, but set up API keys separately on each. Consider using IP whitelist on your API key for security."
      },
      {
        "title": "Q: What if I want to change my DCA amount mid-strategy?",
        "body": "A: Just adjust the amount in your next manual/cron execution. DCA is flexible — no commitment to fixed amounts.\n\nExample: Week 1-4 use $50, Week 5+ use $100."
      },
      {
        "title": "Q: How do I calculate my average entry price?",
        "body": "Run history and average the price column:\n\nbash scripts/dca.sh history BTCUSDT 50 | grep BUY | awk '{print $8}' | awk '{s+=$1; n++} END {print s/n}'\n\nOr use a spreadsheet: export history, paste prices, =AVERAGE()."
      },
      {
        "title": "Security Best Practices",
        "body": "🔒 API Key Safety:\n\nUse dedicated API key for DCA (label it DCA-Only)\nEnable Spot Trading only (no Futures, Margin, Withdrawals)\nSet IP whitelist if your server has static IP\nRotate keys every 3-6 months\nRevoke immediately if compromised\n\n🔒 Credential Management:\n\nNever commit .env files with keys to Git\nUse environment variables, not hardcoded strings\nOn shared servers, restrict file permissions: chmod 600 ~/.bashrc\n\n🔒 Testnet First:\n\nAlways test new strategies on testnet before using real funds\nTestnet keys: testnet.binance.vision\nSet: export BINANCE_BASE_URL=\"https://testnet.binance.vision\"\n\n🔒 Start Small:\n\nFirst live DCA: use 10-20% of planned amount\nVerify execution, fees, and confirmations\nScale up once confident"
      },
      {
        "title": "Dynamic DCA (Market Conditions)",
        "body": "Adjust buy amounts based on price:\n\nBuy more when BTC dips:\n\n# If BTC < $90k, buy $100. Otherwise $50.\nCURRENT=$(bash scripts/dca.sh price BTCUSDT | awk '{print $3}')\nif (( $(echo \"$CURRENT < 90000\" | bc -l) )); then\n  bash scripts/dca.sh buy BTCUSDT 100\nelse\n  bash scripts/dca.sh buy BTCUSDT 50\nfi\n\nUse limit orders to \"buy the dip\":\n\n# Place limit orders 5%, 10%, 15% below current price\nPRICE=$(bash scripts/dca.sh price BTCUSDT | awk '{print $3}')\nLIMIT_5=$(echo \"$PRICE * 0.95\" | bc)\nLIMIT_10=$(echo \"$PRICE * 0.90\" | bc)\nLIMIT_15=$(echo \"$PRICE * 0.85\" | bc)\n\nbash scripts/dca.sh buy BTCUSDT 50 LIMIT $LIMIT_5\nbash scripts/dca.sh buy BTCUSDT 50 LIMIT $LIMIT_10\nbash scripts/dca.sh buy BTCUSDT 50 LIMIT $LIMIT_15"
      },
      {
        "title": "Multi-Asset DCA",
        "body": "DCA into multiple coins:\n\n# Weekly: $30 BTC, $20 ETH, $10 SOL\nbash scripts/dca.sh buy BTCUSDT 30\nbash scripts/dca.sh buy ETHUSDT 20\nbash scripts/dca.sh buy SOLUSDT 10"
      },
      {
        "title": "Logging for Analysis",
        "body": "Track all DCA buys to a log file:\n\n#!/bin/bash\nLOGFILE=\"$HOME/dca-log.txt\"\nDATE=$(date '+%Y-%m-%d %H:%M:%S')\n\nbash scripts/dca.sh buy BTCUSDT 50 | tee -a \"$LOGFILE\"\necho \"[$DATE] DCA executed\" >> \"$LOGFILE\"\n\nThen analyze with:\n\ngrep \"Filled:\" ~/dca-log.txt"
      },
      {
        "title": "Contributing",
        "body": "Found a bug? Have a feature idea? Want to add support for other exchanges?\n\nGitHub: (if public repo exists, link here)\nIssues: Report via GitHub Issues\nPull Requests: Welcome! Follow existing code style."
      },
      {
        "title": "License",
        "body": "MIT License — Free to use, modify, and distribute.\n\nDisclaimer: 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."
      },
      {
        "title": "v1.2.0 (2026-02-05)",
        "body": "📚 Comprehensive documentation overhaul\n📋 Added real-world examples for all actions\n🎓 DCA strategy guide with best practices\n🔧 Troubleshooting section\n❓ FAQ with common questions\n🔒 Security best practices guide\n🚀 Advanced usage examples\n🤖 OpenClaw automation guide"
      },
      {
        "title": "v1.1.0 (2026-02-05)",
        "body": "Initial public release\nCore DCA functionality: plan, buy, history, price, balance\nTestnet support\nMarket and limit orders\n\nBuilt with ❤️ for long-term crypto accumulation.\n\nQuestions? Feedback? Tag @fpsjago on ClawHub or OpenClaw Discord."
      }
    ],
    "body": "Binance DCA — Professional Dollar-Cost Averaging Tool\n\nSystematic crypto accumulation made simple.\nPlan, execute, and track DCA strategies on Binance with confidence.\n\nWhat is DCA?\n\nDollar-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:\n\n✅ Reduces timing risk — no need to predict market tops/bottoms\n✅ Smooths volatility — averages out price fluctuations over time\n✅ Removes emotion — systematic buying, no panic or FOMO\n✅ Builds discipline — consistent accumulation, perfect for long-term holders\n\nThis tool helps you plan, automate, and track your DCA strategy on Binance spot markets.\n\nFeatures\n📊 DCA Plan Projections — scenario analysis showing potential outcomes at different price levels\n💰 Market & Limit Orders — flexible execution options\n📈 Trade History — track your accumulation progress\n🔒 Secure — credentials via environment variables only, zero hardcoded secrets\n🧪 Testnet Support — practice on Binance testnet before going live\n🤖 OpenClaw Integration — automate DCA buys via cron jobs with alerts\n🛡️ Risk Management — conservative defaults, validation before execution\nSetup\n1. Get Binance API Keys\nLog in to binance.com\nGo to Account → API Management\nCreate a new API key:\nLabel: OpenClaw-DCA (or similar)\nRestrictions: Enable Spot & Margin Trading only\nIP Whitelist: Add your server IP for security (optional but recommended)\nSave your API Key and Secret Key securely\n\n⚠️ Security tips:\n\nNever share your secret key\nEnable IP whitelist if your server has a static IP\nUse a separate API key for DCA (easier to revoke if needed)\nStart with small amounts to test\n2. Set Environment Variables\n\nNever hardcode credentials. Always use environment variables:\n\nexport BINANCE_API_KEY=\"your-api-key-here\"\nexport BINANCE_SECRET_KEY=\"your-secret-key-here\"\n\n\nMake them permanent (optional, add to ~/.bashrc or ~/.zshrc):\n\necho 'export BINANCE_API_KEY=\"your-api-key-here\"' >> ~/.bashrc\necho 'export BINANCE_SECRET_KEY=\"your-secret-key-here\"' >> ~/.bashrc\nsource ~/.bashrc\n\n\nFor testnet (recommended for first-time users):\n\nexport BINANCE_BASE_URL=\"https://testnet.binance.vision\"\n\n\nGet testnet API keys at: testnet.binance.vision\n\n3. Verify Setup\n# Check balance (should not error)\nbash scripts/dca.sh balance USDT\n\n# Check BTC price\nbash scripts/dca.sh price BTCUSDT\n\n\nIf you see prices/balances, you're ready!\n\nQuick Start Examples\nExample 1: Check Current Price\nbash scripts/dca.sh price BTCUSDT\n# Output: BTCUSDT = 95234.50\n\n\nWorks for any pair:\n\nbash scripts/dca.sh price ETHUSDT\nbash scripts/dca.sh price SOLUSDT\n\nExample 2: Check Your Balance\nbash scripts/dca.sh balance USDT\n# Output: USDT: free=1000.00000000, locked=0.00000000\n\n\nCheck any asset:\n\nbash scripts/dca.sh balance BTC\nbash scripts/dca.sh balance ETH\n\nExample 3: Plan a DCA Strategy\n\nScenario: You want to invest $600 over 3 months in BTC.\n\n# $50 every week for 12 weeks\nbash scripts/dca.sh plan 50 7 12 BTCUSDT\n\n\nOutput:\n\nDCA Plan: BTCUSDT\n==========================\nBuy amount:  $50 per buy\nFrequency:   every 7 days\nDuration:    12 buys\nCurrent:     95234.50\n==========================\nTotal invest:  $600.00\nAt cur. price: 0.00630245 BTC\nTime span:     84 days (~2.8 months)\n\nScenario Analysis (if avg price over period is):\n  -30% -> avg $ 66,664.15 -> 0.00900000 BTC -> PnL: -$186.00 (-31.0%)\n  -20% -> avg $ 76,187.60 -> 0.00787500 BTC -> PnL: -$126.00 (-21.0%)\n  -10% -> avg $ 85,711.05 -> 0.00700000 BTC -> PnL: -$63.00 (-10.5%)\n   +0% -> avg $ 95,234.50 -> 0.00630245 BTC -> PnL: +$0.00 (+0.0%)\n  +10% -> avg $104,757.95 -> 0.00572727 BTC -> PnL: +$63.00 (+10.5%)\n  +20% -> avg $114,281.40 -> 0.00525000 BTC -> PnL: +$126.00 (+21.0%)\n  +50% -> avg $142,851.75 -> 0.00420000 BTC -> PnL: +$378.00 (+63.0%)\n +100% -> avg $190,469.00 -> 0.00315122 BTC -> PnL: +$630.00 (+105.0%)\n\n\nWhat this tells you:\n\nIf BTC stays flat → break even\nIf BTC averages -20% during your buys → you're down ~21% (but you own more BTC)\nIf BTC averages +50% → you're up ~63%\n\nUse this to set realistic expectations before committing.\n\nExample 4: Execute Your First DCA Buy\n\nMarket order (instant execution):\n\n# Buy $50 worth of BTC at current market price\nbash scripts/dca.sh buy BTCUSDT 50\n\n\nOutput:\n\nPlacing MARKET buy: BTCUSDT for 50 USDT...\nOrder #123456789: FILLED\nFilled: 0.00052500 BTC\n\n\nLimit order (wait for your price):\n\n# Only buy if BTC drops to $94,000\nbash scripts/dca.sh buy BTCUSDT 50 LIMIT 94000\n\n\nOutput:\n\nPlacing LIMIT buy: BTCUSDT for 50 USDT...\nOrder #123456790: NEW\nFilled: 0.00000000 BTC\n\n\n(Order will fill when price hits $94,000)\n\nExample 5: Check Your Trade History\n# Last 10 trades for BTCUSDT\nbash scripts/dca.sh history BTCUSDT 10\n\n\nOutput:\n\nLast 10 trades for BTCUSDT:\n---\n1738752000 | BUY | qty=0.00052500 | price=95238.10 | fee=0.00000053 BNB\n1738665600 | BUY | qty=0.00051234 | price=97567.20 | fee=0.00000051 BNB\n...\n\nComplete Action Reference\nprice [SYMBOL]\n\nGet current spot price for a trading pair.\n\nbash scripts/dca.sh price BTCUSDT\nbash scripts/dca.sh price ETHUSDT\nbash scripts/dca.sh price SOLUSDT\n\n\nDefault: BTCUSDT if symbol is omitted.\n\nbalance [ASSET]\n\nCheck free and locked balance for an asset.\n\nbash scripts/dca.sh balance USDT\nbash scripts/dca.sh balance BTC\nbash scripts/dca.sh balance ETH\n\n\nOutput format: ASSET: free=X.XXXXXXXX, locked=Y.YYYYYYYY\n\nDefault: USDT if asset is omitted.\n\nUse case: Check how much capital you have available before placing orders.\n\nbuy SYMBOL AMOUNT [TYPE] [PRICE]\n\nPlace a buy order.\n\nArguments:\n\nSYMBOL — Trading pair (e.g., BTCUSDT, ETHUSDT)\nAMOUNT — Amount in quote currency (USDT). The tool calculates how much BTC/ETH you get.\nTYPE — MARKET (default) or LIMIT\nPRICE — Required for LIMIT orders\n\nMarket order examples:\n\n# Buy $50 worth of BTC instantly\nbash scripts/dca.sh buy BTCUSDT 50\n\n# Buy $100 worth of ETH instantly\nbash scripts/dca.sh buy ETHUSDT 100\n\n\nLimit order examples:\n\n# Buy $50 BTC only if price drops to $90,000\nbash scripts/dca.sh buy BTCUSDT 50 LIMIT 90000\n\n# Buy $200 ETH only if price hits $3,200\nbash scripts/dca.sh buy ETHUSDT 200 LIMIT 3200\n\n\nSafety features:\n\nAmount validation (must be a number)\nAPI key check before execution\nOrder status confirmation in output\nhistory [SYMBOL] [LIMIT]\n\nShow recent trade history.\n\n# Last 10 trades for BTCUSDT\nbash scripts/dca.sh history BTCUSDT 10\n\n# Last 20 trades for ETHUSDT\nbash scripts/dca.sh history ETHUSDT 20\n\n# Last 50 trades for SOLUSDT\nbash scripts/dca.sh history SOLUSDT 50\n\n\nDefaults: BTCUSDT, limit 10\n\nOutput includes:\n\nTimestamp (Unix seconds)\nSide (BUY/SELL)\nQuantity purchased\nExecution price\nFees paid (and fee asset)\n\nUse case: Track your DCA progress over time, calculate average entry price.\n\nplan [AMOUNT] [FREQ_DAYS] [NUM_BUYS] [SYMBOL]\n\nProject a DCA plan with scenario analysis.\n\nArguments:\n\nAMOUNT — Dollar amount per buy (default: 50)\nFREQ_DAYS — Days between buys (default: 7)\nNUM_BUYS — Number of buys (default: 12)\nSYMBOL — Trading pair (default: BTCUSDT)\n\nExamples:\n\n# Default plan: $50 every 7 days, 12 buys\nbash scripts/dca.sh plan\n\n# Aggressive: $200 every 3 days, 30 buys\nbash scripts/dca.sh plan 200 3 30 BTCUSDT\n\n# Conservative: $25 every 14 days, 24 buys\nbash scripts/dca.sh plan 25 14 24 BTCUSDT\n\n# ETH DCA: $100 weekly for 6 months\nbash scripts/dca.sh plan 100 7 26 ETHUSDT\n\n\nWhat you get:\n\nTotal investment amount\nBTC/ETH you'd own at current price\nTime span (days + months)\nScenario analysis: PnL at -30%, -20%, -10%, 0%, +10%, +20%, +50%, +100% average prices\n\nUse this to:\n\nDecide on a comfortable budget and frequency\nUnderstand risk/reward before starting\nShow the math to justify DCA vs. lump sum\nDCA Strategy Guide\nWhen to Use DCA\n\n✅ Good for:\n\nLong-term accumulation (6+ months)\nHigh-volatility assets (BTC, ETH, altcoins)\nBuilding positions without timing stress\nRemoving emotional decision-making\n\n❌ Not ideal for:\n\nShort-term trading (use manual buys)\nAssets you want to flip quickly\nLow-volatility stablecoins (just buy once)\nBest Practices\nStart small — Test with 1-2% of your budget first\nUse testnet — Practice on https://testnet.binance.vision before going live\nSet a timeline — DCA works best over 3-12+ months\nStick to the plan — Resist urge to stop during dips (that's when DCA shines)\nTrack progress — Use history to see your average entry price\nAdjust if needed — Life changes, budgets change — recalculate with plan and adapt\nPosition Sizing Recommendations\n\nConservative (1-2% per buy):\n\nPortfolio: $10,000 → DCA $100-$200 per buy\nLower risk, slower accumulation\n\nModerate (3-5% per buy):\n\nPortfolio: $10,000 → DCA $300-$500 per buy\nBalanced approach, standard for most users\n\nAggressive (5-10% per buy):\n\nPortfolio: $10,000 → DCA $500-$1,000 per buy\nHigher risk, faster accumulation, requires strong conviction\n\nNever go above 10% per buy — leaves no room for unexpected dips or expenses.\n\nFrequency Guidelines\nDaily — For very active traders, high time commitment\nEvery 3 days — Aggressive, good for short DCA periods (1-3 months)\nWeekly — Most popular, good balance (Mondays are common)\nBi-weekly — Aligns with paychecks, moderate pace\nMonthly — Long-term HODLers, lowest effort\n\nPro tip: Match DCA frequency to your income schedule (weekly paycheck → weekly DCA).\n\nAutomation with OpenClaw\nManual Cron (Basic)\n\nRun DCA buys automatically via system cron:\n\n# Every Monday at 9:00 AM UTC, buy $50 BTC\n0 9 * * 1 BINANCE_API_KEY=... BINANCE_SECRET_KEY=... /path/to/dca.sh buy BTCUSDT 50\n\n\nLimitations:\n\nNo alerts if it fails\nNo confirmations\nSilent execution\nOpenClaw Cron (Recommended)\n\nUse OpenClaw for intelligent DCA automation with alerts:\n\nExample: Weekly BTC DCA with Telegram notifications\n\n{\n  \"name\": \"Weekly BTC DCA\",\n  \"schedule\": {\n    \"kind\": \"cron\",\n    \"expr\": \"0 9 * * 1\",\n    \"tz\": \"America/New_York\"\n  },\n  \"sessionTarget\": \"isolated\",\n  \"payload\": {\n    \"kind\": \"agentTurn\",\n    \"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.\",\n    \"deliver\": true,\n    \"channel\": \"telegram\"\n  }\n}\n\n\nBenefits:\n\n✅ Execution confirmations sent to you\n✅ Failure alerts\n✅ Can ask agent to analyze history and report progress\n✅ Easy to pause/resume via openclaw cron commands\n\nSetup:\n\n# Add the cron job (paste JSON above when prompted)\nopenclaw cron add\n\n# List all jobs\nopenclaw cron list\n\n# Run manually to test\nopenclaw cron run <jobId>\n\n# Disable temporarily\nopenclaw cron update <jobId> --enabled false\n\nTroubleshooting\nError: BINANCE_API_KEY not set\n\nFix: Set environment variables before running:\n\nexport BINANCE_API_KEY=\"your-key\"\nexport BINANCE_SECRET_KEY=\"your-secret\"\nbash scripts/dca.sh price\n\nError: Timestamp for this request is outside of the recvWindow\n\nCause: Your system clock is out of sync with Binance servers.\n\nFix (Linux/macOS):\n\n# Sync system time\nsudo ntpdate -s time.nist.gov\n\n# Or install/enable NTP\nsudo systemctl enable systemd-timesyncd\nsudo systemctl start systemd-timesyncd\n\n\nFix (Docker):\n\nAdd --cap-add SYS_TIME when running container, or sync host clock.\n\nError: Signature for this request is not valid\n\nCauses:\n\nWrong BINANCE_SECRET_KEY\nAPI key restrictions (IP whitelist mismatch, disabled Spot Trading)\n\nFix:\n\nDouble-check your secret key (copy-paste from Binance)\nVerify API key has Spot & Margin Trading enabled\nIf using IP whitelist, confirm your server IP is allowed\nRegenerate API key if uncertain\nError: API request failed\n\nCauses:\n\nNetwork issues\nWrong BINANCE_BASE_URL\nBinance API maintenance\n\nFix:\n\nTest network: curl -I https://api.binance.com\nCheck Binance status: binance.com/en/support/announcement\nIf using testnet, confirm: export BINANCE_BASE_URL=\"https://testnet.binance.vision\"\nError: Account has insufficient balance for requested action\n\nCause: Not enough USDT in your spot account.\n\nFix:\n\nCheck balance: bash scripts/dca.sh balance USDT\nDeposit USDT to your spot account\nReduce DCA amount to match available balance\nOrder shows NEW status (limit order not filling)\n\nThis is normal for limit orders. Status means:\n\nNEW — Order placed, waiting for price\nFILLED — Order executed\nPARTIALLY_FILLED — Partial execution\nCANCELED — You or system canceled it\n\nCheck order status:\n\n# View recent orders to see if it filled later\nbash scripts/dca.sh history BTCUSDT 20\n\n\nCancel pending limit orders:\n\nUse Binance web/app → Orders → Open Orders → Cancel.\n\nFAQ\nQ: Can I DCA into altcoins (not just BTC)?\n\nA: Yes! Use any Binance spot pair:\n\nbash scripts/dca.sh buy ETHUSDT 100\nbash scripts/dca.sh buy SOLUSDT 50\nbash scripts/dca.sh buy ADAUSDT 25\n\n\nJust replace BTCUSDT with your desired pair.\n\nQ: What's the minimum buy amount?\n\nA: Binance sets minimums per pair (usually $10-$20). Check Binance docs or test with a small amount on testnet first.\n\nQ: Does this work with Binance.US?\n\nA: 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.\n\nQ: Can I sell with this tool?\n\nA: Not currently. This is DCA (accumulation) only. For selling, use Binance web/app or modify the script (change side=BUY to side=SELL).\n\nQ: Is my data stored anywhere?\n\nA: No. Zero data storage. All credentials are environment variables. The script makes direct API calls to Binance and exits.\n\nQ: Can I use this on multiple machines?\n\nA: Yes, but set up API keys separately on each. Consider using IP whitelist on your API key for security.\n\nQ: What if I want to change my DCA amount mid-strategy?\n\nA: Just adjust the amount in your next manual/cron execution. DCA is flexible — no commitment to fixed amounts.\n\nExample: Week 1-4 use $50, Week 5+ use $100.\n\nQ: How do I calculate my average entry price?\n\nRun history and average the price column:\n\nbash scripts/dca.sh history BTCUSDT 50 | grep BUY | awk '{print $8}' | awk '{s+=$1; n++} END {print s/n}'\n\n\nOr use a spreadsheet: export history, paste prices, =AVERAGE().\n\nSecurity Best Practices\n\n🔒 API Key Safety:\n\nUse dedicated API key for DCA (label it DCA-Only)\nEnable Spot Trading only (no Futures, Margin, Withdrawals)\nSet IP whitelist if your server has static IP\nRotate keys every 3-6 months\nRevoke immediately if compromised\n\n🔒 Credential Management:\n\nNever commit .env files with keys to Git\nUse environment variables, not hardcoded strings\nOn shared servers, restrict file permissions: chmod 600 ~/.bashrc\n\n🔒 Testnet First:\n\nAlways test new strategies on testnet before using real funds\nTestnet keys: testnet.binance.vision\nSet: export BINANCE_BASE_URL=\"https://testnet.binance.vision\"\n\n🔒 Start Small:\n\nFirst live DCA: use 10-20% of planned amount\nVerify execution, fees, and confirmations\nScale up once confident\nAdvanced Usage\nDynamic DCA (Market Conditions)\n\nAdjust buy amounts based on price:\n\nBuy more when BTC dips:\n\n# If BTC < $90k, buy $100. Otherwise $50.\nCURRENT=$(bash scripts/dca.sh price BTCUSDT | awk '{print $3}')\nif (( $(echo \"$CURRENT < 90000\" | bc -l) )); then\n  bash scripts/dca.sh buy BTCUSDT 100\nelse\n  bash scripts/dca.sh buy BTCUSDT 50\nfi\n\n\nUse limit orders to \"buy the dip\":\n\n# Place limit orders 5%, 10%, 15% below current price\nPRICE=$(bash scripts/dca.sh price BTCUSDT | awk '{print $3}')\nLIMIT_5=$(echo \"$PRICE * 0.95\" | bc)\nLIMIT_10=$(echo \"$PRICE * 0.90\" | bc)\nLIMIT_15=$(echo \"$PRICE * 0.85\" | bc)\n\nbash scripts/dca.sh buy BTCUSDT 50 LIMIT $LIMIT_5\nbash scripts/dca.sh buy BTCUSDT 50 LIMIT $LIMIT_10\nbash scripts/dca.sh buy BTCUSDT 50 LIMIT $LIMIT_15\n\nMulti-Asset DCA\n\nDCA into multiple coins:\n\n# Weekly: $30 BTC, $20 ETH, $10 SOL\nbash scripts/dca.sh buy BTCUSDT 30\nbash scripts/dca.sh buy ETHUSDT 20\nbash scripts/dca.sh buy SOLUSDT 10\n\nLogging for Analysis\n\nTrack all DCA buys to a log file:\n\n#!/bin/bash\nLOGFILE=\"$HOME/dca-log.txt\"\nDATE=$(date '+%Y-%m-%d %H:%M:%S')\n\nbash scripts/dca.sh buy BTCUSDT 50 | tee -a \"$LOGFILE\"\necho \"[$DATE] DCA executed\" >> \"$LOGFILE\"\n\n\nThen analyze with:\n\ngrep \"Filled:\" ~/dca-log.txt\n\nContributing\n\nFound a bug? Have a feature idea? Want to add support for other exchanges?\n\nGitHub: (if public repo exists, link here)\nIssues: Report via GitHub Issues\nPull Requests: Welcome! Follow existing code style.\nLicense\n\nMIT License — Free to use, modify, and distribute.\n\nDisclaimer: 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.\n\nChangelog\nv1.2.0 (2026-02-05)\n📚 Comprehensive documentation overhaul\n📋 Added real-world examples for all actions\n🎓 DCA strategy guide with best practices\n🔧 Troubleshooting section\n❓ FAQ with common questions\n🔒 Security best practices guide\n🚀 Advanced usage examples\n🤖 OpenClaw automation guide\nv1.1.0 (2026-02-05)\nInitial public release\nCore DCA functionality: plan, buy, history, price, balance\nTestnet support\nMarket and limit orders\n\nBuilt with ❤️ for long-term crypto accumulation.\n\nQuestions? Feedback? Tag @fpsjago on ClawHub or OpenClaw Discord."
  },
  "trust": {
    "sourceLabel": "tencent",
    "provenanceUrl": "https://clawhub.ai/fpsjago/binance-dca",
    "publisherUrl": "https://clawhub.ai/fpsjago/binance-dca",
    "owner": "fpsjago",
    "version": "1.2.0",
    "license": null,
    "verificationStatus": "Indexed source record"
  },
  "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"
  }
}