Skip to main content

Plugin mtcli do Volume At Price

Project description

mtcli-vap

Plugin Volume At Price (VAP) para o mtcli, inspirado no Volume At Price do Profit (Nelógica), com foco em leitura de volume por preço, acessibilidade e uso em terminal.

O mtcli-vap apresenta o VAP de forma textual, ordenável e scriptável, ideal para traders que trabalham com price action, fluxo de ordens e volume, sem dependência de gráficos.


##Características

  • Volume At Price por preço
  • Distribuição de volume ao longo do range do candle
  • Ordenação por volume ou por preço
  • Percentual do volume total por nível
  • Totalmente acessível (compatível com NVDA, JAWS, leitores de tela)
  • Arquitetura MVC (Model / View / Controller)
  • Fácil de testar e evoluir
  • Saída em texto puro, ideal para CLI, logs e pipes

🎯 Objetivo do projeto

Este plugin busca reproduzir conceitualmente o comportamento do Volume At Price do Profit, respeitando as limitações do MetaTrader 5 (uso de candles em vez de Times & Trades), mas aplicando técnicas que reduzem vieses comuns, como:

  • Concentrar todo o volume no preço de fechamento
  • Distribuir o volume entre todos os níveis do candle

O resultado é um mapa de volume por preço muito mais fiel, utilizável em leitura de fluxo e contextos de day trade.


Instalação

Este plugin faz parte do ecossistema mtcli.

pip install mtcli-vap

Clone o repositório e instale em modo desenvolvimento:

git clone https://github.com/seu-usuario/mtcli-vap.git
cd mtcli-vap
pip install -e .

É necessário ter o MetaTrader 5 instalado e configurado no sistema.


Uso básico

mtcli vap --symbol WDOF26

Saída (exemplo):

--------------------------------------------
Volume At Price (VAP)
--------------------------------------------
   Preço |       Volume | %
--------------------------------------------
102.450 |     12.340 | 18.2
102.500 |      9.810 | 14.5
102.400 |      7.220 | 10.7

Opções disponíveis

Símbolo

--symbol, -s

Símbolo do ativo no MetaTrader 5.

Exemplo:

mtcli vap --symbol WINZ25

Timeframe

--period, -p

Timeframe usado para construir o VAP.

Valores aceitos:

M1, M5, M15, M30, H1, H4, D1

Número de candles

--limit, -l

Quantidade de candles analisados.

Exemplo:

mtcli vap --symbol WDOF26 --limit 300

Ordenação

--sort volume|price
  • volume (padrão): mostra primeiro os preços mais relevantes
  • price: mostra o VAP como um mapa contínuo de preços

Exemplos:

mtcli vap --symbol WDOF26 --sort volume
mtcli vap --symbol WDOF26 --sort price

Como o VAP é calculado

  1. Os candles são obtidos via MetaTrader 5
  2. O volume de cada candle é extraído (real_volume ou tick_volume)
  3. O range [low, high] do candle é dividido respeitando o tick size
  4. O volume é distribuído igualmente entre todos os níveis de preço
  5. Os volumes são agregados por preço

Essa abordagem aproxima o cálculo do VAP real baseado em negócios, utilizado no Profit.


Estrutura do projeto (MVC)

mtcli_vap/
├── cli.py          # Interface de linha de comando (Click)
├── controller.py   # Orquestra Model → View
├── model.py        # Cálculo do VAP
├── view.py         # Renderização textual acessível
├── conf.py         # Configurações (DIGITOS, TICK_SIZE)

Acessibilidade

Este plugin foi projetado para:

  • Uso sem gráficos
  • Saída textual clara
  • Compatibilidade com leitores de tela
  • Leitura sequencial e previsível

Isso o torna adequado para:

  • Ambientes headless
  • Traders com deficiência visual
  • Automação e scripts

Roadmap (planejado)

  • Destaque do POC (Point of Control)
  • Cálculo de VAH / VAL (Value Area)
  • Filtro --top N
  • Delta por preço (quando houver fonte de dados)
  • Integração com Market Profile textual

⚠️ Limitações conhecidas

  • O MetaTrader 5 não fornece Times & Trades completos
  • O VAP é uma aproximação baseada em candles
  • Não há agressão real de compra/venda (por enquanto)

Mesmo assim, a distribuição por range reduz significativamente os vieses tradicionais.


Contribuições

Contribuições são bem-vindas.

Sugestões comuns:

  • Otimização de performance
  • Novos formatos de saída
  • Métricas de fluxo
  • Integração com outras fontes de dados

Abra uma issue ou envie um pull request.


Licença

MIT License.


Inspiração

  • Volume At Price — Profit / Nelógica
  • Market Profile
  • Tape Reading
  • Price Action baseado em volume

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

mtcli_vap-1.2.1.tar.gz (8.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

mtcli_vap-1.2.1-py3-none-any.whl (10.1 kB view details)

Uploaded Python 3

File details

Details for the file mtcli_vap-1.2.1.tar.gz.

File metadata

  • Download URL: mtcli_vap-1.2.1.tar.gz
  • Upload date:
  • Size: 8.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/2.2.1 CPython/3.13.12 Windows/11

File hashes

Hashes for mtcli_vap-1.2.1.tar.gz
Algorithm Hash digest
SHA256 584ce868d9da287203c9cf53cd897f6e4bbaf4c7d20430d1f0eda83221ab1064
MD5 d37db0ce91509432bd058aadd0de4b21
BLAKE2b-256 5e65d5aecf47183ece08952d8387361de5e21fb81d1ef9775e20a34354450e6a

See more details on using hashes here.

File details

Details for the file mtcli_vap-1.2.1-py3-none-any.whl.

File metadata

  • Download URL: mtcli_vap-1.2.1-py3-none-any.whl
  • Upload date:
  • Size: 10.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/2.2.1 CPython/3.13.12 Windows/11

File hashes

Hashes for mtcli_vap-1.2.1-py3-none-any.whl
Algorithm Hash digest
SHA256 66d85ba930694257b0dbd69a8c0d985157ba64af026a3a977da3ee2899f55765
MD5 2aa4864dc8ff8df4fc9d6c216d0c34fb
BLAKE2b-256 122ab9d7dc2777f430508b60c229d188fea0d34b216e48df52f3ec80ccd23ef4

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page