A agonia da escolha

 
Olá Caros usuários do fórum, gostaria de pedir seus conselhos como as pessoas que conhecem meu problema por dentro. Gostaria de desenvolver robôs comerciais para o MT4, tenho muitas idéias e tempo. Li os fóruns e percebi que posso começar a escrever Consultores Especialistas simples depois de um mês de estudo da MQL4. Eu baixei tutoriais em vídeo e coletei artigos sobre programação, mas uma característica específica apareceu. A MQL4 atualizada tornou-se mais semelhante à MQL5 e não é tão fácil de aprender (já que não há tutoriais em vídeo com novas características da linguagem, e não há tantos artigos). Não quero estudar a MQL5 porque a MT5 não é popular entre os corretores, ou melhor, não é nada popular. A este respeito, há uma pergunta insolúvel, o que devo fazer?
É possível escrever EAs usando a antiga funcionalidade MQL4 agora, e aprender todas as inovações posteriormente (porque há material mais do que suficiente para seu estudo) ou é necessário aprender a MQL4 atualizada? Eu sou um zero total na programação. Por favor, me aconselhe como fazer melhor?
 
the_sphinx:
Olá Caros usuários do fórum, gostaria de pedir seus conselhos como as pessoas que conhecem meu problema por dentro. Gostaria de desenvolver robôs comerciais para o MT4, tenho muitas idéias e tempo. Li os fóruns e percebi que posso começar a escrever Consultores Especialistas simples depois de um mês de estudo da MQL4. Eu baixei tutoriais em vídeo e coletei artigos sobre programação, mas uma característica específica apareceu. A MQL4 atualizada tornou-se mais semelhante à MQL5 e não é tão fácil de aprender (já que não há tutoriais em vídeo com novas características da linguagem, e não há tantos artigos). Não quero estudar a MQL5 porque a MT5 não é popular entre os corretores, ou melhor, não é nada popular. A este respeito, há uma pergunta insolúvel, o que devo fazer?
É possível agora escrever EAs usando a antiga funcionalidade MQL4 e aprender todas as inovações mais tarde (porque há material mais que suficiente para seu estudo) ou precisarei aprender um MQL4 atualizado (para as características do qual há muito pouco material)? Tenho zero conhecimentos em programação. Por favor, me aconselhe como fazer melhor?
Não tenho a menor idéia do que fazer com ele.
 
Vinin:
Escreva do jeito antigo e aprenda o novo jeito
Receio que nem sempre funcione - muitas coisas que funcionavam antes não funcionam agora. Cerca de 50% dos antigos EAs simplesmente se recusam a trabalhar. Na ausência de informações sensatas sobre atualizações, trazer o código antigo para um novo visual não é uma tarefa fácil, e para um iniciante, é quase impossível!

Mais uma vez, tudo depende exatamente do que você vai fazer. Você pode começar a aprender as noções básicas da maneira antiga. Se você quiser algo específico, você terá que trabalhar para suar!
 

Que disparate é esse, cerca de 50%, algum tipo de problema e nenhuma informação sobre atualizações?

 
Você pode me dizer como fazer melhor?

Use MQL4 ou MQL5 - não há essencialmente nenhuma diferença.

Também não há complicações. Elas foram propositalmente inventadas como mitos e replicadas por aqueles que querem estragar a reputação de nossas plataformas de negociação. Bem, pelo menos de alguma forma, mas pelo menos de alguma forma.

A linguagem é muito simples e o OOP é opcional e não é de forma alguma uma complexidade nas linguagens de programação. Na verdade, não existem hoje em dia linguagens de programação geral que não contenham OOP.

Veja as centenas de artigos e milhares de programas em código fonte neste site. Eles são apenas cuidadosamente montados para um aprendizado rápido. Você pode facilmente usar os programas existentes como estruturas para seus próprios programas. Muitos começaram dessa forma.

 

Para informação, isso pode ajudar a fazer uma escolha:

  • O desenvolvimento do MT4 parou, a plataforma tem 10 anos, é obsoleta, embora esteja se aguentando bem devido à atualização cosmética que fizemos há um ano
  • No MT4, atualizaremos um pouco a integração com os serviços MQL5, mas não haverá novas funções
  • A linguagem MQL4 é congelada, assim como seu compilador
  • A MQL5 está se desenvolvendo tanto em termos de funcionalidade quanto de compilação. Em breve lançaremos uma nova versão do compilador otimizador, que gera código 2-4 vezes mais rápido. Este código funcionará somente com versões de 64 bits do terminal, se o SSE4.2 estiver disponível.
  • O MT5 já se tornou a plataforma HFT, e permite realizar até 300-500 transações comerciais por segundo a partir de um terminal em condições normais. Em nossos testes, conseguimos até 1 800 negócios por segundo a partir de um terminal com latência mínima de rede em modo assíncrono. Especialmente nosso serviço de hospedagem de terminais virtuais ajuda com isso. No MT4 isso não vai acontecer - tem uma arquitetura antiga e não há operações assíncronas.
  • A MT5 é uma plataforma multimercado e permite a negociação em bolsas de valores. Por exemplo, você pode negociar facilmente no MOEX.
  • Tecnologicamente, o MT5 é um avanço em relação ao MT4.
 

Muito obrigado pela resposta rápida. Concordo que a MT5 é melhor, mas muito poucos corretores a oferecem e os que a oferecem estão limitados a 30 pares de moedas + ouro e prata (me corrija se eu estiver errado). A MT4 é melhor neste aspecto: mais moedas e CFD em todos os tipos de ações, futuros e índices. Tenho a sensação de que a MT5 não é muito boa na Bolsa de Moscou, apenas 6 futuros mais ou menos líquidos e pronto (acho que ainda não há suporte para as ações, posso estar errado).

Posso usar um antigo curso e vídeo MQL4 (sem OOP), é possível estudar MQL4 e é muito diferente de outras versões?

A funcionalidade da antiga MQL4 é limitada pela nova construção do MT4?

Seria difícil migrar da antiga versão MQL4 para a nova?

Talvez haja alguma alternativa, que eu não tenha considerado?

Peço desculpas antecipadamente por possíveis perguntas bobas, estou apenas no início.

 

Por que se preocupar com tais perguntas?

Você precisa aprender como criar EAs? Então aprenda. Não importa se é no MT4 ou MT5. Uma vez que você aprenda uma, você mudará facilmente para a outra, se alguma limitação o impedir de fazê-lo.

Quais são as construções "antigas" e "novas"? Há uma construção atual. É aí que você deve escrever. Se ocorrer um erro durante a compilação, use a busca para encontrar o que é e corrigi-lo. Siga em frente.

"Não temer, não temer", "Temer os lobos - não caminhar no bosque", etc.

 
Renat:

Que disparate é esse, cerca de 50%, algum tipo de problema e nenhuma informação sobre atualizações?

Isto não é um disparate, mas uma declaração de fato. Alguns dos indicadores e conselheiros disponíveis pararam de funcionar. Eu corrigi alguns deles e sou preguiçoso demais para cavar em outros.
 
mmmoguschiy:
Isto não é um disparate, mas uma declaração de fato. Corrigi alguns dos indicadores e EAs, que tenho em meu poder, mas não outros. Eu corrigi alguns deles, mas sou preguiçoso demais para fazer qualquer coisa com eles.

No mínimo, não é verdade. Se você é um programador e escreve código, ele normalmente é recompilado pelo menos uma vez por mês. Há sempre desenvolvimento de programas, acrescentando características ou polimento.

Nada acontece "de repente" - há outra situação - você está dormindo há um ano ou dois e depois "de repente". Você tem que observar seus programas e não haverá problemas.

 
barabashkakvn:

No mínimo, não é verdade. Se você é um programador e escreve código, ele normalmente é recompilado pelo menos uma vez por mês. Há sempre desenvolvimento de programas, acrescentando características ou polimento.

Nada acontece "de repente" - há outra situação - você está dormindo há um ano ou dois e depois "de repente". Você precisa ficar de olho em seus programas e não terá nenhum problema.

Vamos lá!!! :) Eu tinha um programa que estava funcionando bem e que estava sendo aperfeiçoado. E então, bang, saíram 600 construções. E não faz diferença - se eu tinha ou não tinha visto antes - ocorreram mudanças nos metadados e, naquele exato momento, programas serrados e não serrados que usam os dados mudados pararam de funcionar de uma só vez! E não importava se era meu ou de outra pessoa.