[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 192
Por favor, me dê uma dica. Eu não entendo porque a MathMax não funciona.
A versão simplificada do código (não poderia ser mais simples) também não funciona. A variável GBPUSD_High não funciona :-( Enquanto GBPUSD_Low funciona bem.
P.S. Só estou interessado nos valores nas barras a partir do momento em que o indicador é carregado.
//+ # indicador de propriedade_separate_window # indicadores de propriedade_buffers3 # indicador de propriedade_color1 Preto # indicador de propriedade_color2 Cinza # indicador de propriedade_color3 Cinza // duplo GBPUSD[], GBPUSD_High[], GBPUSD_Low[]; // int init() { // SetIndexBuffer(0,GBPUSD); SetIndexStyle (0,DRAW_LINE,STYLE_SOLID,2); SetIndexBuffer(1,GBPUSD_High); SetIndexS ty le(1,DRAW_LINE,STYLE_DOT,1); SetIndexBuffer(2,GBPUSD_Low); SetIndexStyle (2,DRAW_LINE,STYLE_DOT,1); // return; } // int start() { int Counted_bars, i; // Counted_bars=IndicatorCounted(); i=Bars-Counted_bars-1; while (i>=0) { GBPUSD[i]=Close[i]; if (GBPUSD_Low[i]==0) GBPUSD_Low[i]=GBPUSD[i]; GBPUSD_High[i]=MathMax(GBPUSD_High[i],GBPUSD[i]); GBPUSD_Low[i]=MathMin(GBPUSD_Low[i],GBPUSD[i]); i--; } // return; } //
Por favor, me dê uma dica. Eu não entendo porque a MathMax não funciona.
A versão simplificada do código (não poderia ser mais simples) também não funciona. A variável GBPUSD_High não funciona :-( Enquanto GBPUSD_Low funciona bem.
P.S. Só estou interessado nos valores nas barras a partir do momento da carga do indicador.
Exatamente! Tão claramente Alto é sempre maior ou igual a Close, MathMin é o mesmo ;)
Como exemplo, dei propositadamente o cálculo de valores já conhecidos. No original, estou procurando o máximo e o mínimo em uma barra de uma variável completamente diferente. Quando o indicador é traçado, a curva da variável é redesenhada enquanto a barra está sendo formada, é claro. Estou à procura dos pontos de fronteira.
Não entendo porque a função MathMax não funciona por si só. MathMin funciona bem; GBPUSD_Low curve is draw...
Em termos de gramática de programação, você tem alguma observação a fazer?
Por favor, instale o indicador, diga-me o que está errado, porque GBPUSD_High não é calculado.
Como exemplo, eu dei propositadamente o cálculo de valores já conhecidos. No original, eu procuro o máximo e o mínimo em uma barra de uma variável completamente diferente. Quando o indicador é exibido, a curva da variável é redesenhada, é claro, durante a formação da barra. Estou à procura dos pontos de fronteira.
Não entendo porque a função MathMax em si não funciona.
Você tem alguma observação do ponto de vista gráfico de programação?
Instale o indicador e me diga o que está errado aqui, porque GBPUSD_High não é calculado.
Não se deixe enganar. Cole isto em sua parte favorita do código:
Você já recebeu a resposta acima. O motivo é utilizar um valor não atribuído na parte direita do operador de atribuição. O que é GBPUSD_High[i] igual na cadeia
GBPUSD_High[i]=MathMax(GBPUSD_High[i],GBPUSD[i]);
Foi-lhe mostrada uma opção para corrigir a situação também. Deixe a ironia para trás.
A razão é o uso de um valor não atribuído no lado direito do operador da atribuição.
Portanto, declarar buffers indicadores não significa que os valores das células sejam zero. Certo?
Portanto, o MathMax não é calculado como um dos valores a ser comparado (ou seja, GBPUSD_High) não tem nenhum valor (nem mesmo zero).
Estou vendo. Obrigado OneDepo.
Peço desculpas por confundir a todos com minha simplificação (trocadilho pretendido). Como já mencionei, não estou interessado no valor das aspas altas, estou interessado no valor máximo na barra de minha própria função, cuja curva o indicador desenha e rebobina com sucesso enquanto está formando a barra. Esta é a gama de redesenho de indicadores durante a barra em que eu estava interessado.
Vou pensar sobre isso.
P.S. Mas por que a MathMin é considerada sem problemas, as condições são iguais e são declaradas as mesmas?
P.S. Eu sou muito franco. Eu não posso fazer isso. Ajude, por favor.
Para login e uso do site MQL5.com, você deve ativar o uso de cookies.
Ative esta opção no seu navegador, caso contrário você não poderá fazer login.
Você entrou na conta. A autenticação de dois fatores foi desativada. Configure-a novamente e escaneie um novo código QR ou continue com a autenticação de dois fatores desativada.
Por favor, me dê uma dica. Eu não entendo porque a MathMax não funciona.
A versão simplificada do código (não poderia ser mais simples) também não funciona. A variável GBPUSD_High não funciona :-( Enquanto GBPUSD_Low funciona bem.
P.S. Só estou interessado nos valores nas barras a partir do momento em que o indicador é carregado.
//+
# indicador de propriedade_separate_window
# indicadores de propriedade_buffers3
# indicador de propriedade_color1 Preto
# indicador de propriedade_color2 Cinza
# indicador de propriedade_color3 Cinza
// duplo GBPUSD[], GBPUSD_High[], GBPUSD_Low[];
//
int init()
{
//
SetIndexBuffer(0,GBPUSD); SetIndexStyle (0,DRAW_LINE,STYLE_SOLID,2);
SetIndexBuffer(1,GBPUSD_High);
SetIndexS ty le(1,DRAW_LINE,STYLE_DOT,1); SetIndexBuffer(2,GBPUSD_Low);
SetIndexStyle (2,DRAW_LINE,STYLE_DOT,1);
//
return;
}
//
int start()
{
int Counted_bars, i;
//
Counted_bars=IndicatorCounted();
i=Bars-Counted_bars-1;
while (i>=0)
{
GBPUSD[i]=Close[i];
if (GBPUSD_Low[i]==0) GBPUSD_Low[i]=GBPUSD[i];
GBPUSD_High[i]=MathMax(GBPUSD_High[i],GBPUSD[i]);
GBPUSD_Low[i]=MathMin(GBPUSD_Low[i],GBPUSD[i]);
i--;
}
//
return;
}
//
Para carregar, é claro, para GBPUSD.
Por favor, me dê uma dica. Eu não entendo porque a MathMax não funciona.
A versão simplificada do código (não poderia ser mais simples) também não funciona. A variável GBPUSD_High não funciona :-( Enquanto GBPUSD_Low funciona bem.
P.S. Só estou interessado nos valores nas barras a partir do momento da carga do indicador.
É claro, tenho que carregá-lo para GBPUSD.
A MathMax não tem nada a ver com isso. Variante:
>>A MathMax não tem nada a ver com isso.
Exatamente! Tão claramente Alto é sempre maior ou igual a Close, MathMin é o mesmo ;)
Exatamente! Tão claramente Alto é sempre maior ou igual a Close, MathMin é o mesmo ;)
Como exemplo, dei propositadamente o cálculo de valores já conhecidos. No original, estou procurando o máximo e o mínimo em uma barra de uma variável completamente diferente. Quando o indicador é traçado, a curva da variável é redesenhada enquanto a barra está sendo formada, é claro. Estou à procura dos pontos de fronteira.
Não entendo porque a função MathMax não funciona por si só. MathMin funciona bem; GBPUSD_Low curve is draw...
Em termos de gramática de programação, você tem alguma observação a fazer?
Por favor, instale o indicador, diga-me o que está errado, porque GBPUSD_High não é calculado.
Como exemplo, eu dei propositadamente o cálculo de valores já conhecidos. No original, eu procuro o máximo e o mínimo em uma barra de uma variável completamente diferente. Quando o indicador é exibido, a curva da variável é redesenhada, é claro, durante a formação da barra. Estou à procura dos pontos de fronteira.
Não entendo porque a função MathMax em si não funciona.
Você tem alguma observação do ponto de vista gráfico de programação?
Instale o indicador e me diga o que está errado aqui, porque GBPUSD_High não é calculado.
Não se deixe enganar. Cole isto em sua parte favorita do código:
e você terá uma epifania na aba "especialistas".Não se deixe enganar. você coloca isto no lugar onde você gosta do código:
e você terá uma epifania na aba "especialistas".Então o que...
Não há epifania. Imprime apenas dois valores, da mesma forma que exibe o indicador. E quanto ao terceiro?
Você já tentou ao menos fazer o que aconselha?
Próxima pergunta, por favor :)
Muito inteligente.
Obrigado pela "ajuda".
Muito inteligente.
Obrigado pela "ajuda".
Você já recebeu a resposta acima. O motivo é utilizar um valor não atribuído na parte direita do operador de atribuição. O que é GBPUSD_High[i] igual na cadeia
Foi-lhe mostrada uma opção para corrigir a situação também. Deixe a ironia para trás.
A razão é o uso de um valor não atribuído no lado direito do operador da atribuição.
Portanto, declarar buffers indicadores não significa que os valores das células sejam zero. Certo?
Portanto, o MathMax não é calculado como um dos valores a ser comparado (ou seja, GBPUSD_High) não tem nenhum valor (nem mesmo zero).
Estou vendo. Obrigado OneDepo.
Peço desculpas por confundir a todos com minha simplificação (trocadilho pretendido). Como já mencionei, não estou interessado no valor das aspas altas, estou interessado no valor máximo na barra de minha própria função, cuja curva o indicador desenha e rebobina com sucesso enquanto está formando a barra. Esta é a gama de redesenho de indicadores durante a barra em que eu estava interessado.
Vou pensar sobre isso.
P.S. Mas por que a MathMin é considerada sem problemas, as condições são iguais e são declaradas as mesmas?
P.S. Eu sou muito franco. Eu não posso fazer isso. Ajude, por favor.