Data Fetcher
FreeFetch historical OHLC chart data from yfinance (stocks) or ccxt (crypto) and load it onto the chart.
The English summary is being prepared. Showing the original description.
Generates and analyzes trading strategies from a structured config. Produces runnable JS + portfolio analysis.
The English summary is being prepared. Showing the original description.
See how to installReview the instructions the agent will receive before you install.
Take a structured strategy configuration — entry/exit conditions, TP/SL,
drawdown limits, seed capital — and produce a runnable JavaScript strategy
script that returns {trades, equity}. After the script is backtested,
the same skill can analyze the results and suggest concrete improvements.
This skill is the counterpart to the Pattern Skill: instead of finding historical patterns, it trades them (or any other hypothesis).
Vibe Trade should dispatch to the Strategy Skill when the user:
chatbox.card.strategy_builder to show the structured form in the chatcontext.strategy_configcontext.analyze_results plus
the strategy config to produce an assessment + suggestionsIf no strategy_config is in context, show the structured form:
chatbox.card.strategy_builder to inject the form into the chatIf strategy_config is present and mode = "generate" (default):
sma() exists)maxAdverseExcursion / maxFavorableExcursion per tradeequity array on every bar (not just on trade events)script_editor.load with the full scriptbottom_panel.activate_tab → portfolioIf mode = "analyze" (backtest results in context.analyze_results):
data.suggestionsNever touch the script generation without a config. Free-form strategy chat (without a structured config) should be handled as a general chat fallback, not by this skill.
| Key | Type | Meaning |
|---|---|---|
context.mode | "generate" | "analyze" | Which operation to run (default: generate) |
context.strategy_config | object | Full strategy config from the form |
context.analyze_results | object | Backtest metrics (analyze mode only) |
strategy_config shape:
{
entryCondition: string,
exitCondition: string,
takeProfit: { type: "percentage" | "absolute", value: number },
stopLoss: { type: "percentage" | "absolute", value: number },
maxDrawdown: number, // percent
seedAmount: number, // USD
specialInstructions: string
}
Generate mode:
reply — short confirmation ("Strategy script generated.")script — JavaScript strategy returning {trades, equity}script_type — "strategy"data.config — echoes the config (for persistence)tool_calls — load + activate portfolio tabAnalyze mode:
reply — 2–3 sentence assessmentdata.suggestions — 3–5 improvement suggestionstool_calls — none (analyze is read-only)| Tool | When | Payload |
|---|---|---|
chatbox.card.strategy_builder | User wants to build a strategy but no config yet | — |
script_editor.load | Strategy generated | The JS source |
script_editor.run | User asks to backtest immediately | — |
bottom_panel.activate_tab | After generating | "portfolio" |
bottom_panel.set_data | Push analysis data into a tab | {target, data} |
chart.draw_markers | Visualize entry/exit points on the chart | Marker[] |
notify.toast | Status updates ("Backtest complete: 42 trades") | {level, message} |
Generate
Config: Entry = SMA(20) > SMA(50), Exit = SMA(20) < SMA(50), TP = 5%,
SL = 2%, Max DD = 20%, Seed = $10,000.
→ Returns a strategy script with inline sma() helper, golden-cross entry
logic, per-trade PnL + MAE/MFE tracking, equity-curve pushes on every bar.
Loads into the editor; bottom panel switches to Portfolio.
Analyze Metrics: 42 trades, 38% win rate, 1.1 profit factor, -18% max drawdown.
→ "Marginal profitability, asymmetric losses are hurting overall returns."
Suggestions: tighten stop to 1.5%, add an ATR volatility filter, require
ADX > 25 for trend regime, etc.
Wired through core/agents/processors.py::_strategy_processor, which calls
core/agents/strategy_agent.py::StrategyAgent.generate_from_config or
.analyze_results depending on context.mode. The agent owns
STRATEGY_GENERATE_PROMPT and STRATEGY_ANALYSIS_PROMPT.
No reviews yet. Tell others what you thought.
No login needed. Share how it worked for you, ask a question, or note where it did not run.
No comments yet. Be the first to write one.
Fetch historical OHLC chart data from yfinance (stocks) or ccxt (crypto) and load it onto the chart.
The English summary is being prepared. Showing the original description.
Research historical news events that moved (or are moving) an asset's price and plot them as data points directly on the chart. Click a marker in the Historic News tab to zoom the chart to that event and read the article. Useful for identifying the fundamental drivers behind price action — earnings, regulation, product launches, macro shocks, geopolitical events.
The English summary is being prepared. Showing the original description.
One-sentence description of what this skill does. Shown as a tooltip on the chip.
The English summary is being prepared. Showing the original description.
Detects chart patterns in OHLC data from natural-language hypotheses or visual chart selections.
The English summary is being prepared. Showing the original description.
Runs a team of 50 LLM personas through a 30-round structured debate to predict market direction. Uses the Canvas Agent Swarm Service — the same shared infrastructure other skills use for smaller agent teams. Output is an influence-weighted consensus direction + trade recommendation with a transparent record of every argument, research query, and cross-examination.
The English summary is being prepared. Showing the original description.