Como codificar? - página 193

 

Necessidade de ajuda para um alerta

Olá,

primeiro: desculpe pelo meu inglês. sou muito mau em inglês.

Então, mas minha pergunta é: como posso programar um sinal de alerta se tenkan e senkou cruzarem um ao outro? longo e curto.

Alguém pode me ajudar, por favor!!!

muito obrigado,

tchau benjamin

Arquivos anexados:
ichimoku.mq4  5 kb
 

Pequeno problema...

Alguém pode me ajudar a fazer funcionar para agir em pousio...

Eu tenho: A=0

Quando o indicador atinge determinado ponto nº1: A=1.

E quando o indicador sair deste determinado ponto: A=1 (A ainda mantém seu valor).

Quando o indicador atinge determinado ponto nr2: A=0.

Qualquer idéia é muito bem-vinda!

Obrigado.

 
ohir:
Alguém pode me ajudar a fazer funcionar para agir em pousio...

Eu tenho: A=0

Quando o indicador atinge determinado ponto nº1: A=1.

E quando o indicador sair deste determinado ponto: A=1 (A ainda mantém seu valor).

Quando o indicador atinge determinado ponto nr2: A=0.

Qualquer idéia é muito bem-vinda!

Obrigado.

É difícil saber exatamente o que você quer com tão pouco para continuar.

Que tal

A=0;

se (Licitação >= nr1 && Licitação < nr2) A=1;

if (Licitação >= nr2) A=0;

Substitua Bid por O,H,L,C ou qualquer outra variável que você queira.

Mas você também tem que pensar no que acontece se o preço atingir o nr1 e depois cair ao invés de ir para o nr2.

Basta lembrar que eu estou apenas adivinhando o que você quer.

Espero que tenha sido uma ajuda.

 

Como posso acessar um arquivo em meu disco rígido que não está na pasta /experts/files?

btw, é possível executar comandos do windows (por exemplo, copiar) em mql4? talvez com um arquivo dll?

Agradecemos antecipadamente :-)

 

Re swgman1

Obrigado, Swgman1!

... mas ainda é um problema para mim.

O que eu estou tentando dizer...

Início

O valor do Indicador1 é 0

O valor do Indicador2 é 0

A=0

Passo 1

O valor do Indicador1 é 1

O valor do Indicador2 é 0

A=1

Passo2

O valor do Indicador1 é 0

O valor do Indicador2 é 0

A=1

Passo3

O valor do Indicador1 é 0

O valor do Indicador2 é 1

A=0

Espero que seja mais claro

Obrigado.

 

Circuito esquisito...

Fiz um loop esquisito em meu programa de testes:

int A=1

for(A=0, A=1; A===(condição de compra); A++)

Comprar se(A=1)

Fechar se(Proposta>0)

Ele negocia depois que a contição desaparece... MAS, ele não fecha as negociações logo após a abertura (como deveria - Lance>0). Agora meu pograma fecha todas as negociações somente se aparecer a condição de compra.

O que este laço realmente faz?

 
ohir:
Eu fiz um loop estranho em meu programa de testes:

int A=1

for(A=0, A=1; A===(condição de compra); A++)

Comprar se(A=1)

Fechar se(Proposta>0)

Ele negocia depois que a contição desaparece... MAS, ele não fecha as negociações logo após a abertura (como deveria - Lance>0). Agora meu pograma fecha todas as negociações somente se aparecer a condição de compra.

O que este laço realmente faz?

Hey ohir,

Eu nunca realmente investiguei a escrita das EA, eu apenas fiz indicadores, portanto não sou a melhor pessoa para perguntar.

Entretanto, com um para loop você indica o ponto de partida (número de barra), depois sua condição para manter o loop funcionando, depois incrementa seu ponto de partida para o próximo loop.

para (x=bars-1;x>0;x--) isto fará o loop através de todas as barras no gráfico do primeiro ao último.

para (x=0;x<bars-1;x++) loop back the other way

x é apenas o contador do laço

O seu começa na barra 0 ou 1 (não tenho certeza de como funciona com a vírgula ali), depois, enquanto seu contador é igual à condição de compra (o impossível me parece) continua o laço, depois incrementar o contador.

Tente algo como

para (x=0;x<=bars-1;x++)

{

se (A[x]==1) OrderSend(blah,blah,blah,blah)

se (Bid[x]>0) OrderClose(blah,.....)

}

Não sei se alguma dessas coisas ajuda, mas é o melhor que posso fazer. Talvez alguém com mais conhecimento possa ser capaz de ajudar mais.

Boa Sorte

Swagman

 

Ajuda Por favor

Ok, entendi - descarte este post

Arquivos anexados:
trenddetect.mq4  14 kb
 

Metatrader e números neg

Qualquer pessoa conhece uma maneira melhor de codificar esta???? Não se pode fazer metatrader para ler os números exatos, alguns são positivos e outros são números negativos.

if (Use_Entry_Delay == true) {

//if (trendis == 0 || trendis == -0) {

//EntryAllowed= Verdadeiro;

// Imprimir ("Entrada Permitida");

//}

if (trendis == 0,0010){ EntryAllowed= true; Print ("Entry Allowed"); }

if (trendis == 0,0011){ EntryAllowed= true; Print ("Entrada Permitida"); }

if (trendis == 0,0012){ EntryAllowed= true; Print ("Entrada Permitida"); }

if (trendis == 0,0013){ EntryAllowed= true; Print ("Entrada Permitida"); }

if (trendis == 0,0014){ EntryAllowed= true; Print ("Entrada Permitida"); }

if (trendis == 0,0015){ EntryAllowed= true; Print ("Entrada Permitida"); }

if (trendis == 0,0016){ EntryAllowed= true; Print ("Entrada Permitida"); }

if (trendis == 0,0017){ EntryAllowed= true; Print ("Entrada Permitida"); }

if (trendis == 0,0018){ EntryAllowed= true; Print ("Entrada Permitida"); }

if (trendis == 0,0019){ EntryAllowed= true; Print ("Entrada Permitida"); }

if (trendis == 0,0020){ EntryAllowed= true; Print ("Entrada Permitida"); }

if (trendis == 0,0021){ EntryAllowed= true; Print ("Entrada Permitida"); }

if (trendis == 0,0022){ EntryAllowed= true; Print ("Entrada Permitida"); }

if (trendis == 0,0023){ EntryAllowed= true; Print ("Entrada Permitida"); }

if (trendis == 0,0024){ EntryAllowed= true; Print ("Entrada Permitida"); }

if (trendis == 0,0025){ EntryAllowed= true; Print ("Entrada Permitida"); }

if (trendis == 0,0026){ EntryAllowed= true; Print ("Entrada Permitida"); }

if (trendis == -0,0010){ EntryAllowed= true; Print ("Entrada Permitida"); }

if (trendis == -0.0011){ EntryAllowed= true; Print ("Entrada Permitida"); }

if (trendis == -0,0012){ EntryAllowed= true; Print ("Entrada Permitida"); }

if (trendis == -0,0013){ EntryAllowed= true; Print ("Entrada Permitida"); }

if (trendis == -0,0014){ EntryAllowed= true; Print ("Entrada Permitida"); }

if (trendis == -0,0015){ EntryAllowed= true; Print ("Entrada Permitida"); }

if (trendis == -0,0016){ EntryAllowed= true; Print ("Entrada Permitida"); }

if (trendis == -0,0017){ EntryAllowed= true; Print ("Entrada Permitida"); }

if (trendis == -0,0018){ EntryAllowed= true; Print ("Entrada Permitida"); }

if (trendis == -0,0019){ EntryAllowed= true; Print ("Entrada Permitida"); }

if (trendis == -0,0020){ EntryAllowed= true; Print ("Entrada Permitida"); }

if (trendis == -0,0021){ EntryAllowed= true; Print ("Entrada Permitida"); }

if (trendis == -0,0022){ EntryAllowed= true; Print ("Entrada Permitida"); }

if (trendis == -0,0023){ EntryAllowed= true; Print ("Entrada Permitida"); }

if (trendis == -0,0024){ EntryAllowed= true; Print ("Entrada Permitida"); }

if (trendis == -0,0025){ EntryAllowed= true; Print ("Entrada Permitida"); }

if (trendis == -0,0026){ EntryAllowed= true; Print ("Entrada Permitida"); }

}else{

EntryAllowed= falso;

Imprimir ("Entrada Não Permitida");

}

}

-----------------------------------------

então basicamente se seu -0,0010 ou inferior não o faz

se seu valor acima de 0,0026 ou acima de -0,0026 não o faz.

Muitas coisas não conseguem fazer isso.

Qualquer AJUDA por favor, por favor, por favor.

 
niteuser:
Qualquer pessoa conhece uma maneira melhor de codificar esta???? Não é possível conseguir que o metatrader leia os números exatos, alguns são positivos e outros são números negativos.

se (Use_Entry_Delay == verdadeiro) {

//if (trendis == 0 || trendis == -0) {

//EntryAllowed= Verdadeiro;

// Imprimir ("Entrada Permitida");

//}

if (trendis == 0,0010){ EntryAllowed= true; Print ("Entry Allowed"); }

if (trendis == 0,0011){ EntryAllowed= true; Print ("Entrada Permitida"); }

if (trendis == 0,0012){ EntryAllowed= true; Print ("Entrada Permitida"); }

if (trendis == 0,0013){ EntryAllowed= true; Print ("Entrada Permitida"); }

if (trendis == 0,0014){ EntryAllowed= true; Print ("Entrada Permitida"); }

if (trendis == 0,0015){ EntryAllowed= true; Print ("Entrada Permitida"); }

if (trendis == 0,0016){ EntryAllowed= true; Print ("Entrada Permitida"); }

if (trendis == 0,0017){ EntryAllowed= true; Print ("Entrada Permitida"); }

if (trendis == 0,0018){ EntryAllowed= true; Print ("Entrada Permitida"); }

if (trendis == 0,0019){ EntryAllowed= true; Print ("Entrada Permitida"); }

if (trendis == 0,0020){ EntryAllowed= true; Print ("Entrada Permitida"); }

if (trendis == 0,0021){ EntryAllowed= true; Print ("Entrada Permitida"); }

if (trendis == 0,0022){ EntryAllowed= true; Print ("Entrada Permitida"); }

if (trendis == 0,0023){ EntryAllowed= true; Print ("Entrada Permitida"); }

if (trendis == 0,0024){ EntryAllowed= true; Print ("Entrada Permitida"); }

if (trendis == 0,0025){ EntryAllowed= true; Print ("Entrada Permitida"); }

if (trendis == 0,0026){ EntryAllowed= true; Print ("Entrada Permitida"); }

if (trendis == -0,0010){ EntryAllowed= true; Print ("Entrada Permitida"); }

if (trendis == -0.0011){ EntryAllowed= true; Print ("Entrada Permitida"); }

if (trendis == -0,0012){ EntryAllowed= true; Print ("Entrada Permitida"); }

if (trendis == -0,0013){ EntryAllowed= true; Print ("Entrada Permitida"); }

if (trendis == -0,0014){ EntryAllowed= true; Print ("Entrada Permitida"); }

if (trendis == -0,0015){ EntryAllowed= true; Print ("Entrada Permitida"); }

if (trendis == -0,0016){ EntryAllowed= true; Print ("Entrada Permitida"); }

if (trendis == -0,0017){ EntryAllowed= true; Print ("Entrada Permitida"); }

if (trendis == -0,0018){ EntryAllowed= true; Print ("Entrada Permitida"); }

if (trendis == -0,0019){ EntryAllowed= true; Print ("Entrada Permitida"); }

if (trendis == -0,0020){ EntryAllowed= true; Print ("Entrada Permitida"); }

if (trendis == -0,0021){ EntryAllowed= true; Print ("Entrada Permitida"); }

if (trendis == -0,0022){ EntryAllowed= true; Print ("Entrada Permitida"); }

if (trendis == -0,0023){ EntryAllowed= true; Print ("Entrada Permitida"); }

if (trendis == -0,0024){ EntryAllowed= true; Print ("Entrada Permitida"); }

if (trendis == -0,0025){ EntryAllowed= true; Print ("Entrada Permitida"); }

if (trendis == -0,0026){ EntryAllowed= true; Print ("Entrada Permitida"); }

}else{

EntryAllowed= falso;

Imprimir ("Entrada Não Permitida");

}

}

-----------------------------------------

então basicamente se seu -0,0010 ou inferior não o faz

se seu valor acima de 0,0026 ou acima de -0,0026 não o faz.

Muitas coisas não conseguem fazer isso.

Qualquer AJUDA, por favor, por favor.
if ((trendis = 0.0026)) { EntryAllowed= true; Print ("Entry Allowed"); }