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
Deixem-me lembrar-vos que o resultado foi obtido com um simples Expert Advisor, que praticamente não gasta tempo em qualquer análise e não utiliza indicadores, ou seja, os resultados teriam sido ainda mais tristes com uma EA funcional.
Permitam-me lembrar que o resultado foi obtido com um simples Expert Advisor, que praticamente não gasta tempo em qualquer análise e não utiliza indicadores, ou seja, os resultados seriam ainda mais tristes com um Expert Advisor a trabalhar.
Para comparação:
Executando este teste com 10000 negócios numa máquina Windows 7, Intel Pentium Dual-Core E5400 @ 2,70 GHz, 2038 MB (PR111) levou 472866ms.
luz do acima exposto, existe alguma probabilidade de alguns dos candidatos ao Campeonato 2010 poderem ter sido eliminados injustamente devido à barreira dos 15 minutos e às peculiaridades do testador (se houvesse muitos acordos).
** - houve várias vezes em que o testador não exibiu o gráfico de símbolos com as trocas exibidas no final do teste.
Não fui capaz de escrever uma "simples EA" que mostrasse tais resultados. Aqui está o meu código:
Aqui estão os resultados da optimização, a coluna Resultado mostra o tempo de execução em milissegundos.
Não fui capaz de escrever uma "simples EA" que mostre estes resultados. Aqui está o meu código:
Aqui estão os resultados da optimização, a coluna Resultado mostra o tempo de execução em milissegundos.
Interessante...
Código EA, por favor afixar o código.
O Consultor Especialista baseia-se no modelo do artigo Como escrever rapidamente um Consultor Especialista para o Campeonato Automatizado de Comércio de 2010.
A classe CExpertAdvisor é utilizada sem quaisquer alterações. Talvez isto seja um efeito secundário da utilização de aulas? Os resultados dos testes dão a impressão de que a desaceleração começa depois de algum limiar ter sido ultrapassado. Talvez seja uma tabela de transacções de tamanho limitado, após a qual a realocação de memória / recolha de lixo começa a ter efeito?
PS. Mais uma vez, gostaria de lembrar que o Expert Advisor utiliza a funcionalidade de conta Alpari-Demo (margem zero), caso contrário, o número de transacções pode mudar.
Não fui capaz de escrever uma "simples EA" que mostre estes resultados. Aqui está o meu código:
Aqui estão os resultados da optimização, a coluna Resultado mostra o tempo de execução em milissegundos.
Também não há problema com a saída para XLSX?
Não fui capaz de escrever uma "simples EA" que mostre estes resultados. Aqui está o meu código:
Aqui estão os resultados da optimização, a coluna Resultado mostra o tempo de execução em milissegundos.
Tabela - Resultado do Optimizer: Logging OFF? Um efeito secundário do abate de árvores?
Uma EA baseada no modelo do artigo Como escrever uma EA rápida para o Automated Trading Championship 2010.
A classe CExpertAdvisor é utilizada sem quaisquer alterações. Talvez isto seja um efeito secundário da utilização de aulas? Os resultados dos testes dão a impressão de que a desaceleração começa depois de algum limiar ter sido ultrapassado. Talvez seja uma tabela de transacções de tamanho limitado, após a qual a realocação de memória / recolha de lixo começa a ter efeito?
PS. Mais uma vez gostaria de lembrar que o Expert Advisor utiliza uma funcionalidade da conta Alpari-Demo (margem zero), caso contrário o número de transacções pode mudar.
Esta classe contém o método GetDealByOrder(ulong order)
que é chamada em todos os ofícios. Assim, de cada vez que toda a história das transacções é percorrida e há um abrandamento no tempo de teste que é proporcional ao quadrado do número de transacções.
Tais coisas são melhores para não serem utilizadas num Expert Advisor que precisa de ser optimizado ou testado, porque as perdas de tempo são inevitáveis. É melhor substituir estes algoritmos de chamadas para estes casos.
Esta classe contém o método GetDealByOrder(ulong order)
que é chamada em cada transacção. Assim, cada vez que se procura toda a história das trocas e há um abrandamento no tempo de teste, proporcional ao quadrado do número de trocas.
É melhor não usar tais coisas no Expert Advisor que precisa de ser optimizado ou testado, porque as perdas de tempo são inevitáveis. É melhor substituir estes algoritmos de chamadas por estes casos.
Ou seja, todos os que usaram o modelo do Expert Advisor são "afectados"...
E o XLSX? Não tem nada a ver com o código do Expert Advisor, pois não?
Esta classe contém o método GetDealByOrder(ulong order)
ulong CExpertAdvisor::GetDealByOrder(ulong order) // получение тикета сделки по тикету ордера
{
PositionSelect(m_smb);
HistorySelectByPosition(PositionGetInteger(POSITION_IDENTIFIER));
uint total=HistoryDealsTotal();
for(uint i=0; i<total; i++)
{
ulong deal=HistoryDealGetTicket(i);
if(order==HistoryDealGetInteger(deal,DEAL_ORDER))
return(deal); // запомнили тикет сделки
}
return(0);
}
que é chamada em cada transacção. Assim, neste Expert Advisor nestas condições especificadas, todo o histórico de transacções é pesquisado de cada vez, e o tempo de teste que é proporcional ao quadrado do número de transacções, está a abrandar.
É melhor não utilizar tais coisas num Expert Advisor que precisa de ser optimizado ou testado, porque as perdas de tempo são inevitáveis. É melhor substituir estes algoritmos de chamadas para estes casos.
HistorySelectByPosition(PositionGetInteger(POSITION_IDENTIFIER));
Este método pesquisa toda a história, e não apenas aquela parte da história, que está associada a uma posição aberta? Se não tiver mais de 5 negócios ligados a uma posição aberta, penso que é melhor usar HistorySelectByPosition do que olhar para toda a história HistorySelect(0,TimeCurrent());
P.S. CExpertAdvisor não olhou
HistorySelectByPosition(PositionGetInteger(POSITION_IDENTIFIER));
Este método pesquisa toda a história? E não apenas aquela parte da história, que está ligada a uma posição aberta? Se não tiver mais de 5 negócios ligados a uma posição aberta, penso que é melhor usar HistorySelectByPosition do que olhar para toda a história HistorySelect(0,TimeCurrent());
P.S. CExpertAdvisor não olhou
Neste caso, temos milhares de negócios numa só posição, e todos eles têm o mesmo identificador de posição POSITION_IDENTIFIER. Portanto, a chamada de HistorySelectByPosition neste caso é equivalente à chamada deHistorySelect(0,TimeCurrent()), a enumeração destes negócios leva a uma pesquisa de todos os negócios da história.
Digamos , foi feito um infeliz exemplo de utilização do padrão do artigo. É como na história sobre os homens siberianos e as motosserras japonesas.
E o XLSX? O código EA tem alguma coisa a ver com isto?