[AVISO FECHADO!] Qualquer pergunta de novato, para não desorganizar o fórum. Profissionais, não passem por aqui. Não posso ir a lugar algum sem você. - página 331

 

Para Roger.

Não vou vender, não vou vender, estou bem com dinheiro. Eu quero compartilhar idéias e entender a razão de minha estupidez ))

 

Por favor, informe como chamar indicadores AO e AC personalizados através do iCustom. E como escrever a seguinte condição através do iCustom. Agradecemos antecipadamente.


if (iAO(NULL,0,i) > iAO(NULL,0,i+1) && iAC(NULL,0,i)> iAC(NULL,0,i+1))
{ }
else
if (iAO(NULL,0,i) < iAO(NULL,0,i+1) && iAC(NULL,0,i) < iAC(NULL,0,i+1))

 
Stepan241 >> :

Pessoal, boa tarde.

Encontrei um Detector de Tendências em um dos fóruns. O autor afirmou que mostra muito bem a tendência e pode me ajudar na criação de um sistema oscilador. Mas ele a implementou diretamente em seu Conselheiro Especialista. Tentei fazer um indicador com base nisso. Quero ver se o cálculo está correto.

Eu cito o autor:

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

Eu não esperava um resultado tão bom desta minha descoberta. Acidentalmente o cegou - colocá-lo para cima. E até saltou da surpresa!

Este método também tem sido ligeiramente discutido aqui - aqui https://www.mql5.com/ru/forum/105321/page11



 

Boa tarde a todos.

Você poderia me dizer como calcular o número de travessias do preço de um determinado nível? Quero que meu pedido abra após 3 (4,5...), mas não após a primeira travessia.

Obrigado.

 
Por favor, diga-me como escrever as seguintes condições. Se o preço atual for inferior ao preço médio do dia, então.... e segundo, se o preço às 14,56 (por exemplo) do dia atual for mais alto que o preço atual, então... Seria muito interessante obter uma resposta. Eu mesmo ainda não posso resolver o problema. Obrigado de antemão.
 
future >> :
Por favor, diga-me como escrever as seguintes condições. Se o preço atual for inferior ao preço médio do dia, então.... e segundo, se o preço às 14,56 (por exemplo) do dia atual for mais alto que o preço atual, então... Seria muito interessante obter uma resposta. Eu mesmo ainda não posso resolver o problema. Obrigado de antemão.
extern string xxxxxxxxxxxxx="x=0 сегодня х=1 вчера итд";
extern int х=0;
int середина=(iHigh(0,PERIOD_D1, х)-iLow(0,PERIOD_D1, х))/2;
if(Bid> середина)...;
if(Ask< середина)...;


extern datetime some_time=D'14:56';
int середина_some_time=(iHigh(0,0,iBarShift(0,0, some_time))-iLow(0,0,iBarShift(0,0, some_time)))/2;
if(Bid> середина_some_time)...;
if(Ask< середина_some_time)...;
 
skifodessa >> :

Boa tarde a todos.

Você poderia me dizer como calcular quantas vezes o preço cruzou um determinado nível? Quero abrir a ordem após 3 (4,5...), mas não após a travessia do primeiro nível.

Obrigado.

Eu entendi que as condições serão limitadas no tempo! (a terceira travessia virá amanhã ))))

Aconselho a acrescentar às condições os dados da fama sênior. (se M5...M30 então H1...H4)

Por exemplo

if(ССI(M5)>0 && CCI(H1)>0 ) OpenB();
 
Stepan241 писал(а) >>

Pessoal, boa tarde.

Em um dos fóruns, encontrei um INDICADOR DE TERCEIROS.

https://www.mql5.com/ru/forum/105321/page11#53278

 
Necron >> :

Favor aconselhar como chamar um indicador personalizado AO e AC através do iCustom. E como especificar a seguinte condição através do iCustom. Obrigado de antemão.


if (iAO(NULL,0,i) > iAO(NULL,0,i+1) && iAC(NULL,0,i)> iAC(NULL,0,i+1))
{ }
else
if (iAO(NULL,0,i) < iAO(NULL,0,i+1) && iAC(NULL,0,i) < iAC(NULL,0,i+1))

Por que você precisa chamá-los através do iCast? É para a unificação? Bem, escreva um indicador-embalador separado para cada um deles e use iCustom para chamá-los...

 
skifodessa >> :

Boa tarde a todos.

Você poderia me dizer como calcular quantas vezes o preço cruzou um determinado nível? Quero que meu pedido abra após 3 (4,5...), mas não após a passagem do primeiro nível.

Obrigado.

Por exemplo, aqui está uma variante universal. A propósito, seria útil ter uma função para detectar travessias:

int Cross(double a[], double level, int pos)
{
   if( a[ pos]< level&& a[ pos+1]> level) return(-1);
   if( a[ pos]> level&& a[ pos+1]< level) return(1);
   return(0);
}

ou seja, se a travessia for para cima, é 1, se for para baixo -1, caso contrário é 0

Agora conte (limite_de_barras - dispersão máxima do tempo)

int count=0;
for ( i=0; i< bars_limit; i++)
{
   if( Cross( a, level, i)==1) count++;// ну или -1 если пересечения вниз считаем
}

if( count>=3) //4,5,...
{
...
}
Razão: