Quaisquer perguntas de recém-chegados sobre MQL4 e MQL5, ajuda e discussão sobre algoritmos e códigos - página 1191
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
Como se conectar aos servidores Meta Quotes para que a biblioteca dll possa enviar pedidos e trocar dados para que a linguagem c++, não mql4, esteja envolvida na implementação da EA o máximo possível?
É possível desenhar objetos no MT4 usando a biblioteca dll, o que pode ser aprendido sobre isso?
Mas por que com iBars(symbol, timeframe) a história se revela incompleta, enquanto com iBars(Symbol(), Period()) ela é bastante normal? E isso acontece somente quando o terminal é reiniciado, nem sempre. E o símbolo das variáveis, o período de tempo é inicializado corretamente, na seção de inicialização (eu mesmo verifiquei).
Tente apertar meu exemplo:https://c.mql5.com/3/324/Test.mq5
Seqüência de ações:
1. atire o arquivo compilado para o gráfico. As mensagens que você recebe quando faz isso:
2. Termine o terminal e inicie-o novamente. As mensagens no log serão as seguintes:
Resolvido.
Em vez deste código
Eu escrevi o seguinte
Agora não há erros ao reiniciar o terminal. Mas o símbolo e o cronograma precisam ser inicializados apenas com valores vazios.
Aqui estão duas versões do código-fonte, com o bug e uma que funciona. Deixe-me lembrá-lo, a seqüência de testes é a seguinte:https://www.mql5.com/ru/forum/160683/page1189#comment_17047032
Como se conectar aos servidores Meta Quotes para que a biblioteca dll possa enviar pedidos e trocar dados para que a implementação do Expert Advisor envolva o máximo possível a linguagem C++ e não o mql4?
Não há como. O protocolo está fechado.
A biblioteca dll pode desenhar objetos no MT4? O que posso estudar sobre isso?
Não, você não pode.
Uau, eu vou checar. Sei que você pode inicializar variáveis com elementos de matriz com funções, mas não sabia que isso muda automaticamente, acho que também não há nada disso no c++, vou verificar mais tarde.
Eu cometi um erro (
Se você precisar recalcular o lote antes das operações comerciais, é melhor colocar a definição do lote no início do OnTick
ou (como eu o mudei) OnTimer
Olá! Por favor, ajude-me a emitir todos os valores, só posso emitir os últimos. E a segunda pergunta, como emitir esses valores com um deslocamento para a direita(definir qualquer deslocamento). Obrigado!
Onde posso ler sobre delimitadores na impressão? É mais ou menos delimitadores por vírgula, não consigo entender, é complicado.
Imprimir(a, b + "abc") ;
Negativo. O protocolo está fechado.
Você não pode.
O que significa que o protocolo está fechado. Há funções de abertura de ordem em mql4, é essencialmente apenas código. O mesmo se aplica aos objetos gráficos. Ouvi dizer que o mql4 é um produto comercial e por isso não há código fonte ou funções embutidas (por exemplo, Arrayresize/Range etc.). Por exemplo, não me sinto confortável em usar mql4 para escrever um programa, é uma linguagem muito morta, muito limitada. E quanto à linguagem Win API 32, ela não pode fazer nada em relação às minhas perguntas? Acho que tudo está fechado para Win API 32 também.
O que significa que o protocolo está fechado. Há funções de abertura de ordem em mql4, é essencialmente um código simples. O mesmo se aplica aos objetos gráficos. Ouvi dizer que o mql4 é um produto comercial e por isso não há código fonte ou funções embutidas (por exemplo, Arrayresize/Range etc.). Por exemplo, não me sinto confortável em usar mql4 para escrever um programa, é uma linguagem muito morta, muito limitada. E quanto à linguagem Win API 32, ela não pode fazer nada em relação às minhas perguntas? Provavelmente, tudo está trancado para Win API 32 também.
Seria melhor fazer um tópico separado, será mais animado)
Eu cometi um erro(
Se você precisar recalcular o lote antes de fazer uma operação comercial, é melhor colocar a definição do lote no início do OnTick
ou (como eu o mudei) OnTimer
O que eu quero dizer é que você inicializou a variável "lote" com expressão, você não pode ter esta expressão preenchida automaticamente. Você pode até mesmo verificá-lo, pegar um contador simples, atribuir o valor do contador durante a inicialização e depois mudar o contador e o valor do lote não mudará, a menos que você mesmo o mude. Funciona em C++.
Mas não funciona em mql4, só funciona assim
Resultado 67.
Melhor fazer um tópico separado, será mais animado)
Eu também estava pensando, o tópico é relevante, mas é claro que não vale a pena entupir o fórum, talvez não seja interessante para muitas pessoas. Estou interessado, eu gosto de escrever código em C++.