Guia de onboarding#
1. Preparar entorno#
git clone https://github.com/<owner>/SignalDashPro.git
cd SignalDashPro
py -3.13 -m venv .venv
.venv\Scripts\activate # PowerShell
pip install -r backend/requirements.txt
Instala PostgreSQL 15 (signaldashpro en localhost:5433, usuario postgres, password configurada por ti).
Para el futuro frontend web, instala Node.js LTS (Next.js) segun el plan maestro.
2. Variables de entorno (ejemplo .env)#
DATABASE_URL=postgresql+psycopg2://postgres:POSTGRES_PASSWORD@localhost:5433/signaldashpro
AUTH_ENABLED=true
AUTH_JWT_SECRET=CHANGE_ME
AUTH_BOOTSTRAP_EMAIL=admin@example.com
AUTH_BOOTSTRAP_PASSWORD=CHANGE_ME
BINANCE_API_KEY=CHANGE_ME
BINANCE_API_SECRET=CHANGE_ME
BINANCE_BASE_URL=https://api.binance.com # spot live
# Spot demo mode (Demo Trading UI): BINANCE_BASE_URL=https://demo-api.binance.com
# Nota: Binance docs suelen mostrar `.../api` al final; en este proyecto se puede omitir.
# Crear API Demo en: https://demo.binance.com/en/my/settings/api-management
# Referencia Spot Demo: https://developers.binance.com/docs/binance-spot-api-docs/demo-mode/general-info
NEWSAPI_KEY=todo
PRIXE_API_KEY=todo
MACRO_PROVIDER=tradingeconomics
TRADINGECONOMICS_API_KEY=todo
FMP_API_KEY=todo
OPENAI_API_KEY=todo
MARKET_SYNC_AUTO_RUN=true
MARKET_SYNC_INTERVAL_MINUTES=15
MARKET_SYNC_SYMBOLS=BTCUSDT,ETHUSDT
Carga el archivo con set -a && source .env (Linux/macOS) o . .\setenv.ps1 en Windows.
Buenas practicas de llaves API:
- Registrar en docs solo endpoint, fecha, entorno y nombre de key (ej. SDP1).
- No registrar API keys ni secret keys en markdown/versionado.
- Guardar secretos exclusivamente en archivos de entorno no versionados.
Verificacion rapida recomendada (Binance Demo):
chmod +x scripts/check_binance_demo_auth.sh
scripts/check_binance_demo_auth.sh \
--base-url=https://sdp.perlatec.net/api/proxy \
--email=admin@sdp.perlatec.net \
--password='***'
Debe terminar con SMOKE_OK.
3. Correr servicios#
Backend:
cd backend
uvicorn backend.main:app --reload --port 8096
Frontend web (Next.js/React, plan maestro):
- El frontend oficial se migrara a Next.js + React + TradingView en
frontend/. - Una vez inicializado el proyecto, el flujo esperado sera:
cd frontend
npm install
npm run dev
4. Jobs locales#
Ejecuta manualmente para validar:
python scripts/import_market_news.py --symbols EURUSD XAUUSD --brainstorm
python scripts/run_data_pipeline.py --symbols EURUSD XAUUSD
python scripts/notify_external_alerts.py --backend-url http://127.0.0.1:8096 --dry-run
5. Herramientas recomendadas#
- IDE: VS Code + extensiones Python, REST Client y soporte para TypeScript/React.
- Linters:
ruff(Python) y ESLint/Prettier para el frontend. - DB: DBeaver o psql para inspeccionar PostgreSQL.
Completar la seccion
Preguntas abiertasendocs/README.mddurante el onboarding para evitar incertidumbres operativas.