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

 
mas é só isso.
//+------------------------------------------------------------------+
//|                                                      5 fkkjd.mq4 |
//|                      Copyright © 2009, MetaQuotes Software Corp. |
//|                                        http://www.metaquotes.net |
//+------------------------------------------------------------------+
#property copyright "Copyright © 2009, MetaQuotes Software Corp."
#property link      "http://www.metaquotes.net"

//---- input parameters
extern double      urov_h1_1=1;
.....
extern double      urov_D_4=1;
extern double      urov_D_5=1;

double urov_h1[], urov_h4[], urov_D[];
int svechi_ball, urov_ball, stoh;
int i;
//+------------------------------------------------------------------+
//| expert initialization function                                   |
//+------------------------------------------------------------------+
int init()
  {
   return(0);
  }
//+------------------------------------------------------------------+
//| expert deinitialization function                                 |
//+------------------------------------------------------------------+
int deinit()
  {
//----
   
//----
   return(0);
  }
//+------------------------------------------------------------------+
//| expert start function                                            |
//+------------------------------------------------------------------+
int start()
  {
   //*******
   urov_h1[0]= urov_h1_1;   urov_h1[1]= urov_h1_2;   urov_h1[2]= urov_h1_3;   urov_h1[3]= urov_h1_4;
   urov_h1[4]= urov_h1_5;   urov_h1[5]= urov_h1_6;   urov_h1[6]= urov_h1_7;   urov_h1[7]= urov_h1_8;
   urov_h1[8]= urov_h1_9;   urov_h1[9]= urov_h1_10;  urov_h1[10]= urov_h1_11; urov_h1[11]= urov_h1_12;
   urov_h1[12]= urov_h1_13; urov_h1[13]= urov_h1_14; urov_h1[14]= urov_h1_15;
   //*******
   urov_h4[0]= urov_h4_1;   urov_h4[1]= urov_h4_2;   urov_h4[2]= urov_h4_3;   urov_h4[3]= urov_h4_4;
   urov_h4[4]= urov_h4_5;
   //******* 
   urov_D[0]= urov_D_1;   urov_D[1]= urov_D_2;   urov_D[2]= urov_D_3;   urov_D[3]= urov_D_4;
   urov_D[4]= urov_D_5;
   //*******

  //+++++медвежье поглощение++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
  for( i=0; i<15; i++)
   {
   if( medvejye_poglochenie( urov_h1[ i])==true)
      {
      svechi_ball=4;
      urov_ball=3;
      text( svechi_ball, urov_ball);
      }
   }
  /*bool medv_po_h1_1=medvejye_poglochenie(urov_h1_1);
  bool medv_po_h1_2=medvejye_poglochenie(urov_h1_2);
  ............
  bool medv_po_h1_15=medvejye_poglochenie(urov_h1_15);
  //**
   //****стохастик
  double st_2=iStochastic(Symbol(),60,6,1,2,MODE_EMA,0,MODE_MAIN,2);    
  double st_1=iStochastic(Symbol(),60,6,1,2,MODE_EMA,0,MODE_MAIN,1);    

  if(medv_po_h1_1==true || medv_po_h1_2==true || medv_po_h1_3==true || medv_po_h1_4==true || medv_po_h1_5==true || medv_po_h1_6==true
     || medv_po_h1_7==true || medv_po_h1_8==true || medv_po_h1_9==true || medv_po_h1_10==true || medv_po_h1_11==true || medv_po_h1_12==true
     || medv_po_h1_13==true || medv_po_h1_14==true || medv_po_h1_15==true)
      {
      svechi_ball=4;
      urov_ball=3;
      if(st_2>st_1 && st_2>70 && st_1>70) stoh=2;
      else if(st_2>st_1 && st_2<70 && st_1<70) stoh=1;
      else stoh=0;
      text(svechi_ball,urov_ball,stoh);
      }
  if(medv_po_h4_1==true || medv_po_h4_2==true || medv_po_h4_3==true || medv_po_h4_4==true || medv_po_h4_5==true)
      {
      svechi_ball=4;
      urov_ball=4;
      if(st_2>st_1 && st_2>70 && st_1>70) stoh=2;
      else if(st_2>st_1 && st_2<70 && st_1<70) stoh=1;
      else stoh=0;
      text(svechi_ball,urov_ball,stoh);
      }
  if(medv_po_D_1==true || medv_po_D_2==true || medv_po_D_3==true || medv_po_D_4==true || medv_po_D_5==true)
      {
      svechi_ball=4;
      urov_ball=5;
      if(st_2>st_1 && st_2>70 && st_1>70) stoh=2;
      else if(st_2>st_1 && st_2<70 && st_1<70) stoh=1;
      else stoh=0;
      text(svechi_ball,urov_ball,stoh);
      }*/
  return(0);
  }

não

Algo está errado neste pedaço de código, e eu não sei o que é.

for( i=0; i<15; i++)
   {
   if( medvejye_poglochenie( urov_h1[ i])==true)
      {
      svechi_ball=4;
      urov_ball=3;
      text( svechi_ball, urov_ball);
      }
   }

Sinceramente.

 
alsu >> :

duplo iCustom(símbolo de corda, int timeframe, nome da corda, ..., modo int, int shift)
Cálculo do indicador personalizado especificado. O indicador personalizado deve ser compilado (arquivo com extensão EX4) e localizado nos indicadores do terminal_diretório de especialistas.
Parâmetros:
símbolo - Nome do símbolo, em cujos dados o indicador será calculado. NULL significa símbolo atual.
cronograma - Período. Pode ser um dos períodos do gráfico. 0 significa o período do gráfico atual.
nome - Nome do indicador personalizado.
... - Lista de parâmetros (se necessário). Os parâmetros transmitidos devem corresponder à ordem de declaração e ao tipo de variáveis externas (externas) do indicador personalizado.
modo - Índice da linha indicadora. Pode ser de 0 a 7 e deve corresponder ao índice, usado por uma das funções do SetIndexBuffer.
turno - Índice do valor obtido do buffer de indicadores (deslocamento relativo à barra atual pelo número especificado de períodos de retorno).
Exemplo:


>> socorro!

OBRIGADO OBRIGADO Nunca teria encontrado iCustom em>> Referência MQL4 - Indicadores Técnicos - iCustom (pesquisado em outro lugar, mas não aqui)

Mais uma vez, muito obrigado!

 

Saudações!

Estou tentando ensinar o MT4 a identificar as barras cuja faixa excede ATR(60) no gráfico:

Externo interno Quant_Bars=1000; // Número de barras


int start()
{
int Ind_Bar;

for(Ind_Bar=Quant_Bars-1; Ind_Bar>=0; Ind_Bar--)
{
Criar(Ind_Bar);
}

retornar;
}
//--------------------------------------------------------------- 3 --
int Create(int Ind_Bar) // Função definida pelo usuário para criar um objeto

{
Cor=Vermelho; //Objeto cor
data/hora T_Bar=Tempo [Ind_Bar]; // Tempo de abertura do bar
O_Bar=Abrir [Ind_Bar]; // Preço de bar aberto
duplo C_Bar=Fechar[Ind_Bar]; // Preço de fechamento de uma barra
H_Bar=High [Ind_Bar]; // Preço máximo da barra
double L_Bar=Low [Ind_Bar]; // Preço mínimo da barra
duplo A= iATR(Symbol(),0,60,Ind_Bar);


if((H_Bar-L_Bar)>A)
ObjectCreate("Seu_Nome",OBJ_TREND,0,T_Bar,H_Bar,T_Bar,L_Bar);
retornar;
}

... Por alguma razão, ela preenche apenas uma barra (a primeira à esquerda, em minha opinião), embora eu deva ter tudo isso dentro de 1000-0 barras. Por favor, informe onde está o erro?

 

Não consigo descobrir onde conectar os suportes...ajude-me por favor!

	if((( b1+ b1_2)>0) || (( b2+ b2_2)>=0) || (( s1+ s1_2)<0) || (( s2+ s2_2)<=0))
	{
	if( T1green!=0 && T2red==0)
	}
	else 
	if( Flat!=0) return(0);
	{
	SigBuy=true;
	}
	if((( b1+ b1_2)>0) || (( b2+ b2_2)>=0) || (( s1+ s1_2)<0) || (( s2+ s2_2)<=0))
	{
	if( T1red!=0 && T2green==0)
	}
	else if( Flat!=0) return(0);
	{	
	SigSell=true;
	}

=>

'}' - unbalanced parentheses
'}' - unbalanced parentheses

 
Ibiss >> :

Não consigo descobrir onde colocar os parênteses...ajude-me por favor!

=>

Não faltam dois colchetes, não há nenhuma estrutura:

if(){}else{}//вот так 

if()// или так 
  {}
else
  {}
// и в зависимости от необходимости строите структуру 
if()
  {if(){}else{}}
else
  {if(){}}// простым скопировал вставил 

e depois colocar as condições e operadores corretos na estrutura.

	if((( b1+ b1_2)>0) || (( b2+ b2_2)>=0) || (( s1+ s1_2)<0) || (( s2+ s2_2)<=0))
	{
	if( T1green!=0 && T2red==0)// что это условие должно разрешать ????????????
	}
	else 
	if( Flat!=0) return(0);//тут вылетаем по ретурну дальше код не исполняется 
	{
	SigBuy=true;// по какому условию выполняется этот оператор ???????????
	}
	if((( b1+ b1_2)>0) || (( b2+ b2_2)>=0) || (( s1+ s1_2)<0) || (( s2+ s2_2)<=0))
	{
	if( T1red!=0 && T2green==0)// что это условие должно разрешать ????????????
	}
	else if( Flat!=0) return(0);//тут вылетаем по ретурну дальше код не исполняется 
	{	
	SigSell=true;// по какому условию выполняется этот оператор ???????????
	}

pppppppp

 
OK. Vou tentar, obrigado!
 
Urain >> :

Não faltam dois parênteses, não há nenhuma estrutura:

e depois inserir as condições e operadores necessários na estrutura.

pppppppp


Não funciona assim.

O que devo fazer corretamente para o meu caso?

if(...........)//если условие выполнилось,то
{
if(T1green!=0 && T2red==0)//и это выполнилось..  ...это типо максд
}
else 
if(Flat!=0) return(0);//это пролетаем, выполняется следующее
{
SigBuy=true;// включение покупки
}
 
Como colocar códigos de cores em meus postos?
 
há alguma forma de fazer um gráfico de velas de 10 minutos?
 

Olá. Por favor, ajude-me a refazer a opção de conversão de período.

Aqui está a essência disto.

Por exemplo, formamos barras de 8 horas (tempo terminal) a partir de barras de 1 hora. Recebemos uma série: 0, 8, 16, 0 horas, etc.

Eu gostaria de poder definir uma compensação no Conversor. Esta mudança pode ser feita no número de barras do TF com base no qual é formado o necessário. Se for formado com base em 1 hora, então o turno será expresso em horas. Se for formado com base em 15 minutos, então o turno será de 15, 30, 45 minutos....

Além disso, o tempo no terminal também difere em 2 horas do "meu" tempo. => inconveniente de ir para o terminal às 2h MSC.

Assim, ao formarmos o prazo de 8 horas com uma compensação de +3 (por exemplo), teremos uma nova série: 3, 11, 19, 3, etc. Ou (-2) compensação dará: 22, 6, 14, 22, etc. Embora possa ser possível limitá-lo ao mais

compensar.


O objetivo da compensação é evitar que a barra se forme completamente durante o período de sono do comerciante.


É assim que eu gostaria de refinar a opção de conversão de períodos.