Mudanças na linguagem da MQL4?
33 respostas
Matusiak Adrian
8 anos atrás #113958
Olá.
Atualmente, salvo minhas estratégias na fonte por SQ.
Mas, em um site, descobri que a MQL4 antiga não será compatível com o MT Build 600+,
Leia os detalhes:
http://docs.mql4.com/mql4changes#compiler_difference
Especialmente:
“Aplicativos EX4 antigos e DLLs baseados no formato RateInfo antigo não funcionarão no novo terminal. É necessária a conversão para o novo formato."
e
“A partir do build 600, a linguagem de programação MQL4 foi completamente revisada, atingindo o nível de MQL5 - agora você pode desenvolver robôs de negociação em MQL4/5 usando o ambiente de desenvolvimento unificado do MetaEditor, estilo único, bibliotecas e ferramentas de depuração."
Alguma atualização sobre isso?
mikeyc
8 anos atrás #131437
Marca Fric
8 anos atrás #131487
Mike, certamente considerarei a possibilidade.
Faça uma lista dos bugs que você considera de alta prioridade e que devem ser corrigidos na versão atual 3.
O melhor é entrar em contato comigo por mensagem privada no fórum ou por e-mail de suporte, para que eu não perca o contato aqui no fórum.
Marcar
EstratégiaQuant arquiteto
Matusiak Adrian
8 anos atrás #131497
Marca Fric
8 anos atrás #131509
Desculpe, eu não sabia disso.
Qual é exatamente o problema com o compilador? Ele funciona bem no MT4.
O gerador de código para MT5 estará apenas na nova versão, pois é muito trabalhoso fazê-lo duas vezes.
Marcar
EstratégiaQuant arquiteto
Matusiak Adrian
8 anos atrás #131512
É difícil dizer. O Mql diz apenas que isso não é feito com compilação estrita. Consulte o site que mencionei. Talvez ele ajude a resolver o problema.
Matusiak Adrian
8 anos atrás #131721
mikeyc
8 anos atrás #131838
Mike, certamente considerarei a possibilidade.
Faça uma lista dos bugs que você considera de alta prioridade e que devem ser corrigidos na versão atual 3.
O melhor é entrar em contato comigo por mensagem privada no fórum ou por e-mail de suporte, para que eu não perca o contato aqui no fórum.
Olá Mark,
Vou compilar uma lista de bugs e problemas que acho que seriam simples de alterar em uma versão final do SQ3. Em seguida, publicarei a lista no fórum e a enviarei a você.
Muito obrigado,
Mike
mikeyc
8 anos atrás #131841
Marca Fric
8 anos atrás #132119
Gostaria apenas de informá-lo que acabamos de lançar uma atualização automática que corrige esse problema. Seu SQ deverá ser atualizado na próxima vez que você o iniciar.
Portanto, agora é possível adicionar #property strict ao seu EA e ele será compilado corretamente.
Marcar
EstratégiaQuant arquiteto
Matusiak Adrian
8 anos atrás #132120
Ok, atualizei o SQ, mas não vejo nenhuma opção para adicionar a propriedade # strict.
Onde posso encontrá-lo?
Marca Fric
8 anos atrás #132122
não há nenhuma configuração para isso no SQ, o que foi alterado foi que o SQ agora gera código que pode ser compilado com #propriedade estrita.
Você pode adicionar a linha:
#propriedade estrita
para o início do arquivo EA gerado.
Marcar
EstratégiaQuant arquiteto
Matusiak Adrian
8 anos atrás #132126
Marca Fric
8 anos atrás #132153
Sim, você sempre pode reexportar estratégias antigas no SQ e elas devem funcionar como antes.
O código MQL foi limpo para que não haja erros quando compilado com #property strict
Marcar
EstratégiaQuant arquiteto
atohm
8 anos atrás #133071
#property strict na versão atual do SQ 3.8.1 não é. Se eu adicionar a linha #property strict e compilar para ex4 retorna esses erros. Instalei a última versão do SQ 3.8.1 e os patches de agosto e setembro.
'EURUSD_15M_21.320229.mq4 EURUSD_15M_21.320229.mq4 1 1
Conversão implícita de 'number' para 'string EURUSD_15M_21.320229.mq4 562 83
Conversão implícita de 'number' para 'string EURUSD_15M_21.320229.mq4 562 111
Conversão implícita de 'number' para 'string EURUSD_15M_21.320229.mq4 605 70
Conversão implícita de 'number' para 'string EURUSD_15M_21.320229.mq4 607 71
Conversão implícita de 'number' para 'string EURUSD_15M_21.320229.mq4 630 38
Conversão implícita de 'number' para 'string EURUSD_15M_21.320229.mq4 630 61
Conversão implícita de 'number' para 'string EURUSD_15M_21.320229.mq4 630 83
Conversão implícita de 'number' para 'string EURUSD_15M_21.320229.mq4 630 99
Conversão implícita de 'number' para 'string EURUSD_15M_21.320229.mq4 635 35
Conversão implícita de 'number' para 'string EURUSD_15M_21.320229.mq4 640 26
Conversão implícita de 'number' para 'string EURUSD_15M_21.320229.mq4 640 55
Conversão implícita de 'number' para 'string EURUSD_15M_21.320229.mq4 653 39
Conversão implícita de 'number' para 'string EURUSD_15M_21.320229.mq4 653 57
Conversão implícita de 'number' para 'string EURUSD_15M_21.320229.mq4 653 77
Conversão implícita de 'number' para 'string EURUSD_15M_21.320229.mq4 655 24
Conversão implícita de 'number' para 'string EURUSD_15M_21.320229.mq4 655 57
Conversão implícita de 'number' para 'string EURUSD_15M_21.320229.mq4 655 94
Conversão implícita de 'number' para 'string EURUSD_15M_21.320229.mq4 658 40
Conversão implícita de 'number' para 'string EURUSD_15M_21.320229.mq4 658 54
Conversão implícita de 'number' para 'string EURUSD_15M_21.320229.mq4 672 39
Conversão implícita de 'number' para 'string EURUSD_15M_21.320229.mq4 672 61
Conversão implícita de 'number' para 'string EURUSD_15M_21.320229.mq4 672 94
Conversão implícita de 'number' para 'string EURUSD_15M_21.320229.mq4 672 131
Conversão implícita de 'number' para 'string EURUSD_15M_21.320229.mq4 676 39
Conversão implícita de 'number' para 'string EURUSD_15M_21.320229.mq4 676 77
Conversão implícita de 'number' para 'string EURUSD_15M_21.320229.mq4 676 91
Conversão implícita de 'number' para 'string EURUSD_15M_21.320229.mq4 684 55
Conversão implícita de 'number' para 'string EURUSD_15M_21.320229.mq4 687 46
Conversão implícita de 'number' para 'string EURUSD_15M_21.320229.mq4 687 60
'i' - identificador não declarado EURUSD_15M_21.320229.mq4 1048 8
'i' - identificador não declarado EURUSD_15M_21.320229.mq4 1064 8
'i' - identificador não declarado EURUSD_15M_21.320229.mq4 1091 8
'i' - identificador não declarado EURUSD_15M_21.320229.mq4 1107 8
conversão implícita de 'number' para 'string EURUSD_15M_21.320229.mq4 1223 19
'i' - identificador não declarado EURUSD_15M_21.320229.mq4 1304 8
'orderTime' - identificador não declarado EURUSD_15M_21.320229.mq4 1306 10
Conversão implícita de 'string' para 'number EURUSD_15M_21.320229.mq4 1306 20
Conversão implícita de 'number' para 'string EURUSD_15M_21.320229.mq4 1308 13
possível uso de variável não inicializada 'lotMM EURUSD_15M_21.320229.mq4 1380 15
conversão implícita de 'number' para 'string EURUSD_15M_21.320229.mq4 1788 19
Possível perda de dados devido à conversão de tipos EURUSD_15M_21.320229.mq4 1802 30
Possível perda de dados devido à conversão de tipo EURUSD_15M_21.320229.mq4 1813 22
Conversão implícita de 'number' para 'string EURUSD_15M_21.320229.mq4 1815 56
Conversão implícita de 'number' para 'string EURUSD_15M_21.320229.mq4 1851 60
Conversão implícita de 'number' para 'string EURUSD_15M_21.320229.mq4 1851 87
Possível perda de dados devido à conversão de tipos EURUSD_15M_21.320229.mq4 2117 11
Conversão implícita de 'number' para 'string EURUSD_15M_21.320229.mq4 2118 17
Possível perda de dados devido à conversão de tipo EURUSD_15M_21.320229.mq4 2140 65
Possível perda de dados devido à conversão de tipos EURUSD_15M_21.320229.mq4 2141 70
6 erro(s), 43 aviso(s) 7 44
Sou um criador de conteúdo entusiasmado e apaixonado por estratégias de negociação automatizadas (ATS). Minha paixão por ATS começou em 2011 e, desde então, venho aprimorando minhas habilidades. Em 2013, criei meu próprio ATS e, mais tarde, descobri o StrategyQuant, uma ferramenta extraordinária que permite a qualquer pessoa criar ATS sem nenhum conhecimento de programação.
Também sou o orgulhoso criador do QuantMonitor.net, uma ferramenta exclusiva de monitoramento de plataforma que simplifica sua experiência de negociação. Meu painel de negociação vem com ferramentas adicionais, como a ferramenta de renomeação e o implementador de EA, facilitando a renomeação e a implementação de até 99 estratégias com apenas alguns cliques.
Junte-se a mim nessa jornada empolgante enquanto exploramos juntos as infinitas possibilidades das estratégias de negociação automatizadas! 🚀
Marca Fric
8 anos atrás #133094
Peço desculpas pelo erro, pois parece que a atualização anterior não continha essa função. Acabei de lançar uma nova atualização com isso corrigido.
Agora você pode usar #property strict, que produzirá apenas alguns avisos como "conversão implícita de 'number' para 'string' ".
Esses avisos não afetam a funcionalidade do EA, pois ele simplesmente diz que estamos convertendo números em strings ao gravar mensagens em um registro.
Marcar
EstratégiaQuant arquiteto