login

Conecta-se a uma conta de negociação com os parâmetros especificados.

login(
   login,                    // número da conta
   password="PASSWORD",      // senha
   server="SERVER",          // nome do servidor como definido no terminal
   timeout=TIMEOUT           // tempo de espera esgotado
   )

Parâmetros

login

[in]  Número da conta de negociação. Parâmetro sem nome obrigatório.

password

[in]  Senha da conta de negociação. Parâmetro nomeado opcional. Se a senha não for especificada, será automaticamente colocada a senha armazenada no banco de dados do terminal.

server

[in]  Nome do servidor de negociação. Parâmetro nomeado opcional. Se o servidor não for especificado, será automaticamente colocado o último servidor.

timeout=TIMEOUT

[in]  Tempo limite de conexão em milissegundos. Parâmetro nomeado opcional. Se não especificado, será usado um valor de 60 000 (60 segundos). Se a conexão não for estabelecida durante esse período, a chamada será forçosamente encerrada e será gerada sua remoção.

Valor retornado

True em caso de conexão bem-sucedida à conta de negociação, caso contrário, False.

Exemplo:

import MetaTrader5 as mt5
# exibimos dados sobre o pacote MetaTrader5
print("MetaTrader5 package author: ",mt5.__author__)
print("MetaTrader5 package version: ",mt5.__version__)
 
# estabelecemos a conexão ao MetaTrader 5
if not mt5.initialize():
    print("initialize() failed, error code =",mt5.last_error())
    quit()
 
# imprimimos informações sobre a versão do MetaTrader 5
print(mt5.version())
# conectamo-nos à conta de negociação sem especificar senha e servidor
account=17221085
authorized=mt5.login(account)  # a senha será retirada do banco de dados do terminal, se especificado lembrar os dados de conexão
if authorized:
    print("connected to account #{}".format(account))
else:
    print("failed to connect at account #{}, error code: {}".format(account, mt5.last_error()))
 
# agora conectamo-nos a outra conta de negociação indicando senha
account=25115284
authorized=mt5.login(accountpassword="gqrtz0lbdm")
if authorized:
    # exibimos os dados sobre a conta de negociação como estão
    print(mt5.account_info())
    # exibimos os dados da conta de negociação como uma lista
    print("Show account_info()._asdict():")
    account_info_dict = mt5.account_info()._asdict()
    for prop in account_info_dict:
        print("  {}={}".format(prop, account_info_dict[prop]))
else:
    print("failed to connect at account #{}, error code: {}".format(account, mt5.last_error()))
 
# concluímos a conexão ao terminal MetaTrader 5
mt5.shutdown()
 
 
Resultado:
MetaTrader5 package author:  MetaQuotes Software Corp.
MetaTrader5 package version:  5.0.29
[500, 2367, '23 Mar 2020']
 
connected to account #17221085
 
connected to account #25115284
AccountInfo(login=25115284, trade_mode=0, leverage=100, limit_orders=200, margin_so_mode=0, ...
account properties:
   login=25115284
   trade_mode=0
   leverage=100
   limit_orders=200
   margin_so_mode=0
   trade_allowed=True
   trade_expert=True
   margin_mode=2
   currency_digits=2
   fifo_close=False
   balance=99588.33
   credit=0.0
   profit=-45.23
   equity=99543.1
   margin=54.37
   margin_free=99488.73
   margin_level=183084.6054809638
   margin_so_call=50.0
   margin_so_so=30.0
   margin_initial=0.0
   margin_maintenance=0.0
   assets=0.0
   liabilities=0.0
   commission_blocked=0.0
   name=James Smith
   server=MetaQuotes-Demo
   currency=USD
   company=MetaQuotes Software Corp.

Veja também

initialize, shutdown