mtcli 3.3.0.dev0__tar.gz → 3.4.0.dev0__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (63) hide show
  1. {mtcli-3.3.0.dev0 → mtcli-3.4.0.dev0}/PKG-INFO +1 -1
  2. mtcli-3.4.0.dev0/mtcli/mt5_context.py +36 -0
  3. {mtcli-3.3.0.dev0 → mtcli-3.4.0.dev0}/pyproject.toml +1 -1
  4. mtcli-3.3.0.dev0/mtcli/mt5_context.py +0 -34
  5. {mtcli-3.3.0.dev0 → mtcli-3.4.0.dev0}/LICENSE +0 -0
  6. {mtcli-3.3.0.dev0 → mtcli-3.4.0.dev0}/README.md +0 -0
  7. {mtcli-3.3.0.dev0 → mtcli-3.4.0.dev0}/mtcli/__init__.py +0 -0
  8. {mtcli-3.3.0.dev0 → mtcli-3.4.0.dev0}/mtcli/commands/__init__.py +0 -0
  9. {mtcli-3.3.0.dev0 → mtcli-3.4.0.dev0}/mtcli/commands/bars.py +0 -0
  10. {mtcli-3.3.0.dev0 → mtcli-3.4.0.dev0}/mtcli/commands/conf.py +0 -0
  11. {mtcli-3.3.0.dev0 → mtcli-3.4.0.dev0}/mtcli/commands/logs.py +0 -0
  12. {mtcli-3.3.0.dev0 → mtcli-3.4.0.dev0}/mtcli/conecta.py +0 -0
  13. {mtcli-3.3.0.dev0 → mtcli-3.4.0.dev0}/mtcli/conf.py +0 -0
  14. {mtcli-3.3.0.dev0 → mtcli-3.4.0.dev0}/mtcli/data/__init__.py +0 -0
  15. {mtcli-3.3.0.dev0 → mtcli-3.4.0.dev0}/mtcli/data/base.py +0 -0
  16. {mtcli-3.3.0.dev0 → mtcli-3.4.0.dev0}/mtcli/data/csv.py +0 -0
  17. {mtcli-3.3.0.dev0 → mtcli-3.4.0.dev0}/mtcli/data/mt5.py +0 -0
  18. {mtcli-3.3.0.dev0 → mtcli-3.4.0.dev0}/mtcli/logger.py +0 -0
  19. {mtcli-3.3.0.dev0 → mtcli-3.4.0.dev0}/mtcli/models/__init__.py +0 -0
  20. {mtcli-3.3.0.dev0 → mtcli-3.4.0.dev0}/mtcli/models/bar_model.py +0 -0
  21. {mtcli-3.3.0.dev0 → mtcli-3.4.0.dev0}/mtcli/models/bars_model.py +0 -0
  22. {mtcli-3.3.0.dev0 → mtcli-3.4.0.dev0}/mtcli/models/chart_model.py +0 -0
  23. {mtcli-3.3.0.dev0 → mtcli-3.4.0.dev0}/mtcli/models/conf_model.py +0 -0
  24. {mtcli-3.3.0.dev0 → mtcli-3.4.0.dev0}/mtcli/models/consecutive_bars_model.py +0 -0
  25. {mtcli-3.3.0.dev0 → mtcli-3.4.0.dev0}/mtcli/models/rates_model.py +0 -0
  26. {mtcli-3.3.0.dev0 → mtcli-3.4.0.dev0}/mtcli/models/signals_model.py +0 -0
  27. {mtcli-3.3.0.dev0 → mtcli-3.4.0.dev0}/mtcli/models/unconsecutive_bar_model.py +0 -0
  28. {mtcli-3.3.0.dev0 → mtcli-3.4.0.dev0}/mtcli/mt.py +0 -0
  29. {mtcli-3.3.0.dev0 → mtcli-3.4.0.dev0}/mtcli/plugin.py +0 -0
  30. {mtcli-3.3.0.dev0 → mtcli-3.4.0.dev0}/mtcli/plugins/__init__.py +0 -0
  31. {mtcli-3.3.0.dev0 → mtcli-3.4.0.dev0}/mtcli/plugins/media_movel/__init__.py +0 -0
  32. {mtcli-3.3.0.dev0 → mtcli-3.4.0.dev0}/mtcli/plugins/media_movel/command.py +0 -0
  33. {mtcli-3.3.0.dev0 → mtcli-3.4.0.dev0}/mtcli/plugins/media_movel/conf.py +0 -0
  34. {mtcli-3.3.0.dev0 → mtcli-3.4.0.dev0}/mtcli/plugins/media_movel/models/__init__.py +0 -0
  35. {mtcli-3.3.0.dev0 → mtcli-3.4.0.dev0}/mtcli/plugins/media_movel/models/model_media_movel.py +0 -0
  36. {mtcli-3.3.0.dev0 → mtcli-3.4.0.dev0}/mtcli/plugins/media_movel/tests/__init__.py +0 -0
  37. {mtcli-3.3.0.dev0 → mtcli-3.4.0.dev0}/mtcli/plugins/media_movel/tests/test_mm.py +0 -0
  38. {mtcli-3.3.0.dev0 → mtcli-3.4.0.dev0}/mtcli/plugins/media_movel/tests/test_model_media_movel.py +0 -0
  39. {mtcli-3.3.0.dev0 → mtcli-3.4.0.dev0}/mtcli/plugins/range_medio/__init__.py +0 -0
  40. {mtcli-3.3.0.dev0 → mtcli-3.4.0.dev0}/mtcli/plugins/range_medio/command.py +0 -0
  41. {mtcli-3.3.0.dev0 → mtcli-3.4.0.dev0}/mtcli/plugins/range_medio/conf.py +0 -0
  42. {mtcli-3.3.0.dev0 → mtcli-3.4.0.dev0}/mtcli/plugins/range_medio/models/__init__.py +0 -0
  43. {mtcli-3.3.0.dev0 → mtcli-3.4.0.dev0}/mtcli/plugins/range_medio/models/average_range_model.py +0 -0
  44. {mtcli-3.3.0.dev0 → mtcli-3.4.0.dev0}/mtcli/plugins/range_medio/tests/__init__.py +0 -0
  45. {mtcli-3.3.0.dev0 → mtcli-3.4.0.dev0}/mtcli/plugins/range_medio/tests/test_rm.py +0 -0
  46. {mtcli-3.3.0.dev0 → mtcli-3.4.0.dev0}/mtcli/plugins/volume_medio/__init__.py +0 -0
  47. {mtcli-3.3.0.dev0 → mtcli-3.4.0.dev0}/mtcli/plugins/volume_medio/command.py +0 -0
  48. {mtcli-3.3.0.dev0 → mtcli-3.4.0.dev0}/mtcli/plugins/volume_medio/conf.py +0 -0
  49. {mtcli-3.3.0.dev0 → mtcli-3.4.0.dev0}/mtcli/plugins/volume_medio/models/__init__.py +0 -0
  50. {mtcli-3.3.0.dev0 → mtcli-3.4.0.dev0}/mtcli/plugins/volume_medio/models/model_average_volume.py +0 -0
  51. {mtcli-3.3.0.dev0 → mtcli-3.4.0.dev0}/mtcli/plugins/volume_medio/tests/__init__.py +0 -0
  52. {mtcli-3.3.0.dev0 → mtcli-3.4.0.dev0}/mtcli/plugins/volume_medio/tests/test_vm.py +0 -0
  53. {mtcli-3.3.0.dev0 → mtcli-3.4.0.dev0}/mtcli/views/__init__.py +0 -0
  54. {mtcli-3.3.0.dev0 → mtcli-3.4.0.dev0}/mtcli/views/close_view.py +0 -0
  55. {mtcli-3.3.0.dev0 → mtcli-3.4.0.dev0}/mtcli/views/full_view.py +0 -0
  56. {mtcli-3.3.0.dev0 → mtcli-3.4.0.dev0}/mtcli/views/high_view.py +0 -0
  57. {mtcli-3.3.0.dev0 → mtcli-3.4.0.dev0}/mtcli/views/low_view.py +0 -0
  58. {mtcli-3.3.0.dev0 → mtcli-3.4.0.dev0}/mtcli/views/min_view.py +0 -0
  59. {mtcli-3.3.0.dev0 → mtcli-3.4.0.dev0}/mtcli/views/open_view.py +0 -0
  60. {mtcli-3.3.0.dev0 → mtcli-3.4.0.dev0}/mtcli/views/ranges_view.py +0 -0
  61. {mtcli-3.3.0.dev0 → mtcli-3.4.0.dev0}/mtcli/views/rates_view.py +0 -0
  62. {mtcli-3.3.0.dev0 → mtcli-3.4.0.dev0}/mtcli/views/vars_view.py +0 -0
  63. {mtcli-3.3.0.dev0 → mtcli-3.4.0.dev0}/mtcli/views/volumes_view.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: mtcli
3
- Version: 3.3.0.dev0
3
+ Version: 3.4.0.dev0
4
4
  Summary: Aplicativo CLI para exibir gráficos do MetaTrader 5 em texto acessível ao leitor de telas
5
5
  License: GPL-3.0
6
6
  Keywords: MetaTrader 5,trading,CLI
@@ -0,0 +1,36 @@
1
+ """
2
+ Gerencia o ciclo de conexão com o MetaTrader 5.
3
+ Fornece o contexto 'mt5_conexao' para uso seguro em blocos with.
4
+ """
5
+
6
+ from contextlib import contextmanager
7
+ import MetaTrader5 as mt5
8
+ from mtcli.logger import setup_logger
9
+
10
+ log = setup_logger()
11
+
12
+
13
+ @contextmanager
14
+ def mt5_conexao():
15
+ """
16
+ Context manager para conexão direta com o MetaTrader 5.
17
+ - Chama `mt5.initialize()` ao entrar no contexto.
18
+ - Chama `mt5.shutdown()` ao sair.
19
+ - Loga falhas e garante fechamento seguro.
20
+ """
21
+ try:
22
+ log.info("Inicializando conexão com MetaTrader 5 via API oficial...")
23
+ if not mt5.initialize():
24
+ error = mt5.last_error()
25
+ log.error(f"Falha ao inicializar MetaTrader 5: {error}")
26
+ raise RuntimeError(f"Erro ao conectar ao MT5: {error}")
27
+ yield
28
+ except Exception as e:
29
+ log.error(f"Erro durante o uso da conexão MT5: {e}")
30
+ raise
31
+ finally:
32
+ try:
33
+ mt5.shutdown()
34
+ log.info("Conexão com MetaTrader 5 encerrada com sucesso.")
35
+ except Exception as e:
36
+ log.error(f"Erro ao encerrar conexão MT5: {e}")
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "mtcli"
3
- version = "3.3.0.dev0"
3
+ version = "3.4.0.dev0"
4
4
  description = "Aplicativo CLI para exibir gráficos do MetaTrader 5 em texto acessível ao leitor de telas"
5
5
  authors = [
6
6
  {name = "Valmir França da Silva",email = "vfranca3@gmail.com"}
@@ -1,34 +0,0 @@
1
- """
2
- Gerencia o ciclo de conexão com o MetaTrader 5.
3
- Fornece o contexto 'mt5_conexao' para uso seguro em blocos with.
4
- """
5
-
6
- from contextlib import contextmanager
7
-
8
- from mtcli.conecta import conectar, shutdown
9
- from mtcli.logger import setup_logger
10
-
11
- log = setup_logger()
12
-
13
-
14
- @contextmanager
15
- def mt5_conexao():
16
- """
17
- Context manager para conexão com o MetaTrader 5.
18
- - Chama `conectar()` ao entrar no contexto.
19
- - Chama `shutdown()` ao sair.
20
- - Loga falhas e garante fechamento seguro.
21
- """
22
- try:
23
- log.debug("Inicializando conexao com MetaTrader 5...")
24
- conectar()
25
- yield
26
- except Exception as e:
27
- log.error(f"Erro ao conectar ao MetaTrader 5: {e}")
28
- raise
29
- finally:
30
- try:
31
- shutdown()
32
- log.debug("Conexao com MetaTrader 5 encerrada.")
33
- except Exception as e:
34
- log.error(f"Erro ao encerrar conexao MT5: {e}")
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes