Caros foristas,
Eu quero especificamente o preço de fechamento das "17:55:00"; alguém tem como ajudar?
Edilson
Olá Edilson Santos,
Se quiser saber o preço de fechamento do dia anterior, basta utilizar:
Ou seja, basta utilizar o timeframe PERIOD_D1 e utilizar o preço de fechamento do dia anterior.
Abraços,
Malacarne
Olá Edilson Santos,
Se quiser saber o preço de fechamento do dia anterior, basta utilizar:
Ou seja, basta utilizar o timeframe PERIOD_D1 e utilizar o preço de fechamento do dia anterior.
Abraços,
Malacarne
Muito obrigado pela resposta, mas o fechamento do minicontrato, no tempo gráfico de cinco minutos pode ocorrer às 18:00 ou 18:XX. Por isso, a necessidade de especificar um horário. Por isso coloquei em um loop. Esse loop obtém o preço das "17:45", mesmo em tendo atribuído à variável "Saida" o valor de "17:55".
Já tentei utilizar o MQLRates, mas essa estrutura obtém os valores de um número limitado de barras (três). Ou seja, não resolveu o meu problema.
MqlRates candle[];
count=4;
for(int i=0; i<=count-1;i++)
{
if(TimeToString(candle[i].time)==Saida)
First_Ind = (candle[0].open / candle[i].close)-1;
}
//------------------------------------
Edilson
Muito obrigado pela resposta, mas o fechamento do minicontrato, no tempo gráfico de cinco minutos pode ocorrer às 18:00 ou 18:XX. Por isso, a necessidade de especificar um horário. Por isso coloquei em um loop. Esse loop obtém o preço das "17:45", mesmo em tendo atribuído à variável "Saida" o valor de "17:55".
Já tentei utilizar o MQLRates, mas essa estrutura obtém os valores de um número limitado de barras (três). Ou seja, não resolveu o meu problema.
MqlRates candle[];
count=4;
for(int i=0; i<=count-1;i++)
{
if(TimeToString(candle[i].time)==Saida)
First_Ind = (candle[0].open / candle[i].close)-1;
}
//------------------------------------
Edilson
Olá Edilson Santos,
Nesse caso você precisa utilizar a struct MqlDatetime para especificar hora e minuto de cada candle.
Segue link para estudos: https://www.mql5.com/pt/docs/constants/structures/mqldatetime
Abraços,
Malacarne
- www.mql5.com
- Aplicativos de negociação gratuitos
- 8 000+ sinais para cópia
- Notícias econômicas para análise dos mercados financeiros
Você concorda com a política do site e com os termos de uso
Caros foristas,
No tempo gráfico de 5 minutos, no fechamento da primeira barra do pregão atual (09:05h), preciso obter o preço de fechamento (close) da barra das 17:55:00 do pregão anterior.
Com o código abaixo obtenho o preço de fechamento (close) das 17:45:00. Verifico se o dia da semana está entre segunda e sexta-feira e obtenho os dados do tempo (função CopyTime) e depois o preço de fechamento (função CopyClose).
Eu quero especificamente o preço de fechamento das "17:55:00"; alguém tem como ajudar?
datetime tm = TimeCurrent();
if (StringToTime(tm) >= "09:00:00")
{
int start = 0; int count = 6;
datetime Saida = "17:55:00";
datetime tbar[];//dynamic array
MqlDateTime stm;
TimeToStruct(tm,stm);
int i;
double preco_close[];//dynamic array
double close_preco[];//dynamic array
if ((string)stm.day_of_week >= 1 || (string)stm.day_of_week <=5)
{
CopyTime(_Symbol,PERIOD_M5,start,count,tbar);
i=0;
for(i=0; i<=count-1; i++)
{
if(TimeToString(tbar[i],TIME_DATE)!=TimeToString(tm,TIME_DATE) && TimeToString(tbar[i],TIME_MINUTES)== Saida)
{
CopyClose(_Symbol,PERIOD_M5,start,count,preco_close);
First_Ind = (candle[0].open / preco_close[i])-1;
}
}
}
}
//----------------------------------------------------------
Grato.
Edilson