[ARQUIVO]Qualquer pergunta de novato, para não desorganizar o fórum. Profissionais, não passem por ela. Não posso ir a lugar nenhum sem você - 5. - página 62

 
md4RM:
caras ... Procurei na rede... e não conseguia encontrá-lo ...

Preciso de uma idéia de como fazer o mql4 me dar o preço de uma determinada barra para uma determinada moeda ... ... enquanto em um par de moedas diferente ...

ajuda ... obrigado de antemão ...
procurei no site eu tinha uma idéia procurei na ajuda do site eu dei uma resposta à pergunta na ajuda quem precisa de mais idéias procure na ajuda você pode procurar no editor todas as idéias lá por favor em qualquer outro par de moedas
 

Existe um código:

double PERIOD=1.0;  
double result=1.0;    
int i=0;             
 
while(result!=0.0)   
{                
   if (iMA(NULL,0,PERIOD,0,MODE_SMA,PRICE_CLOSE,0) < A)
   result=1;                                                
   if (iMA(NULL,0,PERIOD,0,MODE_SMA,PRICE_CLOSE,0) > A)
   result=0;                                                 
   
   PERIOD+=1;                                               
   i++;                                                       
}
   res=OrderSend(Symbol(),OP_SELL,LotsOptimized(),Bid,3,0,0,"",MAGICMA,0,Red);
   return;
Aqui o PERÍODO, como entendo, será pesquisado a partir de 1, mas o limite superior não está especificado. Então, como posso especificar que, por exemplo, ele só pesquisará até 20?
 
homens ... Obrigado ... Bênçãos de Deus
 

duplo iClose(símbolo de corda, int timeeframe, int shift)



Como fazer para que, em vez de "em tempo hábil" ... é o período atual ...

 

Como você faz o "int timeframe" ... é o período atual ...

apenas coloque 0
 
md4RM:

duplo iClose(símbolo de corda, int timeeframe, int shift)



Como fazer para que, em vez de "em tempo hábil" ... é o período atual ...


Leia até o final dos links que lhe foram dados (repito):

https://docs.mql4.com/ru/series/iopen

cronograma - Período. Pode ser um dos períodos de um gráfico. 0 significa o período do gráfico atual.
 
lottamer:


Que tal mais complicado?

....


Você mesmo já descobriu isso)) Os operadores aninhados no laço terminam entre parênteses, ou seja, somente o operador de impressão trabalha no laço

Tente desta forma:

if ( ...)    {My_buy (); return;}

else while (a>0)

  { Print("no BUY entry");  

 if ( a<0) {My_buy ();} 
} 
 

Olá!

Você poderia me dizer como converter int em string?

O principal, de corda a int, pode ser feito, mas eles se esqueceram de pensar em um caminho de volta.

 
SvSerg:

Olá!

Você poderia me dizer como converter int em string?

O principal, de corda a int, pode ser feito, mas eles se esqueceram de pensar em um caminho de volta.


Bom dia!

"... mas eles esqueceram de voltar".

É claro que tudo é sempre o PRIMEIRO defeito do MUNDO - os DESENVOLVEDORES!

Para quem eles fizeram isso?

string DoubleToStr( double value, int digits) 
Преобразование числового значения в текстовую строку, содержащую символьное представление числа в указанном формате точности. 
Параметры:
value   -   Величина с плавающей точкой. 
digits   -   Формат точности, число цифр после десятичной точки (0-8). 

Пример:
  string value=DoubleToStr(1.28473418, 5);
  // содержимое строки value - "1.28473"



 
Usual_Trader:


Você mesmo já descobriu isso)) Você tem operadores aninhados no laço terminando com um parêntese, ou seja, somente o operador de impressão trabalha no laço

Tente desta forma:


a>0 não funcionará, porque a condição de a<0 dentro do operador NÃO será cumprida. E quando"a" ficar abaixo de zero, o loop será terminado e a ação que preciso no operador não será executada...
Razão: