with one click
auto-trading
auto-trading contains 15 collected skills from bogdanripa, with repository-level occupation coverage and site-owned skill detail pages.
Skills in this repository
Replay trade-journal records from bt-gateway's Firestore into the graphiti graph memory. Use this once at initial setup to seed graphiti with historical trades, and ad-hoc whenever a multi-day graphiti outage caused real-time ingests to be lost. Trigger when the user says "backfill graphiti", "seed the graph", "replay missed ingestions", or after standing up a new graphiti instance.
For every skipped setup whose invalidation window has elapsed, fetch the price now and attach a Counterfactual edge in graphiti recording what the stock did since the skip. This is the feedback signal for "we decided not to act — was that right?" Run this skill daily, typically as part of the evening routine after trade-journal but before retrospective. Trigger when the user asks "what did we miss?", "show counterfactuals", or wants to evaluate the engine's non-action decisions.
Weekly pattern-mining pass over the trade journal. Reads the journal via bt-gateway (`store.listJournal()`), clusters closed trades by trade_type, sector, exit_reason, and thesis_verdict, identifies patterns that repeat (both successes and failures), and appends distilled observations to `LESSONS.md`. Run this skill once a week, typically Friday evening after the post-close run, or on-demand when the user asks for a performance review, a post-mortem on a losing streak, or wants to revisit what the strategy has learned. Also trigger before making larger-than-usual strategy changes — the lessons are the empirical grounding for any rule adjustments.
Build the engine's working memory at the start of every routine run. Fetches current positions from bt-gateway and per-position theses + recent exits from the Firestore trade journal (both source-of-truth); reads active priors and themes from LESSONS.md / THEMES.md; best-effort pulls prior news and open skipped-setups from graphiti (degraded — graphiti is enrichment only, never load-bearing). Emits a structured brief that every downstream skill reads before acting. Trigger this skill as Step 1 of the morning run and Step 1 of the evening run, immediately after the gateway preflight (Step 0) and before any analyst, scanner, or decision-making skill. Also trigger when the user asks "what does the engine know right now?", "what's our current context?", or wants to inspect the engine's working memory before a manual decision.
Record the full story behind every trade — entry thesis, market context at entry, exit reason, and outcome — to build a corpus the strategy can learn from. Trigger this skill in two places. First, at ENTRY: whenever trade-executor fills a new position, immediately append an entry record with the thesis and context. Second, at EXIT: whenever portfolio-manager detects a position has been closed (sold, stopped out, or taken profit), append an exit record that closes the loop with outcome and lessons. This skill is the raw material the retrospective skill consumes weekly. Also trigger when the user asks to review past trades, search the journal, or understand why a particular trade was entered or exited.
Mirror the Telegram briefing to X (Twitter) as a thread. Adds a hashtag preamble —
Format and send trading briefings via Telegram. Use this skill at the end of every morning and evening trading run to deliver the daily analysis, decisions, and portfolio status to the user. It compiles outputs from all other skills into a clear, actionable Telegram message. Also use for urgent alerts (stop-loss hits, override notifications, gateway errors). Trigger at the end of every daily run, or when an urgent alert needs to be sent.
Monitor BVB company announcements, Romanian financial press, and corporate actions for anything that could move BET-Plus names. Runs on both morning and evening routines. Uses a mix of structured sources (per-symbol BVB announcement pages) and real-time web search for third-party coverage. Trigger whenever the pipeline needs current BVB news, when evaluating a specific stock, or when the user asks what's happening on the Romanian market.
Technical scan of the BET-Plus universe — computes RSI, moving averages, volume ratios, breakout levels, and trend direction from real price data, then ranks setups for entries and exits. Run this every morning after macro-analyst and bvb-news so the synthesis step has a concrete list of candidates. Uses Yahoo Finance OHLCV as the primary data source. Trigger whenever a technical scan is needed, or when evaluating a specific name's setup quality.
Execute trades AND answer any question about the brokerage account itself — current cash balance, positions, open orders, recent fills. Talks to BT Trade (demo or live) via the bt-gateway REST API. Trigger whenever the synthesis step decides to place, modify, or cancel an order, whenever current positions and fills need to be reconciled with market reality, OR whenever the user asks anything about their trading account (e.g. "how much cash do I have", "what do I own", "what orders are open", "show me my portfolio").
Establish the macro context for today's BVB trading decisions — FX (especially EUR/RON), rates (RO 10Y, CDS), global indices (DAX / Stoxx Banks as the primary transmission), commodities (Brent, TTF), central bank actions (BNR, Fed, ECB), and political/fiscal catalysts. Populates a structured market snapshot that drives the encoded rulebook. First step of every morning routine. Trigger at the start of every morning run, or when the user asks about macro conditions affecting Romanian equities.
Fundamental deep dive on a specific BVB-listed company using concrete sources — BVB issuer page for official filings and dividend history, Yahoo Finance for valuation metrics, stockanalysis.com for financial statements, and WebSearch for analyst coverage, earnings commentary, and catalyst context. Trigger when market-scanner flags a stock as A or B setup (validate fundamentals before entry), when material news breaks on a holding (reassess), when a known catalyst is approaching (prepare thesis), or on routine 2-week holding reviews.
Monitor portfolio risk in real-time — check stop-losses, exposure limits, correlation risk, and override conditions. Use this skill in both morning and evening daily runs to ensure the portfolio stays within defined risk parameters. It catches positions that need attention, flags concentration risk, and evaluates whether any mechanical stop-loss overrides are justified. Trigger whenever risk assessment is needed before or after trading decisions.
Track and manage the trading portfolio — positions, cash, P&L, allocation, and performance metrics. Use this skill in every daily trading run to understand current portfolio state before making decisions. It reads portfolio data via `trade-executor` (BT Trade demo or live, via bt-gateway), calculates performance, checks allocation limits, and determines available capital for new trades. Trigger whenever you need to know the current portfolio state, check if a trade fits within risk limits, or review historical performance.
Log every trade for Romanian tax reporting (Declarația Unică). Use this skill in the evening run whenever trades were executed during the day. It maintains a complete trade log with all data needed for the annual tax filing — purchase date, sale date, quantities, prices in RON, commissions, and computed gains/losses. At year-end, it generates a summary ready for the DU. Trigger after any trade execution, or when the user asks about tax obligations or wants to generate tax reports.