Descrição do Projeto:
Alpha Hub — Especificação para desenvolvedor (SaaS)
Documento de referência para desenvolvimento do web app Alpha Hub — plataforma SaaS de gestão, análise e dashboards de trades baseada na planilha existente do usuário. Objetivo: permitir que traders registrem operações, acompanhem métricas de performance detalhadas e assinem planos mensais.
1. Visão geral do produto
Alpha Hub é um SaaS de análise e gestão de performance de trading inspirado em TradersCasa Pro, TradeCurve.io e TradeZella. Usuários (traders) poderão importar/registrar trades, visualizar dashboards ricos com métricas (equity curve, P&L diário/mensal, drawdown, expectancy, winrate, risco x retorno, etc.), analisar por ativo/estratégia/killzone e assinar planos pagos. O backend deve processar cálculos financeiros de forma escalável e servir dados prontos para exibição em dashboards responsivos.
Público-alvo: traders individuais, coaches e small prop-desks que querem controlar performance e evolução.
2. Objetivos do MVP
Priorizar um MVP com as seguintes funcionalidades essenciais:
• Autenticação e gestão de conta (trial + subscrição paga).
• Importação de trades (CSV / Google Sheets / upload da planilha existente) e criação manual de trades.
• Dashboard principal com resumo (topbar) e gráficos principais (equity curve, lucros por período).
• Tabela de trades com filtros, tags e edição rápida.
• Cálculos automáticos de métricas por conta, por ativo e por estratégia.
• Pagamento recorrente (Stripe) com planos e gestão de assinaturas.
• Painel admin básico para gerir assinaturas, ver métricas de uso e suporte.
3. Tech stack recomendado
Frontend: Next.js 14 (App Router), TypeScript, Tailwind CSS. UI/Component library opcional: shadcn/ui ou similar.
Backend / API: Next.js API routes ou tRPC (recomendado para tipagem end-to-end). Node.js + TypeScript.
DB & ORM: PostgreSQL (hosted: Supabase / Neon / AWS RDS) + Prisma ORM.
Autenticação: NextAuth (suportando email/password e passwordless/magic link). Suportar OAuth (Google) opcional.
Jobs / Cache: Redis para cache e fila (BullMQ ou similar) — para cálculos agendados, reprocessamentos e tarefas pesadas.
Armazenamento: S3-compatible (Supabase Storage / AWS S3) para arquivos/backup de imports.
Pagamentos: Stripe (checkout, billing, webhooks, invoices).
Email/Notificações: SendGrid / Mailgun para onboarding, receipts e alertas.
Monitoring / Logging: Sentry, Logflare / Datadog.
CI/CD / Deploy: GitHub Actions -> Vercel (frontend) + provider para backend e banco; alternativa: monorepo em Vercel/Render.
Charts: Recharts / ApexCharts / Chart.js (preferir Recharts para integração React + TypeScript). Para heatmaps/complex charts, considerar D3 ou Plotly.
4. Fluxo de onboarding e importação de dados
Usuário cria conta (email + senha / magic link).
Trial (7-14 dias) ativado.
Onboarding guiado: conectar conta (opcional), importar CSV / colar link do Google Sheets / upload da planilha original.
O sistema valida e mapeia colunas (data, ativo, tipo, preço, tamanho, fee, tag, estratégia, nota). Permitir salvar mapeamentos.
Ao importar, enfileirar job para calcular todas as métricas e gerar caches/visualizações.
Importação suportada (MVP): CSV (template), Google Sheets (API read-only via link/service account opcional), import manual.
5. Métricas e dashboards (lista e fórmulas/descrições)
Topbar (resumo rápido — sempre visível no topo da dashboard)
• Patrimônio total (equity atual).
• P/L total (valor absoluto e %).
• P/L mensal (últimos 30 dias / mês atual).
• P/N (se o usuário usar: explicar se for "Patrimônio / Número de trades" — usar nomenclatura definida).
• Win Rate (porcentagem).
• Expectancy (média de retorno por trade).
• Risco médio por trade e Avg R:R.
• Max Drawdown (valor e %).
Gráficos principais (central)
• Curva de equity (tempo vs patrimônio) — com hover e seleção de intervalo (1D, 7D, 1M, 3M, 6M, 1Y, All).
• P/L por período (barras mensais/diárias).
• Distribuição de ganhos/perdas (histograma).
• Heatmap de killzones / horários (se aplicável).
• Gráfico de retorno acumulado e drawdown cumulativo.
Painel de métricas detalhadas
• Total de trades (long/short).
• Lucro médio por trade.
• Loss médio.
• Expectancy = (win% * avgWin) - (loss% * avgLoss).
• Avg R:R.
• Profit factor = grossProfit / grossLoss.
• Sharpe Ratio (retorno médio / desvio padrão).
• Sortino Ratio.
• Consecutivos: wins consecutivos / losses consecutivos (max).
• Max adverse excursion / max favorable excursion (se tracked).
Análises por dimensões
• Por ativo (ex: NASDAQ, EURUSD, BTCUSD, XAUUSD, AUDUSD) — métricas e timers.
• Por estratégia / tag.
• Por período de killzone (ex: pré-mercado, abertura, hora específica).
Tabela de trades
Colunas: data/hora, ativo, direção, preço entrada/saída, tamanho/contratos, P/L (R$), R:R, fees, estratégia/tag, notas, screenshot (opcional).
Filtros: período, ativo, resultado (gain/stop), strategy, tags, killzone, conta.
Ações rápidas: editar trade, dividir, mesclar, duplicar, exportar.
Export & Reports
Ex.