Quaisquer perguntas de recém-chegados sobre MQL4 e MQL5, ajuda e discussão sobre algoritmos e códigos - página 622

 
neverness:

Nós não somos crianças, somos indivíduos perfeitamente sãos.

Não vamos tentar sussurrar e enganar uns aos outros.

Mais uma vez, repito minha pergunta:

Por favor, me dê um código simples do indicador, no qual algum objeto de script (OnStart(), por exemplo, uma elipse) é construído.

O procedimento é o seguinte:

Você entra no MetaEditor. Clique em File->Create....

Clique em Indicador.

E neste ambiente você insere o código do objeto de script (OnStart(), por exemplo, elipse).

É tão simples!!!

Boa sorte!!!

Por que você chamaria um script de um indicador se toda a funcionalidade necessária pode ser descrita no indicador?
 
Vitaly Gorbunov:
Por que você precisa chamar um script do indicador, se todas as funcionalidades necessárias podem ser descritas no indicador?

Este é o procedimento mais simples em qualquer ambiente de programação. Em C++ não há nenhum problema com isso.

Nós construímos um objeto gráfico a partir de um fluxo de dados. A posição, forma e outras características do objeto dependem dos valores deste fluxo.

Como o indicador é responsável pelo fluxo de dados de entrada no ambiente MQL, nós construímos os objetos de interesse neste ambiente.

Tudo é lógico.

Mas a MQL não permite a construção desses objetos.

Isto apesar de não ser um problema em C++, BASIC, JavaScript ou qualquer outro ambiente de programação.

Que tipo de "funcionalidade necessária" você pretendia descrever é um mistério para mim.

Em geral.

Os programadores geralmente falam em uma LÍNGUA DE CÓDIGO.

Se você puder fazê-lo, por favor, me dê um EXEMPLO de CÓDIGO!

Se não puder, você não tem outra opção senão concordar comigo.

É tão simples quanto isso!

 

То есть, требуется не просто бросить объект на форму, или создать независимый ни  от чего объект, как в Вашем примере, а внедрить этот объект в вычислительную среду индикатора .

Em outras palavras, se o fluxo de dados indicadores mudar, o objeto gráfico também muda.

Não, como em seu exemplo, apenas um boneco na tabela que não depende de nada.


Qual é o problema se o indicador souber como trabalhar com este objeto, ele funcionará com este objeto. Você pode descrever concretamente o problema? Caso contrário, estamos discutindo um cavalo esférico no vácuo.

 
neverness:

Este é o procedimento mais simples em qualquer ambiente de programação. Em C++ não há nenhum problema com isso.

Nós construímos um objeto gráfico a partir de um fluxo de dados. A posição, forma e outras características do objeto dependem dos valores deste fluxo.

Como o indicador é responsável pelo fluxo de dados de entrada no ambiente MQL, nós construímos os objetos de interesse neste ambiente.

Tudo é lógico.

Mas a MQL não permite a construção desses objetos.

Isto apesar de não ser um problema em C++, BASIC, JavaScript ou qualquer outro ambiente de programação.

Que tipo de "funcionalidade necessária" você pretendia descrever é um mistério para mim.

Em geral.

Os programadores geralmente falam em uma LÍNGUA DE CÓDIGO.

Se você puder fazê-lo, por favor, me dê um EXEMPLO de CÓDIGO!

Se não puder, você não tem outra opção senão concordar comigo.

É tão simples quanto isso!

Não saber como usar a linguagem não é motivo para ser insultado.

Os códigos são abundantes em codobase, diferentes, para todos os gostos e cores.

MQL5 Code Base
MQL5 Code Base
  • www.mql5.com
Две одинаковые торговые системы (для лонгов и шортов), построенные на сигналах индикатора ColorSchaffJJRSXTrendCycle, которые можно настраивать различным образом в одном эксперте с возможностью менять размер предстоящей сделки в зависимости от результатов предыдущих сделок для данной торговой системы.
 

Строим графический объект по потоку данных. Положение объекта, его форма и другие характеристики зависят от значений этого потока.

Como o indicador é responsável pelo fluxo de dados de entrada no ambiente MQL, nós construímos os objetos de interesse neste ambiente.

Tudo é lógico.

Mas a MQL não permite a construção destes objetos.


Que objeto não pode ser construído no indicador?

 
Vitaly Gorbunov:

Qual é o problema se o indicador sabe como trabalhar com este objeto, ele irá trabalhar com este objeto. Você pode descrever especificamente o problema? Caso contrário, estamos discutindo um cavalo esférico em um vácuo.

O assunto é simples.

Tomemos o evento do indicador

int OnCalculate(const int rates_total,
const int prev_calculated,
const datetime &time[],
const double &open[],
const double &high[],
const double &low[],
const double &close[],
const long &tick_volume[],
const long &volume[],
const int &spread[])

e, por exemplo, pegue um fio de valores orn[] e se o valor neste fio for maior que o pré-ajustado, construiremos algum objeto de roteiro gráfico em um determinado ponto do gráfico com as características calculadas.

Tudo é elementar e simples.

Em outras palavras, precisamos incorporar o objeto de script OnStart() no campo de dados OnCalculate() e construir o objeto de interesse com valores calculados.

É elementar e simples.

Como fazer isso em MQL ???

 
Vitaly Muzichenko:

Não saber usar a língua não é motivo para ser insultado.

Os códigos abundam em kodobase, de todos os tipos, para atender a todos os gostos e cores.

A falta de habilidade é soletrada em conjunto -> https://ru.wiktionary.org/wiki/неумение

Eu já disse antes que deixei deliberadamente de fora a "casca matemática" da MQL.

Isto também se refere àqueles "códigos muito diferentes" que "abundam em kodobase" e que são para todos os "gostos e cores".

Bem, caro Vitaly!

Eu mesmo tomo tais observações a meu respeito como um insulto.

E seja gentil o suficiente para obter uma parte da resposta.

Aqui está.

Como você observou corretamente, todos os tipos de "códigos milagrosos" que proporcionam 1000% de lucro em kodobase realmente mais do que suficiente.

Mas todo o problema é como são verdadeiras as informações que nos são oferecidas pelos autores destes códigos.

E se formularmos matematicamente com rigor a tarefa de construir EAs "win-win-win", esta tarefa soará algo como isto

A redação do problema:

É possível construir uma EA que dê um resultado vantajoso para todos em qualquer situação selecionada por esta EA?

Solução do problema.

Portanto.

Quanto à solução puramente matemática do problema, podemos especificar a combinação de

de fluxo de cotações, nas quais esta EA perderá intencionalmente, e o comerciante perderá intencionalmente seus fundos.

É claro que não vou dar uma solução puramente matemática para este problema, mas você pode ter certeza de que é verdade.

Isto é, do ponto de vista matemático, para qualquer consultor, você pode especificar tais ou tais situações quando as ações desta EA não serão lucrativas para um comerciante.


Se agora abordarmos a questão do ponto de vista jurídico, todas as ofertas de venda de qualquer Conselheiro nada mais são do que outro "esquema fraudulento",

Porque nenhum Expert Advisor é capaz de fornecer um "win-win".


Portanto, caro Vitaly, nenhum "saber usar a língua" e nenhum "saber usar códigos" protegerá um comerciante de perdas.

E isso certamente não pode ser um insulto.

Portanto, da próxima vez, escolha seu idioma com mais cuidado.

 
Vitaly Gorbunov:

Que objeto não pode ser construído no indicador?

Bem, construa alguns.

Pessoalmente, não vejo nenhum desses objetos no horizonte que possa ser construído.

Eu gostaria de ver pelo menos alguma coisa.

Afinal, eu ainda sou um "novato" da MQL. Talvez eu não saiba alguma coisa ou tenha negligenciado alguma coisa.

 
neverness:

É simples.

Assumimos um evento indicador

int OnCalculate(const int taxas_total,
const int prev_calculado,
const datetime &time[],
const double &open[],
const double &high[],
const double &low[],
const double &close[],
const long &tick_volume[],
const long &volume[],
const int &spread[])

e, por exemplo, pegue um fio de valores oren[], e se o valor neste fio for maior que o pré-definido, construiremos algum objeto gráfico de roteiro em um determinado ponto calculado do gráfico com as características calculadas.

Tudo é elementar e simples.

Em outras palavras, precisamos incorporar o objeto de script OnStart() no campo de dados OnCalculate() e construir o objeto de interesse com valores calculados.

É elementar e simples.

Como fazer isso na MQL?

Bem, construa este objeto e depois o controle.

Que tal isto - descrever uma tarefa simples, e na segunda-feira tentarei implementá-la.

 
Vitaly Gorbunov:

Então construa este objeto e depois controle-o. Qual é o problema?

Digamos que você descreva uma tarefa simples e eu tentarei implementá-la na segunda-feira.

Eu já descrevi uma tarefa simples.

MetaEditor aberto.

Clique em File->Create.

No campo pop-up, selecione Indicador.

No indicador OnCalculate() introduza qualquer objeto de script com o evento OnStart().

Pessoalmente, não sei como fazer isso. Por exemplo, assim:

int OnCalculate(const int rates_total,
const int prev_calculated,
const datetime &time[],
const double &open[],
const double &high[],
const double &low[],
const double &close[],
const long &tick_volume[],
const long &volume[],
const int &spread[])
{
//---
for(int i = 1; i < 100;i++)

{

if(open[i] > Max)

{

OnStart()

E aqui precisamos escrever um roteiro para construir o objeto em que estamos interessados. Por exemplo, uma elipse ou uma carta em uma carta ou outra coisa

} //if(aberto)

} //for(int i)
//--- valor de retorno de pré_cálculo para próxima chamada
return(rates_total);
} // OnCalculate

Isto deve ser algo parecido com isto.

Mas este código não é aceito pelo tradutor da MQL.