Ola pessoal,
Estou aqui na quarentena tentando pegar a abertura do dia anterior com base no código abaixo:
Não está correto, pois não pega o dia anterior.
Na parte completa do codigo, ele pega MAX, MIN e FECHAMENTO:
Para uso em um outro indicador de Pivot Point para compartilhar.
Obrigado.
int OnCalculate(const int rates_total,
const int prev_calculated,
const datetime &time[],
const double &open[],
const double &high[],
const double &low[],
const double &close[],
const long &tick_volume[],
const long &volume[],
const int &spread[])
{
//---
double PP=0,R1=0,R2=0,S1=0,S2=0;
PP=(iHigh(NULL,PERIOD_D1,1)+iLow(NULL,PERIOD_D1,1)+iClose(NULL,PERIOD_D1,1))/3;
S1=(PP*2)-iHigh(NULL,PERIOD_D1,1);
R1=(PP*2)+iLow(NULL,PERIOD_D1,1);
S2=PP-(iHigh(NULL,PERIOD_D1,1)-iLow(NULL,PERIOD_D1,1));
R2=PP+(iHigh(NULL,PERIOD_D1,1)-iLow(NULL,PERIOD_D1,1));
Comment("\nPP ",DoubleToStr(PP,Digits),"\n\nR1 ",DoubleToStr(R1,Digits),"\nR2 ",DoubleToStr(R2,Digits),
"\n\nS1 ",DoubleToStr(S1,Digits),"\nS2 ",DoubleToStr(S2,Digits));
//---
return(rates_total);
}
int OnCalculate(const int rates_total,
const int prev_calculated,
const datetime &time[],
const double &open[],
const double &high[],
const double &low[],
const double &close[],
const long &tick_volume[],
const long &volume[],
const int &spread[])
{
//---
double PP=0,R1=0,R2=0,S1=0,S2=0;
PP=(iHigh(NULL,PERIOD_D1,1)+iLow(NULL,PERIOD_D1,1)+iClose(NULL,PERIOD_D1,1))/3;
S1=(PP*2)-iHigh(NULL,PERIOD_D1,1);
R1=(PP*2)+iLow(NULL,PERIOD_D1,1);
S2=PP-(iHigh(NULL,PERIOD_D1,1)-iLow(NULL,PERIOD_D1,1));
R2=PP+(iHigh(NULL,PERIOD_D1,1)-iLow(NULL,PERIOD_D1,1));
Comment("\nPP ",DoubleToStr(PP,Digits),"\n\nR1 ",DoubleToStr(R1,Digits),"\nR2 ",DoubleToStr(R2,Digits),
"\n\nS1 ",DoubleToStr(S1,Digits),"\nS2 ",DoubleToStr(S2,Digits));
//---
return(rates_total);
}
Bacana, mas gostaria apenas da abertura do dia anterior.
Precisa passar três parâmetros na chamada da função.
Blz, vou pesquisar melhor.
Bacana, mas gostaria apenas da abertura do dia anterior.
iOpen(NULL,PERIOD_D1,1);
Ola,
Pior que testei e não funcionou, dá erro de compilação.
Ao deixar no codigo acima como
OpenDay=iOpen[0];
Ele pega a abertura do ultimo candle, do dia anterior, mas se estiver no M15, pega a abertura do ultimo candle do M15 e não a abertura do candle D1.
Ola,
Pior que testei e não funcionou, dá erro de compilação.
Ao deixar no codigo acima como
Ele pega a abertura do ultimo candle, do dia anterior, mas se estiver no M15, pega a abertura do ultimo candle do M15 e não a abertura do candle D1.
O Samuel respondeu ali em cima. Eu uso essa função e funciona perfeitamente.
Ola,
Pior que testei e não funcionou, dá erro de compilação.
Ao deixar no codigo acima como
Ele pega a abertura do ultimo candle, do dia anterior, mas se estiver no M15, pega a abertura do ultimo candle do M15 e não a abertura do candle D1.
Você está passando essas funções como array a ser preenchido pelas funções CopyHigh, CopyLow, etc. Você precisa criar novas variáveis para isso e não usar funções como parâmetro.
rates_total=CopyHigh(NULL,_Period,_start,_end,iHigh); if(rates_total<=0) return; else HighDay=iHigh[ArrayMaximum(iHigh,0,rates_total)]; rates_total=CopyLow(NULL,_Period,_start,_end,iLow); if(rates_total<=0) return; else LowDay=iLow[ArrayMinimum(iLow,0,rates_total)]; rates_total=CopyClose(NULL,_Period,_end,1,iClose); if(rates_total<=0) return; else CloseDay=iClose[0]; rates_total=CopyOpen(NULL,_Period,_end+1,1,iOpen); if(rates_total<=0) return; else OpenDay=iOpen[1];
- 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
Ola pessoal,
Estou aqui na quarentena tentando pegar a abertura do dia anterior com base no código abaixo:
Não está correto, pois não pega o dia anterior.
Na parte completa do codigo, ele pega MAX, MIN e FECHAMENTO:
Para uso em um outro indicador de Pivot Point para compartilhar.
Obrigado.