Você está perdendo oportunidades de negociação:
- Aplicativos de negociação gratuitos
- 8 000+ sinais para cópia
- Notícias econômicas para análise dos mercados financeiros
Registro
Login
Você concorda com a política do site e com os termos de uso
Se você não tem uma conta, por favor registre-se
Aqui estão os arquivos .gif que acompanham os arquivos .htm do post anterior...
também me pediram um arquivo de instalação do build 188, hoje cedo...
Procurei por esse número de build mas não o vejo...não me lembro de ter feito um build 188 talvez tenha feito, mas terei que cavar para encontrá-lo...não sei o que é tão especial que alguém me pedisse aquele build..... em particular que teria sido uma versão muito antiga destes se eu tivesse feito um....
Vou continuar procurando...
Esqueci de mencionar que estou rodando o GGS3 no gráfico 1H e o GGL3.01 no gráfico 30M.
Tive alguém voluntário que, se eu pudesse fornecer-lhes um .exe de instalação para o Build 188 do terminal Metatrader 4, eles fariam valer a pena. Eu fiz meus testes no build 195 e não tenho um build 188 para o terminal... alguém mais tem um que você compartilharia?
Adivinhe qual é a diferença entre estes dois testes?
Configurações? não
EA? não
Depósito inicial? não
Faixas de datas? não
Par de moedas? não
Você clicou em recalcular antes de cada um deles? sim
A única diferença é que a que é lucrativa foi feita logo após a reabertura do mercado no domingo. E a que não era rentável foi feita logo após o fechamento do mercado, na sexta-feira.
Então alguém me diz por que o testador de costas deve se importar se o mercado está aberto ou não quando ele testa um intervalo de datas que está inteiramente armazenado no centro de história?
Tente o seguinte:
int handle;
int init()
{
handle=FileOpen(EAName+"_"+Symbol()+".txt", FILE_CSV|FILE_WRITE, ';');
return(0);
}
int deinit()
{
FileClose(handle);
return(0);
}
Start()
{
.....
FileWrite(handle, TimeToStr(CurTime(),TIME_DATE|TIME_SECONDS), iOpen... ); //declare them as variables and then insert them in the file write routine
[/PHP]
Also, remember to put the routine where it is updated once every bar not every tick. Now you got enough ammo, and figure out the rest
Good luck.ok, eu cheguei até aqui....
[PHP]int handle; //impressão para arquivo
//+------------------------------------------------------------------+
//| função de iniciação de especialista |
//+------------------------------------------------------------------+
int init()
{
BarCount = Barras;
se (CadaTickMode) Corrente = 0; caso contrário Corrente = 1;
handle=FileOpen(EAName+"_"+Symbol()+".txt", FILE_CSV|FILE_WRITE, ';');//impressão para arquivo
retorno(0);
}
//+------------------------------------------------------------------+
//| função de desinicialização especializada |
//+------------------------------------------------------------------+
int deinit()
{
FileClose(handle);//impressão para arquivo
retorno(0);
}
//+------------------------------------------------------------------+
//| função de início especializado |
//+------------------------------------------------------------------+
int start()
{Não sei como/onde completar esta direção...
...." FileWrite(handle, TimeToStr(CurTime(),TIME_DATE|TIME_SECONDS), iOpen... ); //declara-os como variáveis e depois insere-os na rotina de escrita do arquivo"
Maji disse, ...colocar a rotina onde ela é atualizada uma vez a cada barra e não a cada carrapato.
Alguém pode me mostrar onde isso fica? Apesar de minhas ocasionais ilusões de competência, realmente não tenho a menor idéia sobre isso.
Sinto muito, mas não tenho tempo para mexer com seu código agora mesmo. Você deve inserir a linha que escreve a hora, abrir etc. exatamente onde seu sistema é atualizado na nova barra. Por enquanto, por que não simplesmente inserir essa linha antes do retorno(0) em seu loop inicial. Quanto a como construir o comando filewrite, que você mesmo terá que descobrir, eu já lhe dei munições suficientes para fazer isso.
Por que você simplesmente não começa a testar seu sistema, e assim você pode verificá-lo todos os dias contra o seu backktest e ver como ele está funcionando?
Boa sorte.
Sinto muito, mas não tenho tempo para mexer com seu código agora mesmo. Você deve inserir a linha que escreve a hora, abrir etc. exatamente onde seu sistema é atualizado na nova barra. Por enquanto, por que não simplesmente inserir essa linha antes do retorno(0) em seu loop inicial. Quanto a como construir o comando filewrite, que você mesmo terá que descobrir, eu já lhe dei munições suficientes para fazer isso
Por que você simplesmente não começa a testar seu sistema, e assim você pode verificá-lo todos os dias contra o seu backktest e ver como ele está funcionando?
Boa sorte.Reconheço que você tem outras prioridades, por isso não estava lhe pedindo, no entanto a pista ajuda pelo menos para a colocação da linha. Obrigado
Estou testando. Isto é, eu estava até que minha conta demo explodiu durante o fim de semana do dia de trabalho, não expirou, ela apenas foi encerrada junto com todas as minhas outras contas demo. Esta manhã, eu tive que começar uma nova de novo... não fazia idéia porque todas elas foram apagadas. Eu não fiz isso. Uma anamolie interbancária, suponho.
Digamos, por exemplo, que eu faço isso e provo que não estou usando os mesmos dados todas as vezes, apesar de ter sido avisado, ou que não está processando os dados da mesma maneira ou o que quer que seja, então o quê?
Tenho outros testes de estratégia que parecem não usar os mesmos intervalos de datas ou todos os intervalos de datas quando lhes digo. o que eu ou alguém pode fazer sobre isso? Acho seguro assumir que outras pessoas têm irregularidades semelhantes, mas o que pode ser feito a respeito delas?
Não me parece realmente um testador de estratégia neste momento. Mais como um teaser de estratégia, porque não há nenhuma maneira de eu conseguir realmente controlar ou apunhalar sua compilação/processamento. Ele só processa intervalos parciais de datas quando existem arquivos de dados completos para fazer todo o intervalo especificado. Não parece ser 100% consistente. Eu não saberia o que fazer para repará-lo, mesmo que eu provasse que são inconsistências. Ela age mais como uma roleta do que uma ferramenta de teste de precisão.
correio desnecessário
aqui está meu skitoma...não vejo porque no arquivo acima inclui https://www.mql5.com/en/forum/general
o compilador pode encontrar estas funções...(quando eu adiciono isto inclui arquivo em um EA e antes de chamar estas funções.... eu recebo estes erros me dizendo que pelo menos o compilador SEES estas 5 funções....
A função "StoreHighhsAndLows" não é referenciada e será removida do arquivo exp-file
A função "GetPastEquity" não é referenciada e será removida do exp-file
A função "StoreAccountEquity" não é referenciada e será removida do exp-file
A função "CountTrades" não é referenciada e será removida do exp-file
A função "CloseOrder" não é referenciada e será removida do arquivo de exp
mas não vê o IncreaseLots() de modo algum.
É como se ele não existisse....
como está estruturado o IncreaseLots() de forma diferente de qualquer outra função que ele possa ver.
ele declara a função, então ele tem
{
blá
blá
blá
retorno();
}
o que mais uma função tem que ter? Isso é tudo o que os outros têm!!!!
Veja quando eu chamo o IncreaseLots() da EA eu recebo o erro...função não definida...como se não estivesse lá...mas está lá, CERTO THERE!!!! Por que tudo isso é invisível para o compilador???