https://github.com/victorh-silveira/aether-quantum-engine
Motor quantitativo assíncrono para a Deriv: Deep Learning (TCN PyTorch) em Range Break, dimensionamento Kelly com martingale e gates de qualidade pós-treino.
https://github.com/victorh-silveira/aether-quantum-engine
algorithmic-trading asyncio deriv fintech llm ollama python rise-fall trading-bot websocket
Last synced: 7 days ago
JSON representation
Motor quantitativo assíncrono para a Deriv: Deep Learning (TCN PyTorch) em Range Break, dimensionamento Kelly com martingale e gates de qualidade pós-treino.
- Host: GitHub
- URL: https://github.com/victorh-silveira/aether-quantum-engine
- Owner: victorh-silveira
- Created: 2026-04-17T05:32:30.000Z (2 months ago)
- Default Branch: main
- Last Pushed: 2026-06-10T03:14:54.000Z (14 days ago)
- Last Synced: 2026-06-10T05:22:56.925Z (14 days ago)
- Topics: algorithmic-trading, asyncio, deriv, fintech, llm, ollama, python, rise-fall, trading-bot, websocket
- Language: Python
- Homepage: https://github.com/victorh-silveira/aether-quantum-engine
- Size: 894 KB
- Stars: 0
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Aether Quantum Engine 2.0
[](app/.python-version)
[](.github/actions/lint/action.yml)
[](app/tests/unit)
[](app/tests/unit)
[](.pre-commit-config.yaml)
[](https://github.com/victorh-silveira/aether-quantum-engine/actions/workflows/ci.yml)
Motor quantitativo assíncrono para a Deriv: decisão por **Deep Learning (TCN PyTorch)** nos símbolos **Range Break** (`R_10`, `R_25`, `R_50`, `R_75`, `R_100`), contratos **RISE_FALL** de **1 minuto**, dimensionamento **Kelly** e recuperação **martingale** integral quando há perda pendente.
Documentação: [arquitetura](docs/arquitetura.md) | [metodologia quant](docs/medallion.md) | [estrutura do repo](docs/structure.md) | [Deriv API](docs/deriv-api.md)
Layout: `app/` (código e testes), `config/settings.json`, `docs/`, `linters/`. Ver [docs/structure.md](docs/structure.md).
---
## O que o motor faz hoje
| Etapa | Componente | Descrição |
|-------|------------|-----------|
| Dados | `StreamHandler` | WebSocket Deriv, histórico OHLC, buffer configurável |
| Decisão | `decision_bridge` + TCN | Treino walk-forward online, calibração, gating e seleção competitiva entre símbolos do par de hedge |
| Execução | `ExecutionManager` | Ordens RISE_FALL, uma ordem por ciclo, logs `EXEC` / `EXEC_SEL` |
| Risco | `RiskManager` | Kelly fracionário, stop win diário, martingale em recovery |
| Estado | `PersistenceManager` | `data/state.json`, checkpoints `data/dl/{symbol}.pth` |
Ciclo do orquestrador: `orchestrator.cycle_interval_seconds` (padrão 300 s). Granularidade OHLC: `data_handler.granularity` (padrão 60 s).
---
## Configuração principal
Arquivo: [`config/settings.json`](config/settings.json)
| Bloco | Função |
|-------|--------|
| `symbols` / `anchor` | Universo (`R_10` … `R_100`; âncora `R_50`) |
| `data_handler` | `granularity`, `history_bars`, `fetch_count`, `buffer_limit` |
| `deep_learning` | TCN, `lookback`, `training_history_bars`, gating, `deploy_gate`, `recovery_gating` |
| `orchestrator.execution` | `mandatory_trade_each_cycle`, `diversify_after_loss_margin`, settlement |
| `risk_management` | Kelly, martingale, stop win, stakes |
| `trading` | `demo` / `live` |
Variáveis na raiz (`.env`): `AETHER_DERIV_PAT`, `AETHER_DERIV_APP_ID`, `AETHER_DERIV_ACCOUNT_ID` (opcional). Validação: `python app/scripts/deriv_pat_connect.py`.
---
## Gerenciamento de risco
- **Kelly fracionário** com win rate dinâmico e tetos `max_stake_pct`.
- **Stop win diário** por percentual da banca inicial (conta grande) ou valor fixo (conta pequena).
- **Martingale de recovery** quando há perda pendente: stake cobre perda integral + alvo derivado do payout, limitada por banca e `stake_max`.
- Cooldown por símbolo após sequência de losses (`symbol_loss_cooldown_candles`).
---
## Recovery e execução
- Em recovery, a seleção **prioriza hedge no par** (símbolo oposto ao da última loss).
- `mandatory_trade_each_cycle: true` — o motor envia ordem a cada ciclo elegível, mesmo com gating DL fraco (stake reduzida via `mandatory_weak_*`).
- Direção de execução segue o sinal DL (`CALL`/`PUT` previsto pelo modelo).
---
## Observabilidade
Logs em `logs/engine.log` (formato `AetherFormatter`):
- `CFG decisao` — modo DL, lookback, histórico de treino, execução obrigatória
- `DL` / `DL_TRAIN` — treino, deploy, bloqueios
- `EXEC`, `EXEC_SEL`, `EXEC_NONE` — decisão e stake por ciclo
- `MARTINGALE`, `RISK` — sizing e recovery
- Liquidação e resumo de cluster após settlement
Monitor opcional: `python app/scripts/monitor/live_monitor.py`
---
## Stack e qualidade
- **Python 3.13.12**, `asyncio`, NumPy, Polars, PyTorch (TCN)
- **Deriv** PAT + REST OTP + WebSocket (`api_config` em settings; ver `docs/deriv-api.md`)
- **CI / pre-commit**: Ruff, Interrogate, Vulture, limite 300 linhas/arquivo, pytest com **100%** de cobertura em `app/src`
Requisito local: ambiente Conda **`deriv-api`** (Python 3.13.12). Configuração em [`config/python.json`](config/python.json).
Windows: abra **Anaconda PowerShell Prompt**, `conda activate deriv-api`:
```powershell
conda activate deriv-api
pip install -r app/requirements.txt -r app/requirements-dev.txt
python app/scripts/deriv_pat_connect.py
python run.py
```
WSL:
```bash
cd /mnt/c/Users//Desktop/aether-quantum-engine
make setup-wsl
source ~/.bashrc
make install
make test
make lint
```
Pre-commit (na raiz do repo):
```powershell
conda activate deriv-api
python -m pre_commit run --all-files
```
WSL: `make pre-commit-run`
---
## Execução ao vivo
1. Configure `.env` com PAT e App ID (app PAT em developers.deriv.com).
2. `conda activate deriv-api` e instale dependências.
3. Valide checkpoints DL em `app/data/dl/`.
4. `make run` ou `launch-all-demo.bat` / `launch-all-live.bat`
O motor exige `deep_learning.enabled: true`. Não há modo de decisão por LLM no pipeline ao vivo.
---
## Referências
- [docs/arquitetura.md](docs/arquitetura.md) — fluxos técnicos
- [docs/medallion.md](docs/medallion.md) — filosofia quant e parâmetros de qualidade
- [docs/deriv-api.md](docs/deriv-api.md) — API Deriv
- [docs/CHANGELOG.md](docs/CHANGELOG.md) — histórico de releases