Skip to main content

MT5 Connector

A Python package for connecting to and managing MetaTrader5 servers.

Installation

pip install fivitech-mt5-connector

Documentation

For detailed documentation, see DOCUMENTATION.md

Changelog

For changelog, see CHANGELOG.md

Usage

from fivitech_mt5_connector import MT5Pool

# Configure your MT5 servers
servers = [
    {
        "id": 1,
        "type": "demo",
        "name": "Demo Server",
        "username": "manager",
        "manager_password": "your_manager_password",
        "api_password": "your_api_password",
        "ips": ["127.0.0.1", "localhost"]
    }
]

# Initialize the pool
pool = MT5Pool(servers)

# Connect to all servers
connection_status = pool.connect_all()

# Or connect to specific server
pool.connect_server(1)

# Add a new server dynamically
pool.add_server({
    "id": 2,
    "type": "live",
    "name": "Live Server",
    "username": "manager",
    "manager_password": "your_manager_password",
    "api_password": "your_api_password",
    "ips": ["server1.domain.com", "server2.domain.com"]
})

# Connect to the new server
pool.connect_server(2)

# Update server configuration
pool.update_server(2, {
    "name": "Updated Live Server",
    "ips": ["new.server.com"]
})

# Disconnect specific server
pool.disconnect_server(2)

# Remove server from pool
pool.remove_server(2)

# Add custom callbacks if needed
def my_deal_callback(deal, server_info):
    print(f"New deal on {server_info.name}: {deal.Deal}")

pool.add_deal_callback('deal_add', my_deal_callback)

# Get a specific server connection
demo_server = pool.get_server(1)
live_server = pool.get_server(101)

# Disconnect all servers when done
pool.disconnect_all()

Features

  • Dynamic server management (add/remove/update servers)
  • Individual server connection control
  • Multiple server connections management
  • Account operations
  • Transaction handling
  • User management
  • Deal monitoring
  • Default and custom callbacks for deals and user events

Server Configuration

Each server in the configuration requires:

  • id: Unique integer identifier
  • type: Either 'demo' or 'live'
  • name: Server name
  • username: Manager username/login
  • manager_password: Manager password for server operations
  • api_password: API password for MT5 WebAPI access
  • ips: List of IP addresses for failover

Server Management Methods

Adding Servers

pool.add_server({
    "id": 1,
    "type": "demo",
    "name": "Demo Server",
    "username": "manager",
    "manager_password": "password",
    "api_password": "api_password",
    "ips": ["127.0.0.1"]
})

Updating Servers

pool.update_server(1, {
    "name": "Updated Name",
    "ips": ["new.ip.address"]
})

Removing Servers

pool.remove_server(1)

Connection Control

# Connect specific server
pool.connect_server(1)

# Disconnect specific server
pool.disconnect_server(1)

# Connect all servers
pool.connect_all()

# Disconnect all servers
pool.disconnect_all()

Requirements

  • Python 3.7+
  • MT5Manager>=5.0.3906
  • pandas>=1.0.0
  • numpy>=1.19.0
  • pytz>=2021.1
  • requests>=2.26.0
  • python-dateutil>=2.8.2

License

Proprietary - All rights reserved

Metadata

Release files for fivitech-mt5-connector 0.2.19

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for fivitech-mt5-connector 0.2.19
File Size Uploaded
fivitech_mt5_connector-0.2.19.tar.gz 38.5 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for fivitech-mt5-connector 0.2.19
File Interpreter ABI Platform
fivitech_mt5_connector-0.2.19-py3-none-any.whl Python 3 none any Details

Total release size: 84.4 kB

Release files / fivitech_mt5_connector-0.2.19.tar.gz

Download URL fivitech_mt5_connector-0.2.19.tar.gz
Size 38.5 kB
Tags Source
SHA-256 checksum
How to use checksums
9f636b7d2efd99a11cfceff1ddbfb1a636bf5ca0eee0013bb366150b1982fc0c
BLAKE2b-256 checksum
How to use checksums
7565aff932965087fb105f92017e072e0fb130a79b87b85c873409abd6abbad7
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.0.1 CPython/3.13.1

Release files / fivitech_mt5_connector-0.2.19-py3-none-any.whl

Download URL fivitech_mt5_connector-0.2.19-py3-none-any.whl
Size 45.9 kB
Tags Python 3
SHA-256 checksum
How to use checksums
33ab3ea854de60b3eddefb46acac2b826537368c9e700bfbdf84dcaf7b1183a9
BLAKE2b-256 checksum
How to use checksums
805cb845d2b882e8e326d85413a69dca91aadb085ff9a4ed1ca36547d9c9cf61
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.0.1 CPython/3.13.1

Release history Release notifications | RSS feed

This release

0.2.19 This release

2 release files

0.2.9

2 release files

0.2.8

2 release files

0.2.7

2 release files

0.2.6

2 release files

0.2.5

2 release files

0.2.4

2 release files

0.2.3

2 release files

0.2.2

2 release files

0.2.1

2 release files

0.1.8

2 release files

0.1.7

2 release files

0.1.6

2 release files

0.1.5

2 release files

0.1.4

2 release files

0.1.3

2 release files

0.1.2

2 release files

0.1.1

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page