跳至主要内容
小龙虾小龙虾AI
🤖

A Clawdbot skill that gives your agent native access to DWLF — a market analysis platform for crypto and stocks.

Interact with DWLF (dwlf.co.uk), a market analysis platform for crypto and stocks. Use for: market data, price charts, technical indicators (EMA, RSI, DSS, S/R, trendlines, candlestick patterns, SMC), strategies (visual signal builder), backtesting, custom events, trade signals, portfolio tracking, watchlists, trade journaling, chart annotations, trade plans, position sizing, and academy content. Trigger on: market analysis, trading signals, backtests, portfolio, DWLF, chart indicators, support/

下载2.4k
星标4
版本1.0.0
金融财务
安全通过
⚙️脚本

技能说明


name: dwlf description: > Interact with DWLF (dwlf.co.uk), a market analysis platform for crypto and stocks. Use for: market data, price charts, technical indicators (EMA, RSI, DSS, S/R, trendlines, candlestick patterns, SMC), strategies (visual signal builder), backtesting, custom events, trade signals, portfolio tracking, watchlists, trade journaling, chart annotations, trade plans, position sizing, and academy content. Trigger on: market analysis, trading signals, backtests, portfolio, DWLF, chart indicators, support/resistance, strategy builder, trade journal, watchlist, chart annotations, trade plans, position sizing, how's BTC, how's the market. metadata: clawdbot: emoji: "📊" requires: bins: ["curl", "jq"]

DWLF — Market Analysis Platform

API base: https://api.dwlf.co.uk/v2

Auth

Use API key auth. Check TOOLS.md for the key. Header:

Authorization: ApiKey dwlf_sk_...

Helper script: scripts/dwlf-api.sh

Quick Start

# Generic GET request
./scripts/dwlf-api.sh GET /market-data/BTC-USD

# With query params
./scripts/dwlf-api.sh GET "/events?symbol=BTC-USD&limit=10"

# POST request
./scripts/dwlf-api.sh POST /visual-backtests '{"strategyId":"...","symbol":"BTC-USD"}'

Annotation Examples

# Create a horizontal line annotation at a key support level
./scripts/dwlf-api.sh POST /annotations '{
  "symbol": "BTC-USD",
  "timeframe": "1d",
  "type": "hline",
  "data": { "price": 95000, "color": "#00ff00", "label": "Key Support", "lineStyle": "solid", "lineWidth": 2, "showPrice": true },
  "origin": "ai"
}'

# Create a text annotation on chart
./scripts/dwlf-api.sh POST /annotations '{
  "symbol": "ETH-USD",
  "timeframe": "4h",
  "type": "text",
  "data": { "text": "Breakout zone", "price": 3800, "time": "2025-06-01T00:00:00Z", "color": "#ffaa00", "fontSize": 14 },
  "origin": "ai"
}'

# Bulk create multiple annotations
./scripts/dwlf-api.sh POST /annotations/bulk '{
  "annotations": [
    { "symbol": "BTC-USD", "timeframe": "1d", "type": "hline", "data": { "price": 100000, "color": "#ff0000", "label": "Resistance" }, "origin": "ai" },
    { "symbol": "BTC-USD", "timeframe": "1d", "type": "hline", "data": { "price": 92000, "color": "#00ff00", "label": "Support" }, "origin": "ai" }
  ]
}'

# List annotations for a symbol
./scripts/dwlf-api.sh GET "/annotations?symbol=BTC-USD&timeframe=1d"

# Update an annotation (merges data — only changes specified fields)
./scripts/dwlf-api.sh PUT /annotations/abc123 '{ "data": { "color": "#ff0000" } }'

Trade Plan & Position Sizing Examples

# Calculate position size
./scripts/dwlf-api.sh POST /tools/position-size '{
  "accountSize": 10000,
  "riskPercent": 2,
  "entryPrice": 95000,
  "stopLoss": 93000,
  "symbol": "BTC-USD"
}'

# Create a trade plan
./scripts/dwlf-api.sh POST /trade-plans '{
  "symbol": "BTC-USD",
  "direction": "long",
  "entryPrice": 95000,
  "stopLoss": 93000,
  "takeProfit": 100000,
  "notes": "Bounce off key support with RSI divergence"
}'

Symbol Format

  • Crypto: BTC-USD, ETH-USD, SOL-USD (always with -USD suffix)
  • Stocks/ETFs: TSLA, NVDA, META, MARA, RIOT
  • Forex: GBP-USD, EUR-USD

If user says "BTC" → use BTC-USD. If "TSLA" → use TSLA.

Core Endpoints

Market Data

MethodPathDescription
GET/market-data/{symbol}?interval=1d&limit=50OHLCV candles
GET/market-data/symbolsList all tracked symbols
GET/support-resistance/{symbol}S/R levels with scores
GET/chart-indicators/{symbol}?interval=1dAll indicators (RSI, EMA, MACD, etc.)
GET/trendlines/{symbol}Auto-detected trendlines
GET/events?symbol={symbol}&limit=20System events (breakouts)
GET/events?type=custom_event&scope=user&symbol={symbol}&days=30User's custom events (wcl, dss, reversals etc.)

Chart Annotations

MethodPathDescription
GET/annotations?symbol={symbol}&timeframe={tf}List annotations
POST/annotationsCreate annotation (hline, text, trendline, rectangle, channel)
PUT/annotations/{annotationId}Update annotation (merges data fields)
DELETE/annotations/{annotationId}Delete annotation
POST/annotations/bulkBulk create annotations

Trade Plans

MethodPathDescription
GET/trade-plansList trade plans
GET/trade-plans/{planId}Get trade plan
POST/trade-plansCreate trade plan
PUT/trade-plans/{planId}Update trade plan
DELETE/trade-plans/{planId}Delete trade plan
POST/trade-plans/{planId}/duplicateDuplicate trade plan

Position Sizing

MethodPathDescription
POST/tools/position-sizeCalculate position size from risk params

User Settings

MethodPathDescription
GET/user/settingsGet user settings
PUT/user/settingsUpdate user settings
DELETE/user/settings/{settingKey}Delete a setting

Strategies & Signals

MethodPathDescription
GET/visual-strategiesList user's strategies
GET/visual-strategies/{id}Strategy details
POST/visual-strategiesCreate strategy
PUT/visual-strategies/{id}Update strategy
GET/user/trade-signals/activeActive trade signals
GET/user/trade-signals/recent?limit=20Recent signals
GET/user/trade-signals/statsSignal performance stats
GET/user/trade-signals/symbol/{symbol}Signals for a symbol

Backtesting

MethodPathDescription
POST/backtestsTrigger backtest (async)
GET/backtestsList backtests
GET/backtests/summaryBacktest summary
GET/backtests/{requestId}Get backtest status
GET/backtests/{requestId}/resultsGet backtest results
DELETE/backtests/{requestId}Delete a backtest

Backtests are async — POST triggers, then poll GET until status: "completed".

  • Body: { strategyId, symbols: ["BTC-USD"], startDate: "2025-01-01", endDate: "2026-01-30" }
  • Note: symbols is an array, not symbol (singular).

Portfolio & Trades

MethodPathDescription
GET/portfoliosList portfolios
GET/portfolios/{id}Portfolio details + holdings
GET/trades?status=openList trades
POST/tradesLog a new trade
PUT/trades/{id}Update trade
GET/trade-plansList trade plans

Watchlist

MethodPathDescription
GET/watchlistGet watchlist
POST/watchlistAdd symbol ({"symbol":"BTC-USD"})
DELETE/watchlist/{symbol}Remove symbol

Custom Events

MethodPathDescription
GET/custom-eventsList custom events
POST/custom-eventsCreate custom event
GET/custom-events/{id}Event details

Custom Event Symbol Activation

MethodPathDescription
POST/custom-event-symbols/:eventId/enable-allBulk activate symbols for an event
POST/custom-event-symbols/:eventId/disable-allBulk deactivate symbols for an event
GET/custom-event-symbols/event/:eventIdGet active symbols for an event
GET/custom-event-symbolsList all event-symbol associations

Strategy Symbol Activation

MethodPathDescription
POST/strategy-symbols/:strategyId/enable-allBulk activate symbols for a strategy
POST/strategy-symbols/:strategyId/disable-allBulk deactivate symbols for a strategy
GET/strategy-symbols/strategy/:strategyIdGet active symbols for a strategy
GET/strategy-symbolsList all strategy-symbol associations

AI Summaries

MethodPathDescription
GET/ai/dashboardFull account overview: watchlist, signals, trades, portfolios, strategies, events
GET/ai/symbol-brief/{symbol}Single-symbol snapshot: price, candles, indicators, S/R, events, signals
GET/ai/strategy-performanceAll strategies with signal stats, win rate, P&L breakdowns

💡 Use these first! The AI summary endpoints are pre-aggregated for AI consumption. When a user asks "how's BTC?" or "what's going on?", hit these before making multiple individual calls.

Evaluations

MethodPathDescription
POST/evaluationsTrigger evaluation run
GET/evaluations/{id}Get evaluation results

Symbol Activation (Required After Creation)

⚠️ IMPORTANT: Creating a custom event or strategy does NOT automatically activate it for any symbols. After creation, you MUST ask the user which symbols to activate it for, then call the enable endpoint. Without this step, the event/strategy will not fire or generate signals.

Workflow: Custom Events

  1. Create the event → POST /custom-events
  2. Compile the event → POST /custom-events/{id}/compile
  3. Ask the user which symbols to activate for
  4. Activate symbolsPOST /custom-event-symbols/{eventId}/enable-all with { "symbols": ["BTC-USD", "ETH-USD"] }

Workflow: Strategies

  1. Create the strategy → POST /visual-strategies
  2. Compile the strategy → POST /visual-strategies/{id}/compile
  3. Ask the user which symbols to activate for
  4. Activate symbolsPOST /strategy-symbols/{strategyId}/enable-all with { "symbols": ["BTC-USD", "ETH-USD"] }

Editing Events or Strategies

⚠️ Any update to a custom event or strategy requires recompilation! The evaluator runs the compiled output, not the visual graph. If you update nodes, edges, conditions, or parameters without recompiling, the changes have no effect.

  • After editing an event: POST /custom-events/{id}/compile
  • After editing a strategy: POST /visual-strategies/{id}/compile

Always recompile immediately after any PUT update call.

Checking Active Symbols

  • Event symbols: GET /custom-event-symbols/event/{eventId}
  • Strategy symbols: GET /strategy-symbols/strategy/{strategyId}
  • All activations: GET /custom-event-symbols and GET /strategy-symbols (query: ?activeOnly=true)

Deactivating Symbols

  • Event: POST /custom-event-symbols/{eventId}/disable-all with { "symbols": [...] }
  • Strategy: POST /strategy-symbols/{strategyId}/disable-all with { "symbols": [...] }

Response Formatting

When presenting data to users:

Market overview: Show price, % change, key S/R levels, and any recent events.

Signals: Show symbol, direction, entry, stop loss, confidence score, strategy name.

S/R levels: Sort by score (strongest first), show level and touch count.

Backtests: Show trade count, win rate, total return, Sharpe ratio, best/worst trades.

Available Indicators

EMA (multiple periods), SMA, RSI, MACD, Bollinger Bands, DSS (Double Smoothed Stochastic), Stochastic RSI, ATR, ADX, OBV, Volume Profile, Ichimoku Cloud, Fibonacci Retracement, Support/Resistance, Trendlines, Candlestick Patterns, SMC (Order Blocks, FVGs, BOS/ChoCH).

Academy

DWLF Academy is a CDN-hosted collection of educational content (15 tracks, 60+ lessons) covering indicators, events, strategies, charting, and more. No auth required.

Use academy tools to read lesson content and understand DWLF concepts:

  • dwlf_list_academy_tracks — browse all tracks and lessons
  • dwlf_search_academy — search by keyword
  • dwlf_get_academy_lesson — read a specific lesson (markdown)

When a user asks "how does X work in DWLF?" or "what is DSS?", check the academy first — it likely has a lesson explaining it.

Detailed Reference

  • API endpoints (params, response shapes): read references/api-endpoints.md
  • Strategy builder (node types, edge wiring, examples): read references/strategy-builder.md

如何使用「A Clawdbot skill that gives your agent native access to DWLF — a market analysis platform for crypto and stocks.」?

  1. 打开小龙虾AI(Web 或 iOS App)
  2. 点击上方「立即使用」按钮,或在对话框中输入任务描述
  3. 小龙虾AI 会自动匹配并调用「A Clawdbot skill that gives your agent native access to DWLF — a market analysis platform for crypto and stocks.」技能完成任务
  4. 结果即时呈现,支持继续对话优化

相关技能