[ARQUIVO] Qualquer pergunta de novato, de modo a não desorganizar o fórum. Profissionais, não passem por aqui. Em nenhum lugar sem você - 3. - página 13
int handle=FileOpen("OrderReport.csv",FILE_WRITE|FILE_CSV,"\t"); if(handle<0) return(0); //escrever cabeçalho em arquivo FileWrite(handle, "#", "Preço de abertura", "Tempo de abertura", "Símbolo", "Muito"); int total=OrdensTotal(); // escrever somente as ordens abertas no arquivo for(int pos=0;pos<total;pos++) { if(OrderSelect(pos,SELECT_BY_POS,MODE_TRADES)==falso) continue; FileWrite(handle,OrderTicket(),OrderOpenPrice(),OrderOpenTime(),OrderSymbol(),OrderLots()) } FileClose(handle);
int handle=FileOpen("OrderReport.csv",FILE_WRITE|FILE_CSV,"\t"); if(handle<0) return(0); //escrever cabeçalho em arquivo FileWrite(handle, "#", "Preço de abertura", "Tempo de abertura", "Símbolo", "Muito"); int total=OrdensTotal(); // escrever somente as ordens abertas no arquivo for(int pos=0;pos<total;pos++) { if(OrderSelect(pos,SELECT_BY_POS,MODE_TRADES)==falso) continue; FileWrite(handle,OrderTicket(),OrderOpenPrice(),OrderOpenTime(),OrderSymbol(),OrderLots()) } FileClose(handle);
// This function returns the total amount of orders the expert advisor has open int TotalOpenOrders()
{
Cnt=OrdersTotal();
int TotalOpenOrders = 0;
if(Cnt==0)
{
return(0);
}
else
{
for(;Cnt>=0;Cnt--)
{
RefreshRates();
OrderSelect(Cnt,SELECT_BY_POS);
if(OrderMagicNumber()==Magic)
{
TotalOpenOrders++;
}
}
}
return(TotalOpenOrders);
}
// Esta função retorna a quantidade total de ordens que o consultor especialista abriu int TotalOpenOrders() { Cnt=OrdersTotal(); int TotalOpenOrders = 0; if(Cnt==0) { return(0); } else { for(;Cnt>=0;Cnt--) { RefreshRates(); OrderSelect(Cnt,SELECT_BY_POS); if(OrderMagicNumber()==Magic) { TotalOpenOrders++; } } } return(TotalOpenOrders); }
E esta função deve ser escrita antes de iniciar o programa.
int handle=FileOpen("OrderReport.csv",FILE_WRITE|FILE_CSV,"\t");
if(handle<0) return(0);
//escrever cabeçalho em arquivo
FileWrite(handle, "#", "Preço de abertura", "Tempo de abertura", "Símbolo", "Muito");
int total=OrdensTotal();
// escrever somente as ordens abertas no arquivo
for(int pos=0;pos<total;pos++)
{
if(OrderSelect(pos,SELECT_BY_POS,MODE_TRADES)==falso) continue;
FileWrite(handle,OrderTicket(),OrderOpenPrice(),OrderOpenTime(),OrderSymbol(),OrderLots())
}
FileClose(handle);
Por favor, diga-me como utilizá-lo no meu EA ?
Você deu sua própria resposta - Talvez algo precise ser consertado em algum lugar na configuração ou o que quer que seja...?
Onde está a configuração? Por favor, me diga!
int handle=FileOpen("OrderReport.csv",FILE_WRITE|FILE_CSV,"\t");
if(handle<0) return(0);
//escrever cabeçalho em arquivo
FileWrite(handle, "#", "Preço de abertura", "Tempo de abertura", "Símbolo", "Muito");
int total=OrdensTotal();
// escrever somente as ordens abertas no arquivo
for(int pos=0;pos<total;pos++)
{
if(OrderSelect(pos,SELECT_BY_POS,MODE_TRADES)==falso) continue;
FileWrite(handle,OrderTicket(),OrderOpenPrice(),OrderOpenTime(),OrderSymbol(),OrderLots())
}
FileClose(handle);
Você pode me dizer como utilizá-lo em minha EA ?
Copiar-colar ?!
Você deve inserir o código desta maneira:
Eu entendo, mas como utilizá-lo depois. Eu tenho que escrever uma condição?
Eu entendo, mas como utilizá-lo depois. Eu tenho que escrever uma condição?
// Esta função retorna a quantidade total de ordens que o consultor especialista abriu
int TotalOpenOrders()
{
Cnt=OrdersTotal();
int TotalOpenOrders = 0;
if(Cnt==0)
{
return(0);
}
else
{
for(;Cnt>=0;Cnt--)
{
RefreshRates();
OrderSelect(Cnt,SELECT_BY_POS);
if(OrderMagicNumber()==Magic)
{
TotalOpenOrders++;
}
}
}
return(TotalOpenOrders);
}
E esta função deve ser escrita antes de iniciar o programa.
Onde está essa configuração? Por favor, avise!
Leia os artigos
https://www.mql5.com/ru/articles/1490
https://www.mql5.com/ru/articles/1417
{ aqui?