[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 1101

 
raduga7:
Prezados especialistas em MQL4

Em metastock eu entendo If((Ref(H,-1) >Ref(H,0)) AND (Ref(H,-2) < Ref(H,-1) ), Ref( H,-1),PREV); mas sou novo na MQL4.

Nunca vi meta-estoque, e a sintaxe MT4/MT% é quase idêntica à C/C++.

o tutorial/livro tem exemplos de operador if(): https: //book.mql4.com/ru/operators/if nada parece muito complicado.

Aqui também estão algumas informações sobre funções e como escrevê-las você mesmo: https: //book.mql4.com/ru/operators/function

 
Danil93:
Erro 4109 - negociação não permitida. Como consertá-lo?


O servidor não permite que você negocie - deve ser um feriado, ou não há nenhuma caixa de seleção nas configurações do terminal para permitir a negociação. Coloque assim (Serviço - Ajustes):

 
IgorM:

Nunca vi metastock, e a sintaxe MT4/MT% é quase a mesma do C/C++

há exemplos de operadores de if() no tutorial/handbook: https: //book.mql4.com/ru/operators/if

há também informações sobre funções e como escrevê-las você mesmo: https: //book.mql4.com/ru/operators/function


Eu costumava ser um grande usuário de Metastock. Infelizmente, o MT4 é mais simples e mais conveniente. É verdade, há muito mais indicadores em Metastock. Mas o aprendizado do MQl elimina este problema. Mais ainda, mesmo sem a linguagem, o codobase da MT não é suficientemente pequeno.
 
Obrigado pela dica, é apenas meu primeiro dia de trabalho com o MTK. Por isso escrevi tal pergunta. Mas eu pesquisei no Google e encontrei o que estava procurando.

Mas eu ainda não encontrei uma solução com lacunas. Portanto, se alguém não for preguiçoso, por favor, me envie o código.


//+------------------------------------------------------------------+

//| Apoio e Resistência |
//| Copyright © 2004 Barry Stander |
//| http://myweb.absa.co.za/stander/4meta/ |
//+------------------------------------------------------------------+
#propriedade copyright "Clique aqui: Barry Stander"
#link da propriedade "http://myweb.absa.co.za/stander/4meta/"

#janela_do_cartão_indicador de propriedade
#property indicator_buffers 2
#indicador de propriedade_cores1 Vermelho
#código de propriedade_color2 Azul

//---- buffers
duplo v1[];
duplo v2[];
duplo val1;
duplo val2;
int i;

int init()
{

IndicatorBuffers(2);

//---- definições de desenho
SetIndexArrow(0, 119);
SetIndexArrow(1, 119);

SetIndexStyle(0,DRAW_ARROW,STYLE_DOT,1,Red);
SetIndexDrawBegin(0,i-1);
SetIndexBuffer(0, v1);
SetIndexLabel(0, "Resistência");


SetIndexStyle(1,DRAW_ARROW,STYLE_DOT,1,Blue);
SetIndexDrawBegin(1,i-1);
SetIndexBuffer(1,v2);
SetIndexLabel(1, "Suporte");

retorno(0);
}

int start()
{

i=barras;
while(i>=0)
{

val1 = iFractals(NULL, 0, MODE_UPPER,i);
se (val1 > 0)
v1[i]=High[i]+(High[i]-Low[i]);
senão
v1[i] = v1[i+1];

val2 = iFractals(NULL, 0, MODE_LOWER,i);
se (val2 > 0)
v2[i]=Baixo[i];
senão
v2[i] = v2[i+1];

i--;
}
retorno(0);
}

//+------------------------------------------------------------------+

 
raduga7, Não entendo o que significa "Indicador chama preço"? Bem, o indicador encontrou o preço que você precisa. O que deve fazer a seguir? Ele apenas o coloca em seu buffer e o armazena em algum lugar sem renderizar? Armazená-lo para uso nos códigos de outros programas?
 

Naturalmente, ele desenhará uma linha de preço no gráfico, como descrito no indicador publicado acima


//
definições de desenho
SetIndexArrow(0, 119);
SetIndexArrow(1, 119);

SetIndexStyle(0,DRAW_ARROW,STYLE_DOT,1,Red);
SetIndexDrawBegin(0,i-1);
SetIndexBuffer(0, v1); SetIndexLabel(0, "Resistência")

===================================================

Mais uma pergunta.
É possível mostrar vários gráficos 2 ou 3 com prazos diferentes em uma janela? Existem soluções prontas ou exemplos?

 
raduga7:


Outra pergunta.
É possível mostrar vários 2 ou 3 gráficos com prazos diferentes em uma janela? Existe alguma solução pronta ou exemplos?

intervalos de tempo?

há alguns inconvenientes nos indicadores MT - como as coordenadas X e Y, os indicadores usam preço e tempo, o tempo por sua vez também é dividido em barras e a indicação específica do tempo como tipo de data e hora, se o indicador desenha usando buffers indicadores, ele definitivamente desenha por barras, e se o indicador usa objetos gráficos, o tempo especificado

se sua pergunta for sobre o número de linhas - buffers indicadores, então o MT4 tem um máximo de 8 linhas para um indicador, mas ninguém proíbe o uso de vários indicadores

 

Olá, posso fazer uma pergunta, se um indicador pode tomar os valores de uma barra definida pelo tempo através de variáveis externas?

Por exemplo, se você digitar a data em variáveis externas - 6 de janeiro de 2011 às 04h 25m, como você pode fazer isso em um indicador, obrigado antecipadamente.
 
Eliza:

Olá, posso fazer uma pergunta, o indicador pode tomar valores de barra definidos pelo tempo através de variáveis externas?

Por exemplo, se você colocar a data em variáveis externas - 2011 6 de janeiro 04h 25 min., como você pode fazer isso em um indicador, obrigado antecipadamente.


iBarShift

iTime

você pode combiná-los, desta forma:

iBarShift(NULL,PERIOD_D1,Time[1 00])

e variáveis externas são uma forma de trocar dados entre diferentes EAs/indicadores, não vejo porque as variáveis externas têm algo a ver com isso

 
raduga7:

Naturalmente, ele desenhará uma linha de preço no gráfico, conforme descrito no indicador publicado acima.


//---- definições de desenho
SetIndexArrow(0, 119);
SetIndexArrow(1, 119);

SetIndexStyle(0,DRAW_ARROW,STYLE_DOT,1,Red);
SetIndexDrawBegin(0,i-1);
SetIndexBuffer(0, v1);
SetIndexLabel(0, "Resistência");

===================================================

Uma pergunta a mais.
É possível mostrar vários gráficos 2 ou 3 com prazos diferentes em uma janela? Existe alguma solução pronta ou exemplos?




Você não disse que queria uma renderização - você disse que encontrou tal coisa no google. Bem, DRAW_ARROW não é uma linha - é uma seta (também pode usar apenas um caractere da tabela de caracteres permitidos). O computador é um boneco que só entende "Há um sinal - Não há sinal" - ele precisa de instruções precisas. Portanto, aqui você precisa saber exatamente o que você precisa, além dos preços encontrados.
Razão: