Discussão do artigo "SQLite: trabalho nativo com bancos de dados SQL em MQL5" - página 2
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
Renat Fatkhullin:
Em diferentes MQL5 Expert Advisors lançados em um terminal, é possível compartilhar o mesmo banco de dados.
.
Testei o funcionamento de dois Expert Advisors com o mesmo banco de dados em um terminal. Funciona sem erros - ambos os Expert Advisors gravam dados em um arquivo com um cronômetro de 2 segundos.
Os arquivos estão anexados e diferem apenas no nome do Expert Advisor.
Esta é a aparência do banco de dados no MetaEditor
É possível usar o que está descrito para o µl5 no µl4?
No MQL4, você pode trabalhar com o Sqlite3_32.dll nativo por meio do wrapper para MQL
Esse é um wrapper para MQL, não o confunda com o SQLite3Wrapper.dll
Não sei se ele ainda está on-line, mas eu costumava usá-lo antes.
UPD: https: //github.com/Shmuma/sqlite3-mt4-wrapperSe você tiver descoberto isso, mostre a implementação dessa tarefa.
Há outra nuance - salvar no banco de dados dados consistentes com valor crescente, que não se dispersam, como cotações (com uma data crescente) - uma operação MUITO cara. A árvore não é equilibrada, um ramo cresce indefinidamente e o mecanismo reequilibra a árvore regularmente (isso é pior do que a coleta de lixo). Talvez isso se aplique somente à tabela indexada, não me lembro mais. Ou talvez, nos poucos anos em que não a utilizei, isso já tenha sido resolvido. Terei que experimentar. Talvez até mesmo os desenvolvedores analisem o problema, pois eles devem estar interessados nele.
DatabaseImport()
script simples
2020.02.20 15:09:27.171 MQL5 'DOMcopy.ex5' tem uma versão mais recente sem suporte, atualize seu terminal de cliente
a versão 5 build 2323 mais recente do meta-editor é a mesma e a depuração não funciona.
há algo inacabado?
Afunção DatabaseImport ainda não foi liberada para o público.
Aguarde o lançamento.
A função DatabaseImport ainda não foi liberada para o público.
Aguarde o lançamento.
A versão 5 build 2326 é a mesma coisa, então, quando esperar por uma versão estável?
versão 5 build 2326 a mesma coisa que é esperar por uma versão estável e quando?
Fórum sobre negociação, sistemas de negociação automatizados e teste de estratégias de negociação.
Nova versão do MetaTrader 5 build 2340: gerenciamento de configurações de conta no testador e expansão da integração com Python
MetaQuotes, 2020.02.20 14:55
Na sexta-feira, 21 de fevereiro de 2020, será lançada uma versão atualizada da plataforma MetaTrader 5. A atualização contém as seguintes alterações:
Na atualização anterior da plataforma, adicionamos suporte para trabalhar com bancos de dados SQLite diretamente da MQL5. Agora, as principais funções estão disponíveis na interface do usuário do MetaEditor:
.
Como funciona
Para criar bancos de dados rapidamente, use o "Assistente MQL5". Aqui você pode criar imediatamente a primeira tabela e definir uma lista de seus campos.
Depois de criar um banco de dados, você irá para uma nova seção do "Navigator". Todo o trabalho com dados é realizado a partir dessa seção.
Na parte esquerda, são exibidas as tabelas do banco de dados. Para consultar rapidamente os primeiros 1.000 registros, clique duas vezes no nome da tabela. Aqui você também pode criar e abrir outros bancos de dados e trabalhar com tabelas.
A parte principal do editor é onde você trabalha com o banco de dados: preencha a tabela com dados, faça pesquisas e seleções, insira consultas SQL, etc.
.

Para obter mais detalhes sobre como trabalhar com bancos de dados no MetaTrader 5, leia o artigo"SQLite: Native Work with SQL Databases in MQL5"..
.
Para executar o script no editor, clique em "Compile" (Compilar):
.
Para trabalhar com Python, não se esqueça de especificar o caminho para ele na seção "Settings / Compilers" no MetaEditor. E para trabalhar com a biblioteca do MetaTrader 5, instale-a com o comando:
.
.
Nova nomenclatura de comandos
Os comandos existentes foram renomeados:
MT5Shutdown -> shutdown
MT5TerminalInfo -> terminal_info
MT5Version -> version
MT5CopyRatesFrom -> copy_rates_from
MT5CopyRatesFromPos -> copy_rates_from_pos
MT5CopyRatesRange -> copy_rates_range
MT5CopyTicksFrom -> copy_ticks_from
MT5CopyTicksRange -> copy_tick_range
Novos comandos
A lista de comandos suportados foi bastante ampliada. Foram adicionadas funções de negociação e trabalho com histórico de negociação, obtenção de informações sobre instrumentos financeiros e conta corrente.
.
Execução de scripts Python em gráficos
Agora, os scripts Python podem ser executados diretamente nos gráficos da plataforma, de forma semelhante aos programas MQL5 comuns. Eles serão exibidos com ícones especiais no "Navigator".
.
As mensagens do script serão exibidas na seção "Tools / Experts". Se o script usar a biblioteca MetaTrader 5, ele poderá receber informações sobre o instrumento, a conta e a operação.
Os scripts Python podem ser executados no mesmo gráfico em paralelo com outros scripts MQL5 e Expert Advisors. Para interromper um script se sua execução estiver em loop, basta removê-lo do gráfico.
Proteção adicional
Para proteger ainda mais suas contas ao usar bibliotecas Python de terceiros, a opção "Disable automatic trading via external Python API" foi adicionada às configurações do terminal.
.
Os scripts Python terão permissão para negociar somente se essa opção estiver explicitamente desativada.
.
.
DatabaseImport
Importa dados de um arquivo para uma tabela.
DatabaseExport
Exporta uma tabela ou o resultado da execução de uma consulta SQL para um arquivo CSV. O arquivo é criado em codificação UTF-8.
DatabasePrint
Imprime uma tabela ou o resultado da execução de uma consulta SQL no registro do Expert Advisor.
A nova função permitirá implementar uma interação conveniente do usuário com o programa MQL5.
.
.
.
Configurações gerais
Nessa seção, é possível definir o número máximo de ordens e posições abertas que você pode ter na sua conta ao mesmo tempo. Também aqui você pode configurar as sessões em que o programa testado não terá permissão para negociar.
Margem
Aqui você pode controlar totalmente como a margem será reservada e qual sistema de contabilidade de posição será usado durante o teste:
.
.
.
.
Comissão
Nessa seção, você tem controle total sobre como a comissão é cobrada em todas as negociações.
.
.
.
.
.
A atualização estará disponível por meio do sistema LiveUpdate.
versão estável 5 build 2340 DatabaseImport mostra o mesmo DatabaseImport na execução
2020.02.22 14:01:42.338 MQL5 'DOMcopy.ex5' tem uma versão mais recente não suportada, atualize seu terminal de cliente
Olá!
Tentei criar uma conexão com um banco de dados no indicador, mas, por algum motivo, não funcionou.
Por que isso não está escrito em lugar algum, em quais programas posso usar bancos de dados?