o problema é como adicionar código indicador em ea ??
Você pode, com certas limitações, mas usar o iCustom é muito mais fácil.
Mas se você realmente quiser: Transferir um Código Indicador para um Código de Conselheiro Especializado. Estrutura do Indicador - Artigos MQL4
Para estocásticos não é necessário iCustom
Parâmetros:
Amostra: if(iStochastic(NULL,0,5,3,3,MODE_SMA,0,MODE_MAIN,0)>iStochastic(NULL,0,5,3,3,MODE_SMA,0,MODE_SIGNAL,0)) retorno(0); |
que tal adicionar o indicador rvi em ea ?
também usando o mesmo código da forma como se adiciona o indicador estocástico?
que tal adicionar o indicador rvi em ea ?
também usando o mesmo código da forma como se adiciona o indicador estocástico ?
iCustom() ou iRVI()
que tal adicionar o indicador rvi em ea ?
também usando o mesmo código da forma como se adiciona o indicador estocástico ?
aqui o código que eu fiz esta manhã.
qualquer um pode me ajudar a consertá-lo ??
//+------------------------------------------------------------------+
int init()
{
//---- mapeamento de buffers indicadores
SetIndexBuffer(0,Buffer);
SetIndexBuffer(1,SignalBuffer);
//---- linha indicadora
SetIndexStyle(0,DRAW_LINE);
SetIndexStyle(1,DRAW_LINE);
//---- definições de desenho
SetIndexDrawBegin(0,RVIP período+3);
SetIndexDrawBegin(1,RVIP período+7);
//---- nome para DataWindow e subwindow label do indicador
IndicatorShortName("RVI("+RVIPeriod+")");
SetIndexLabel(0, "RVI");
SetIndexLabel(1, "RVIS");
//---- inicialização feita
retorno(0);
}
{
double bid =MarketInfo(Symbol(),MODE_BID); // Solicitação do valor da Licitação
double ask =MarketInfo(Symbol(),MODE_ASK); // Solicitação do valor de Ask
ponto duplo =MarketInfo(Symbol(),MODE_POINT);//Request for Point
retorno; // Saída início()
if(AccountFreeMargin()<100)
Imprimir("Nós não temos dinheiro. Margem Livre = ", AccountFreeMargin());
devolução(0);
}
int start()
{
{
int i,j,nLimit,nCountedBars;
duplo dValueUp,dValueDown,dNum,dDeNum;
//----
if(Bars<=RVIP period+8) return(0);
//----
nCountedBars=IndicatorCounted();
//---- verificação de possíveis erros
if(nCountedBars<0) retorno(-1);
//---- última barra contada será recontada
nLimit=Bars-RVIPeriod-4;
if(nCountedBars>RVIPeriod+4)
nLimit=Bars-nCountedBars;
//---- RVI contado no buffer 1-st
for(i=0; i<=nLimit; i++)
{
dNum=0,0;
dDeNum=0,0;
for(j=i; j<i+RVIP period; j++)
{
dValueUp=((Close[j]-Open[j])+2*(Close[j+1]-Open[j+1])+2*(Close[j+2]-Open[j+2])+(Close[j+3]-Open[j+3]))/6;
dValueDown=((High[j]-Low[j])+2*(High[j+1]-Low[j+1])+2*(High[j+2]-Low[j+2])+(High[j+3]-Low[j+3]))/6;
dNum+=dValueUp;
dDeNum+=dValueDown;
}
if(dDeNum!=0.0)
Buffer[i]=dNum/dDeNum;
senão
Buffer[i]=dNum;
}
//---- linha de sinal contada no buffer 2-nd
nLimit=Bars-RVIPeriod-7;
if(nCountedBars>RVIPeriod+8)
nLimit=Bars-nCountedBars+1;
for(i=0; i<=nLimit; i++)
SignalBuffer[i]=(Buffer[i]+2*Buffer[i+1]+2*Buffer[i+2]+Buffer[i+3])/6;
//----
retorno(0);
}
{
OrderSend(Symbol,LotSize,Ask,StopLoss,TakeProfit,0,0);
se (Fechar<i)
OpenBuy();
return(0);
OrderSend(Symbol,LotSize,Bid,StopLoss,TakeProfit,0,0);
se (Fechar>i)
OpenSell();
return(0);
}
duplo GetSizeLot() { return(LotSize); }
duplo GetTakeProfitBuy() { return(Ask+TakeProfit*Point); }
duplo GetTakeProfitSell() { return(Bid-TakeProfit*Point); }
duplo GetStopLossBuy() { return(Bid-StopLoss*Point); }
duplo GetStopLossSell() { return(Ask(Ask+StopLoss*Point); }
string GetCommentForOrder() { return();}
return(0); }
Antes de postar, leia alguns dos outros tópicos ... então você teria visto numerosos pedidos como este:
Por favor, use isto para postar o código . . torna a leitura mais fácil.
aqui o código que eu fiz esta manhã.
qualquer um pode me ajudar a consertá-lo ??
- 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
como mencionei acima, desejo fazer ea com codificação estocástica.
o problema é como adicionar código indicador em ea ??