Skip to content

Getting started

Introduction

Status: confirmed requirements + recommended scope under discussion.

Implementation update: see the ROADMAP, ADR-0011, ADR-0012 and ADR-0013 for the effective state. The text below preserves the original requirements/designs, not a statement that all infrastructure or external validation details have already occurred.

Status: confirmed requirements + recommended scope under discussion.

Objective#

Build vukem-trading as an algorithmic trading platform: research strategies, simulate their results, monitor the market and execute rules with risk controls. Profitability is not a guaranteeable requirement. The conversation provided is context and a catalog of possibilities; its examples do not confirm market, broker, risk values, budget or commercial purpose.

Confirmed requirements#

IDRequirementSpecification
RF-01/ is the main authenticated dashboardSDD-01
RF-02Visitor without a session is redirected to /loginSDD-01
RF-03/login offers only the Google login buttonSDD-01
RF-04Default dashboard with shadcn/ui sidebarSDD-01
RF-05Keep Go/Vukem, React/Inertia, Tailwind and PostgreSQLADR-0001
RF-06Deploy on RailwaySDD-05, ADR-0005
RF-07Planning, SDDs and ADRs versioned in docs/This set
RF-08Refine decisions through grillinggrilling.md

Google authenticates the person in vukem-trading; it does not grant access to the broker account. The automatic redirect is from the protected dashboard to /login; the browser only goes to Google when the person clicks the button.

Decisions confirmed in round 1#

IDDecisionOrigin
RF-09Personal terminal in the MVPAnswer Q1
RF-10Cover Brazil/B3 and USAnswer Q2
RF-11MVP with backtesting and paper trading; no real capitalAnswer Q3
RF-12Alpaca Paper as the first US integrationAnswer Q4
RF-13B3 starts with the internal simulatorAnswer Q5
RF-14Only one authorized Google accountAnswer Q6

Both markets are part of the scope; an incremental delivery per market does not remove B3 from the MVP. Alpaca Paper and the internal B3 simulation are defined; datasets, budget and the temporal mode of the B3 simulation remain under refinement. Each market will have its own calendar, currency, precision and adapter. Accounts and reports remain segregated by BRL and USD until a currency consolidation policy exists. Personal use does not mean open sign-up.

Proposed functional scope#

IDCapabilitySummary acceptance
RP-01Market series with provenanceSymbol, feed, time, delay and gaps visible
RP-02Versioned strategiesValidated parameters, immutable version, audited activation
RP-03Central risk engineEvery order validated, including future manual orders
RP-04Reproducible backtestingDataset, code, configuration and costs identified
RP-05Paper tradingExecution independent of the browser and reconciliation
RP-06Orders, fills and positionsPersistent history and ambiguous states made explicit
RP-07EmergencyBlocks new exposures and allows monitoring of cancellations
RP-08Operational dashboardP&L, exposure, drawdown, orders and service health
RP-09AuditWho changed what, version, time and correlation

Brazil and US confirmed, simulation accounts segregated by market; candles instead of HFT/full book, three strategies (moving averages, reversion and breakout), fictitious capital, no leverage or short selling initially. Concrete limits will be chosen later, after the market and instrument. Research in Python may be added when a demonstrated need exists; it does not require a second runtime in the first deploy.

SaaS, paid signals, derivatives, statistical arbitrage, ML, real execution and tax calculation are outside the confirmed MVP. Multiple integrations are planned for Brazil and the US, with Alpaca Paper confirmed and the external B3 broker postponed until API validation. They may return in a future phase upon a product decision.

Quality and limits#

Money and quantities do not use binary floating point in accounting. Every mutation requires authorization on the server. Stale data does not generate new exposures. Without persistent state or reliable reconciliation, the engine does not resume operations. Closing the browser or ending the session does not interrupt the worker.

Measurable targets for latency, availability, retention and capacity will be adjusted in the operation round. Do not promise exchange-grade low latency on general application infrastructure. Data distribution, broker eligibility, taxation and requirements to offer the service to third parties need their own analysis after the audience and market answers; this document does not reach a legal conclusion.