{
  "schemaVersion": "1.0",
  "item": {
    "slug": "trading-signals-ws",
    "name": "Trading Signals Ws",
    "source": "tencent",
    "type": "skill",
    "category": "开发工具",
    "sourceUrl": "https://clawhub.ai/Sunnyztj/trading-signals-ws",
    "canonicalUrl": "https://clawhub.ai/Sunnyztj/trading-signals-ws",
    "targetPlatform": "OpenClaw"
  },
  "install": {
    "downloadMode": "redirect",
    "downloadUrl": "/downloads/trading-signals-ws",
    "sourceDownloadUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=trading-signals-ws",
    "sourcePlatform": "tencent",
    "targetPlatform": "OpenClaw",
    "installMethod": "Manual import",
    "extraction": "Extract archive",
    "prerequisites": [
      "OpenClaw"
    ],
    "packageFormat": "ZIP package",
    "includedAssets": [
      "SKILL.md",
      "references/telegram_setup.md",
      "scripts/config_template.py",
      "scripts/signal_bot.py"
    ],
    "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-05-07T17:22:31.273Z",
      "expiresAt": "2026-05-14T17:22:31.273Z",
      "httpStatus": 200,
      "finalUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=afrexai-annual-report",
      "contentType": "application/zip",
      "probeMethod": "head",
      "details": {
        "probeUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=afrexai-annual-report",
        "contentDisposition": "attachment; filename=\"afrexai-annual-report-1.0.0.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/trading-signals-ws"
    },
    "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/trading-signals-ws",
    "agentPageUrl": "https://openagent3.xyz/skills/trading-signals-ws/agent",
    "manifestUrl": "https://openagent3.xyz/skills/trading-signals-ws/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/trading-signals-ws/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": "Trading Signals WebSocket",
        "body": "Real-time signal generator: WebSocket price feed → strategy engine → Telegram alerts."
      },
      {
        "title": "Quick Start",
        "body": "pip install websockets ccxt requests\ncp scripts/config_template.py config.py  # Edit with your keys\npython scripts/signal_bot.py"
      },
      {
        "title": "How It Works",
        "body": "Bybit WebSocket ──→ Price Updates ──→ SL/TP Check (every tick)\n                ──→ Kline Close   ──→ Strategy Signal ──→ Telegram Alert\n\nConnects to exchange WebSocket (public, no API key needed)\nSubscribes to ticker (real-time prices) + kline (candle data)\nOn each tick: checks stop-loss/take-profit for open signals\nOn candle close: runs strategy indicators, generates buy/sell signals\nSends formatted alerts to Telegram with entry/SL/TP levels"
      },
      {
        "title": "Configuration",
        "body": "Edit config.py:\n\nSYMBOLS = [\"ETH/USDT:USDT\", \"SOL/USDT:USDT\", \"BTC/USDT:USDT\"]\nSTRATEGIES = {\n    \"ETHUSDT\": {\"type\": \"ema\", \"fast\": 12, \"slow\": 26},\n    \"SOLUSDT\": {\"type\": \"rsi\", \"period\": 14, \"oversold\": 30, \"overbought\": 70},\n    \"BTCUSDT\": {\"type\": \"macd\", \"fast\": 12, \"slow\": 26, \"signal\": 9},\n}\nTG_BOT_TOKEN = \"your-bot-token\"\nTG_CHAT_ID = \"your-chat-id\""
      },
      {
        "title": "Features",
        "body": "Multi-symbol: Monitor unlimited pairs simultaneously\nMulti-strategy: Different strategy per symbol\nAuto-reconnect: 5s retry on disconnect\nState persistence: Saves every 5 minutes, survives restarts\nCooldown: Configurable signal cooldown to avoid spam\nTelegram formatting: Rich HTML messages with emoji"
      },
      {
        "title": "Deployment",
        "body": "# systemd service\nsudo tee /etc/systemd/system/signal-bot.service << 'EOF'\n[Unit]\nDescription=Trading Signal Bot\nAfter=network.target\n[Service]\nType=simple\nWorkingDirectory=/root/signals\nExecStart=/usr/bin/python3 signal_bot.py\nRestart=always\nRestartSec=10\n[Install]\nWantedBy=multi-user.target\nEOF\nsudo systemctl enable --now signal-bot"
      },
      {
        "title": "Live Signal API (Optional)",
        "body": "Don't want to run your own bot? Subscribe to our hosted signal service:\n\n# Free tier (15-min delayed)\ncurl https://api.tinyore.com/signals/free\n\n# Get API key (7-day free trial)\ncurl -X POST https://api.tinyore.com/subscribe -H \"Content-Type: application/json\" -d '{\"email\":\"you@example.com\"}'\n\n# Pro tier (real-time, $5/mo)\ncurl https://api.tinyore.com/signals/live -H \"X-API-Key: YOUR_KEY\"\n\n# Market status\ncurl https://api.tinyore.com/status\n\nStrategies: ETH EMA(12/26) + SOL RSI(14,30/70) on 1h timeframe.\nTop performers: HYPE RSI 73% win rate, PEPE RSI 53% win rate (90-day backtest).\nContact @SunnyZhou on Telegram to upgrade to Pro."
      },
      {
        "title": "Files",
        "body": "scripts/signal_bot.py — Main WebSocket signal bot\nscripts/config_template.py — Configuration template\nreferences/telegram_setup.md — How to create a Telegram bot and get chat ID"
      }
    ],
    "body": "Trading Signals WebSocket\n\nReal-time signal generator: WebSocket price feed → strategy engine → Telegram alerts.\n\nQuick Start\npip install websockets ccxt requests\ncp scripts/config_template.py config.py  # Edit with your keys\npython scripts/signal_bot.py\n\nHow It Works\nBybit WebSocket ──→ Price Updates ──→ SL/TP Check (every tick)\n                ──→ Kline Close   ──→ Strategy Signal ──→ Telegram Alert\n\nConnects to exchange WebSocket (public, no API key needed)\nSubscribes to ticker (real-time prices) + kline (candle data)\nOn each tick: checks stop-loss/take-profit for open signals\nOn candle close: runs strategy indicators, generates buy/sell signals\nSends formatted alerts to Telegram with entry/SL/TP levels\nConfiguration\n\nEdit config.py:\n\nSYMBOLS = [\"ETH/USDT:USDT\", \"SOL/USDT:USDT\", \"BTC/USDT:USDT\"]\nSTRATEGIES = {\n    \"ETHUSDT\": {\"type\": \"ema\", \"fast\": 12, \"slow\": 26},\n    \"SOLUSDT\": {\"type\": \"rsi\", \"period\": 14, \"oversold\": 30, \"overbought\": 70},\n    \"BTCUSDT\": {\"type\": \"macd\", \"fast\": 12, \"slow\": 26, \"signal\": 9},\n}\nTG_BOT_TOKEN = \"your-bot-token\"\nTG_CHAT_ID = \"your-chat-id\"\n\nFeatures\nMulti-symbol: Monitor unlimited pairs simultaneously\nMulti-strategy: Different strategy per symbol\nAuto-reconnect: 5s retry on disconnect\nState persistence: Saves every 5 minutes, survives restarts\nCooldown: Configurable signal cooldown to avoid spam\nTelegram formatting: Rich HTML messages with emoji\nDeployment\n# systemd service\nsudo tee /etc/systemd/system/signal-bot.service << 'EOF'\n[Unit]\nDescription=Trading Signal Bot\nAfter=network.target\n[Service]\nType=simple\nWorkingDirectory=/root/signals\nExecStart=/usr/bin/python3 signal_bot.py\nRestart=always\nRestartSec=10\n[Install]\nWantedBy=multi-user.target\nEOF\nsudo systemctl enable --now signal-bot\n\nLive Signal API (Optional)\n\nDon't want to run your own bot? Subscribe to our hosted signal service:\n\n# Free tier (15-min delayed)\ncurl https://api.tinyore.com/signals/free\n\n# Get API key (7-day free trial)\ncurl -X POST https://api.tinyore.com/subscribe -H \"Content-Type: application/json\" -d '{\"email\":\"you@example.com\"}'\n\n# Pro tier (real-time, $5/mo)\ncurl https://api.tinyore.com/signals/live -H \"X-API-Key: YOUR_KEY\"\n\n# Market status\ncurl https://api.tinyore.com/status\n\n\nStrategies: ETH EMA(12/26) + SOL RSI(14,30/70) on 1h timeframe. Top performers: HYPE RSI 73% win rate, PEPE RSI 53% win rate (90-day backtest). Contact @SunnyZhou on Telegram to upgrade to Pro.\n\nFiles\nscripts/signal_bot.py — Main WebSocket signal bot\nscripts/config_template.py — Configuration template\nreferences/telegram_setup.md — How to create a Telegram bot and get chat ID"
  },
  "trust": {
    "sourceLabel": "tencent",
    "provenanceUrl": "https://clawhub.ai/Sunnyztj/trading-signals-ws",
    "publisherUrl": "https://clawhub.ai/Sunnyztj/trading-signals-ws",
    "owner": "Sunnyztj",
    "version": "1.3.0",
    "license": null,
    "verificationStatus": "Indexed source record"
  },
  "links": {
    "detailUrl": "https://openagent3.xyz/skills/trading-signals-ws",
    "downloadUrl": "https://openagent3.xyz/downloads/trading-signals-ws",
    "agentUrl": "https://openagent3.xyz/skills/trading-signals-ws/agent",
    "manifestUrl": "https://openagent3.xyz/skills/trading-signals-ws/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/trading-signals-ws/agent.md"
  }
}