MetaTrader 5 Python User Group - como usar o Python no Metatrader - página 68

 
Roman:

Obrigado Diamante.
Não há erros.
Os caminhos estão correctamente explicados.
Apaguei o caminho exacto em mt5.initialize (), reiniciei o terminal e a figura começou a ser exibida.

É preciso usar um fio de cordão em bruto ou escapar a todas as contrabarragens.

option1 = r'C:\Program Files\MetaTrader 5\terminal64.exe'
option2 = 'C:\\Program Files\\MetaTrader 5\\terminal64.exe'
 
nicholi shen:

É preciso usar um fio de cordão em bruto ou escapar a todas as contrabarragens.

Também pensei em proteger quando o Almaz escreveu para o caminho exacto. Sim, também funcionou. obrigado

 
Almaz :

Tem um limite no número de barras nos gráficos, precisa de remover este limite no Terminal (Ferramentas->Opções->Barras máximas no gráfico).
Em futuras construções de Terminal, devolveremos o erro (Nenhum) ao tentar tal pedido.

Obrigado pela dica.

O MT5 está agora a entregar todos os dados correctamente.

 

Python 3.8

Construir 2470

Pacote 5.0.33


Falha na função Order_get

Não devolve "NÃO" se não houver encomendas.

import MetaTrader5 as mt5

if not mt5.initialize():
    print( "initialize() failed, error code =" , mt5.last_error())
    quit()

orders = mt5.orders_get(symbol= "GBPUSD" )
if orders is None:
    print( "No orders on GBPUSD, error code={}" .format(mt5.last_error()))
elif len(orders) > 0 :
    print( "Total orders on GBPUSD:" , len(orders))
     for order in orders:
        print(order)

mt5.shutdown()


 
Christian:

Python 3.8

Construir 2470

Pacote 5.0.33


Falha na função Order_get

Não devolve "NÃO" se não houver encomendas.


Tudo está correcto, conjunto vazio devolvido - sinal de ausência de ordens, isto não é um erro, o pedido funcionou com sucesso, Nenhum é devolvido em caso de erro explícito. Mas o facto de também devolver um conjunto vazio em símbolos que não estão no servidor do corretor, isto é um erro, corrigido, estará disponível com a próxima actualização do terminal.
 
Almaz :
Isto é correcto, conjunto vazio devolvido - sinal de ausência de ordens, não é erro, pedido foi processado com sucesso, Nenhum é devolvido em caso de erro explícito. Mas também devolve um conjunto vazio em símbolos que não estão no servidor do corretor, é erro, corrigido, estará disponível com a próxima actualização do terminal.

OK, será que realmente entendo isto?


Existem apenas dois tipos de respostas:

1. NÃO

2. Um tuple com um comprimento superior a 0


Na próxima assembleia> 2470

 
Christian:

OK, será que realmente entendo isto?


Existem apenas dois tipos de respostas:

1. NÃO

2. Um tuple com um comprimento superior a 0


Na próxima construção> 2470

Não.

1. nenhum se algum erro surgir

2. Tuple com comprimento >=0

 
Rashid Umarov:

Não.

1. nenhum se algum erro surgir

2. Tuple com comprimento >=0

Ok, agora já percebi.

Thx

 
Дмитрий Прокопьев:

Note-se que mt5.terminal_info() mostra:

path='C:|Works\\\\\MT5 - Terminais:|MetaTrader 5', data_path='C:|Works\\\\MT5 - Terminais:|MetaTrader 5',commondata_path='C:|Utilizadores:|AppDataData_Roaming='MetaQuotes_Terminal'

são idênticos. É suposto ser assim?

O código está abaixo:

 
Almaz:

@Almaz
A primeira vez que as funções copy_xxx_xxx são executadas, quando o terminal não arranca há algum tempo,
funções devolvem imediatamente o resultado disponível com histórico em falta, sem esperar pela sincronização da troca de histórico.
Isto significa que a primeira chamada de função devolve o resultado com o histórico em falta.
Apenas chamadas subsequentes devolverão o resultado correcto, quando o histórico for trocado.
É possível resolver esta questão? E a função copy_xxx_xxx espera que a história seja trocada na primeira chamada.