Pessoal , tudo bem?
apliquei exatamente o código descrito na documentação (substituindo o EURUSD por um ativo brasileiro), mas a função market_book_add() sempre retorna "False".
Alguém tem experimentado o mesmo problema?
documentação: https://www.mql5.com/en/docs/integration/python_metatrader5/mt5marketbookget_py
Olá, bom dia, tudo bem?
Você esta testando o código neste feriado de carnaval? O erro provavelmente é que o mercado está fechado, logo, retorna falso.
Para não ficar parado e continuar testando seu código, você pode baixar o Metatrader5, que já vem com uma conta demo ativa para mercado Forex, que funciona de segunda a sexta, 24h. É possível ter o Metatrader para sua corretora e para o mercado Forex ao mesmo tempo. Só não deixa os dois abertos ao mesmo tempo quando rodar seu código que pode dar erro.
Você pode checar também a biblioteca que eu fiz, caso te ajude.
Esse é o link da classe book.
- www.metatrader5.com
Ola Joao, tudo bem?
Muito obrigado pela resposta e pela biblioteca
Utilizando o código q vc disponibilizou continuo recebendo "False" quando tento rodar a marget_book_add tanto na conta da corretora BR quanto no mercado Forex.
Pode ser alguma configuração do próprio Mt5?
Ola Joao, tudo bem?
Muito obrigado pela resposta e pela biblioteca
Utilizando o código q vc disponibilizou continuo recebendo "False" quando tento rodar a marget_book_add tanto na conta da corretora BR quanto no mercado Forex.
Pode ser alguma configuração do próprio Mt5?
Usando o código abaixo, sem mudar nada, com o Metatrader da sua corretora fechado e o do Forex aberto, ainda assim retorna falso?
Usando a biblioteca para importar algumas classes.
from include.trade import Trade from include.book import Book trade = Trade('Example', # Expert name 0.1, # Expert Version 'EURUSD', # symbol 567, # Magic number 0.01, # lot, it is a floating point. 25, # stop loss 300, # emergency stop loss 25, # take profit 300, # emergency take profit '00:10', # It is allowed to trade after that hour. Do not use zeros, like: 09 '23:50', # It is not allowed to trade after that hour but let open all the position already opened. '23:50', # It closes all the position opened. Do not use zeros, like: 09 0.0, # average fee ) book = Book(trade.symbol) while True: print(book.get())
Esse mesmo código para mim retorna:
Initializing the basics. You are running the Example expert advisor, version 0.1, on symbol EURUSD. Initialization successfully completed. Summary: ExpertAdvisor name: Example ExpertAdvisor version: 0.1 Running on symbol: EURUSD MagicNumber: 567 Number of lot(s): 0.01 StopLoss: 25 TakeProfit: 25 Emergency StopLoss: 300 Emergency TakeProfit: 300 Start trading time: 00:10 Finishing trading time: 23:50 Closing position after: 23:50 Average fee per trading: 0.0 StopLoss & TakeProfit Steps: 1.0 Running The symbol EURUSD was successfully added to market book. (BookInfo(type=1, price=1.20663, volume=250, volume_dbl=250.0), BookInfo(type=1, price=1.20658, volume=100, volume_dbl=100.0), BookInfo(type=1, price=1.20656, volume=50, volume_dbl=50.0), BookInfo(type=1, price=1.20655, volume=36, volume_dbl=36.0), BookInfo(type=2, price=1.20652, volume=36, volume_dbl=36.0), BookInfo(type=2, price=1.2065, volume=50, volume_dbl=50.0), BookInfo(type=2, price=1.20649, volume=100, volume_dbl=100.0), BookInfo(type=2, price=1.20641, volume=250, volume_dbl=250.0)) (BookInfo(type=1, price=1.20663, volume=250, volume_dbl=250.0), BookInfo(type=1, price=1.20658, volume=100, volume_dbl=100.0), BookInfo(type=1, price=1.20656, volume=50, volume_dbl=50.0), BookInfo(type=1, price=1.20655, volume=36, volume_dbl=36.0), BookInfo(type=2, price=1.20652, volume=36, volume_dbl=36.0), BookInfo(type=2, price=1.2065, volume=50, volume_dbl=50.0), BookInfo(type=2, price=1.20649, volume=100, volume_dbl=100.0), BookInfo(type=2, price=1.20641, volume=250, volume_dbl=250.0))
Precisa atualizar a plataforma para a beta mais recente, essa função saiu para uma beta de duas semanas, eu já estou usando sem problemas
Muito obrigado pela resposta,
realmente funciona!
- Aplicativos de negociação gratuitos
- 8 000+ sinais para cópia
- Notícias econômicas para análise dos mercados financeiros
Você concorda com a política do site e com os termos de uso
Pessoal , tudo bem?
apliquei exatamente o código descrito na documentação (substituindo o EURUSD por um ativo brasileiro), mas a função market_book_add() sempre retorna "False".
Alguém tem experimentado o mesmo problema?
documentação: https://www.mql5.com/en/docs/integration/python_metatrader5/mt5marketbookget_py