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

 

Um código desse tipo pode ser prescrito?

(A distância entre linhas deve ser de 10 pips)

int OnInit()
{

ObjectCreate("Средняя линия",OBJ_HLINE,0,0,Bid); 

ObjectCreate("Верхняя линия",OBJ_HLINE,0,0,Bid+0.0010); 

ObjectCreate("Нижняя линия",OBJ_HLINE,0,0,Bid-0.0010); 


return(INIT_SUCCEEDED);
}


Ou pode acontecer que o EA desenhe a linha média, e então a oferta muda, e a segunda linha não sairá da linha média em 10 pips?

É possível que a Licitação mude durante a execução da EA? Ou o valor do Bid mudará somente se o RefreshRates estiver em execução?


Talvez fosse mais correto?

int OnInit()
{

sredn=Bid;
verhn=sredn+0.0010;
nizhn=sredn-0.0010;


ObjectCreate("Средняя линия",OBJ_HLINE,0,0,sredn); 

ObjectCreate("Верхняя линия",OBJ_HLINE,0,0,verhn); 

ObjectCreate("Нижняя линия",OBJ_HLINE,0,0,nizhn); 



return(INIT_SUCCEEDED);
}
 
igrok333:

É possível escrever este código?

(a distância entre linhas deve ser de 10 pips)


Ou pode acontecer que o EA desenhe a linha média, e então a Licitação muda, e a segunda linha não está mais a 10 pips de distância da linha média?


Está certo?

A licitação não mudará se não houver uma chamada de atualização no meio,

Mas não é muito correto usar o Bid no OnInit(). Primeiro, a conexão pode ser quebrada ou o mercado pode ser fechado, esta é uma delas; o Bid no OnInit é uma característica, que pode ser alterada, esta é duas :-) E finalmente - o objetivo do OnInit() é a inicialização, ou seja, verificar se tudo está pronto para continuar o trabalho e responder SIM / NÃO. Confiar em funções comerciais ou criar objetos gráficos não é bom. É aceitável, mas não correto.

 
Maxim Kuznetsov:

A licitação não mudará se não houver uma chamada de atualização no meio,

Mas o uso de Bid in OnInit() não é totalmente correto. Primeiro, a conexão pode não existir ou o mercado pode estar fechado, esta é uma delas; o próprio suporte de Bid in OnInit é uma característica, que pode ser alterada, esta é duas :-) E finalmente - o objetivo do OnInit() é a inicialização, ou seja, verificar se tudo está pronto para continuar o trabalho e responder SIM / NÃO. Confiar em funções comerciais ou criar objetos gráficos não é bom. É aceitável, mas não correto.

Sim, de fato.

Tenho então um comércio aberto na linha média.

Se você quiser abrir uma posição na linha do meio, é melhor mover a onitics para a função ontick, pois ela esperará que o novo onitick abra.

é melhor mover a construção da linha para o início da função onítica

 

É possível fazer o roteiro funcionar no testador?
Se eu atirar na janela, nada acontece. Em um gráfico normal, o roteiro funciona

 
RomanRott:

É possível fazer o roteiro funcionar no testador?

Não e não há necessidade disso. Tudo pode ser testado em qualquer gráfico ou em modo de depuração.
 
RomanRott:

Pretendo escrever algum código em meu indicador/conselheiro que conectará outros indicadores de uma só vez.
O que e como posso acrescentar?


Se você quiser que outro indicador pounce, você não pode fazer isso!

É possível desenhar outro ao lado de seu indicador. Para este fim, você pode usar a função iCustom e usá-la para extrair os dados que você precisa.

 

Criei três EAs em MT4 com diferentes "mágicas" e estratégias, combinei-as em um EA, cada estratégia funciona separadamente, mas quando ligo três de uma vez, a terceira estratégia não modifica sua "mágica" PORQUE???? tudo no testador.

E também, deve colocar um selimit, mas coloca igual número de selimits. (se 2 sels, então 2 selimits aposta, se 5 sels, então aposta 5 selimits).

 
ZZuretc:

Você pode me aconselhar, no MT4 eu criei três EAs com diferentes "mágicas" e estratégias, eu as combinei em um EA, separadamente cada estratégia funciona, mas quando você habilita três de uma vez, a terceira estratégia não modifica suas "mágicas" PORQUE??? tudo no testador.

E também, deve colocar um selimit, e coloca igual ao número de vendas. (Se 2 sels, então 2 selimits coloca, se 5 sels, então coloca 5 selimits).


O que posso dizer, ele não identifica corretamente suas ordens, posições para cada uma das estratégias.

Tenho que olhar para o código.

 
ZZuretc:

Criei três EAs em MT4 com diferentes "mágicas" e estratégias, combinei-as em um EA, cada estratégia funciona separadamente, mas quando ligo três de uma vez, a terceira estratégia não modifica sua "mágica" PORQUE???? tudo no testador.

E também, deve colocar um selimit, mas coloca igual número de selimits. (se 2 sels, então 2 selimits aposta, se 5 sels, então aposta 5 selimits).

Ao combinar 3 ---> 1 você tem que seguir uma certa regra. Cada estratégia tem cabeça, tronco, pernas. Você pega as três cabeças. E o tronco e as pernas, você escolhe o melhor dos três. Três torsos e seis pernas são excessivos...

 
ZZuretc:
Sou especialista em postagem, bibliotecas e incluir arquivos, verificar se há erros, no início funciona sem erros, mas depois pode dar um diferente a cada vez. (Para testes, colocar um tique e um alce 20)

Para começar:

variáveis, visibilidade variável

como eles são declarados, onde?

Razão: