MetaTrader 5 Python User Group - como usar o Python no Metatrader - página 76
Você está perdendo oportunidades de negociação:
- Aplicativos de negociação gratuitos
- 8 000+ sinais para cópia
- Notícias econômicas para análise dos mercados financeiros
Registro
Login
Você concorda com a política do site e com os termos de uso
Se você não tem uma conta, por favor registre-se
Obrigado, Maxim!
Já estou a experimentá-lo. O ciclo já começou, mas o ficheiro ainda não está a abrir. Vou deixar o laço em funcionamento e esperar.
Cumprimentos, Vladimir.
P.S. Perdão! Não prestou atenção de imediato ao que está de pé à hora. Mudei-o para o ficheiro EUR_USD_QUOTE.csv no minuto em que foi aberto, mas recebi esta mensagem no separador Run do Pycharm:
�訡��: �� 㤠����� ���� ������ "excel.exe".
Depois de mais ou menos um minuto, o ficheiro fechou e reabriu, mas em Exel apareceu uma aba no lado esquerdo da folha de cálculo pedindo-me para guardar o texto previamente aberto. Esperei um pouco mais para ver o que iria acontecer a seguir, mas depois o ciclo parou e uma mensagem como esta apareceu:
�ᯥ譮: ������ "EXCEL.EXE", � ������䨪��� 4208, � �������襭.
�ᯥ譮: ������ "EXCEL.EXE", � ������䨪�� 3168, ��� ������襭.
Traceback (última chamada):
Ficheiro "C:/Users/Vladimir/PycharmProjects/My_Python_Project/9.py", linha 37, em <module>
get_data(save_file='EUR_USD_QUOTE.csv')
Ficheiro "C:/Users/Vladimir/PycharmProjects/My_Python_Project/9.py", linha 23, em get_data
com open(save_file, 'w') como save:
PermissionError: [Errno 13] Permission denied: 'EUR_USD_QUOTE.csv')
Este é o resultado até agora, mas eu já fiz progressos!
Atenciosamente, Vladimir.
Talvez o Excel não tivesse tempo para fechar e já estivesse a tentar aceder ao ficheiro, então
Adicione aqui um atraso de 5-10 segundos, e o programa esperará que o Excel feche
Ainda não decidi o que fazer com a janela à esquerda )
Quero aprender como fazer citações na Internet utilizando a linguagem Python para as ver não no terminal, mas em algum ficheiro, por exemplo, csv. Pensei que era a tarefa mais básica, mas afinal não era. Talvez eu esteja no caminho errado, mas aquele que não procura nada, não encontra nada.
Agora vou passar ao código que propôs. Após o lançamento do código, uma mensagem apareceu no ambiente de desenvolvimento do Pycharm :
Traceback (última chamada):
Ficheiro "C:/Users/Vladimir/PycharmProjects/My_Python_Project/10.py", linha 25, em <módulo>
main()
Ficheiro "C:/Users/Vladimir/PycharmProjects/My_Python_Project/10.py", linha 13, no principal
eurusd_bid = soup.find('td', 'pid-1-bid').text.text.replace(',', '.')
AttributeError: O objecto 'NoneType' não tem atributo 'text'
Processo terminado com o código de saída 1
O que preciso de mudar para ver como funciona o código?
Com todo o respeito, Vladimir.
A razão pela qual não está a funcionar é porque este site o bloqueou de enviar pedidos. O facto de ter tido de falsificar um agente utilizador deve ter sido uma pista de que estava a fazer algo que eles não queriam que fizesse. A digitalização da Web está muito para além do âmbito deste tópico, por isso devemos parar de falar sobre isso e voltar ao assunto em questão. Tem alguma questão sobre a utilização do pacote MetaTrader5?
Pode não ter tempo para fechar o Excel e está a tentar aceder ao ficheiro, então
adicionar um atraso de 5-10 segundos, o programa esperará que o Excel feche
Ainda não decidi o que fazer com a janela da esquerda )
Maxim, muito obrigado pelo código, que me ajudou a melhorar. O painel esquerdo é de momento pouco preocupante. Acrescentarei o vosso novo código mais tarde, muito provavelmente no fim-de-semana, pois hoje estive completamente inundado no trabalho e preciso de um descanso. Avisar-vos-ei assim que obtiver novos resultados.
Cumprimentos, Vladimir.
Em que compensação é que a biblioteca MT5 devolve o tempo das encomendas abertas?
Mas no terminal é um tempo diferente
Como sincronizar correctamente a hora no programa python com a hora das encomendas (posições)?
Em que compensação é que a biblioteca MT5 devolve o tempo das encomendas abertas?
mas no terminal é um tempo diferente
Como sincronizar correctamente a hora no programa python com a hora das encomendas (posições)?
Primeiro é preciso saber o fuso horário exacto do servidor comercial. Depois criar um objecto de fuso horário usando pytz. Finalmente, passar o objecto de fuso horário a um método.
https://stackoverflow.com/questions/13866926/is-there-a-list-of-pytz-timezonesPrimeiro é necessário saber o fuso horário exacto do servidor comercial. Depois criar um objecto de fuso horário usando pytz. Finalmente, passar o objecto de fuso horário para o método.
https://stackoverflow.com/questions/13866926/is-there-a-list-of-pytz-timezonesObrigado, vou tentar desta forma
Gostaria de sincronizar a hora automaticamente, uma vez que o servidor de negociação pode mudarobrigado, vou tentar isto
Gostaria de sincronizar a hora automaticamente, porque o servidor de comércio pode mudarOs timestamps UNIX são agnósticos de fuso horário, pelo que é necessário conhecer o fuso horário do corretor para dar ao timestamp o contexto de timestamp o timezone consciente. A única forma de o fazer é conhecer a configuração do fuso horário do servidor comercial. Não creio que haja qualquer forma de obter essa informação de forma programática. O que pode fazer é criar um ficheiro de configuração para mapear os diferentes servidores de comércio que pode estar a utilizar para o fuso horário. Exemplo:
config.json
Os timestamps UNIX são agnósticos de fuso horário, pelo que é necessário conhecer o fuso horário do corretor para dar ao timestamp o contexto de timestamp o timezone consciente. A única forma de o fazer é conhecer a configuração do fuso horário do servidor comercial. Não creio que haja qualquer forma de obter essa informação de forma programática. O que pode fazer é criar um ficheiro de configuração para mapear os diferentes servidores de comércio que pode estar a utilizar para o fuso horário. Exemplo:
config.json
bem... sim
maneira mais fácil sem pytz:
Também podemos abrir uma encomenda pendente longe do preço, antes de iniciar a EA. E comparar a diferença em horas entre 'pt' edatetime.utcnow()
para compensar automaticamente o tempobem ... sim
maneira mais fácil sem pytz:
Também podemos abrir uma encomenda pendente longe do preço, antes de iniciar a EA. E comparar a diferença em horas entre 'pt' e para compensar automaticamente o tempoPensei a mesma coisa, mas depois lembrei-me que o tempo da encomenda é armazenado num carimbo de tempo UNIX que não tem um fuso horário. Por outras palavras, não se pode extrapolar o fuso horário do corretor a partir do carimbo de hora da encomenda, porque os carimbos de hora são os mesmos, independentemente do fuso horário. Se quiser saber a compensação GMT tem de saber a hora actual do terminal (corretor) e não há actualmente forma de utilizar python para obter a hora actual do terminal ou a compensação GMT.
Pode não ter tempo para fechar o Excel e está a tentar aceder ao ficheiro, então
pode adicionar um atraso de 5-10 segundos, o programa esperará que o Excel feche
Ainda não decidi o que fazer com a janela à esquerda )
Olá Maxim!
Prometi-lhe mais cedo que no fim-de-semana verificaria a variante com adição de código de atraso. Verifiquei-o, mas o atraso não afectou nada. Não tenho problemas com a aba esquerda, porque simplesmente não presto atenção a ela.
Mais uma vez, muito obrigado pela vossa assistência. Não farei mais perguntas neste tópico.
Cumprimentos, Vladimir.