Полностью заменяет ценовую историю пользовательского инструмента в указанном временном интервале данными из массива типа MqlTick |
É muito caro para o script criar um clone de ticks de um símbolo antigo com histórico de ticks já carregado. O CopyTicks não funciona instantaneamente.
Tento fazer um backtest (em qualquer modo) a partir de 1º de agosto e recebo um erroAdded history, sem sorte
Que período de tempo é definido para o teste? O artigo Fundamentals of Testing in MetaTrader 5 diz que são necessárias 100 barras:
O agente de teste baixa apenas o histórico que está faltando, com uma pequena reserva para fornecer os dados necessários sobre o histórico para calcular os indicadores no momento do teste. O volume mínimo de histórico baixado do servidor de negociação para os períodos de tempo D1 e inferiores é de um ano. Assim, se você começar a testar no intervalo 2010.11.01-2010.12.01 (teste no intervalo de um mês) com o período M15 (cada barra é igual a 15 minutos), o terminal solicitará o histórico do instrumento para todo o ano de 2010. Para períodos de tempo semanais, será solicitado o histórico de 100 barras, o que equivale a aproximadamente dois anos (há 52 semanas em um ano). Para testar o período de tempo Mensal, o agente solicitará o histórico de 8 anos (12 meses * 8 anos = 96 meses).
Que período de tempo é definido para o teste? O artigo Fundamentals of Testing in MetaTrader 5 diz que são necessárias 100 barras:
M1. Usei esse script para criar um símbolo.
Além do EURCHF_custom, criei o EURUSD_custom. E o backtest no EURCHF começou, enquanto puxava os dados do EURUSD_custom.
Achei que, depois de excluir o EURUSD_custom, o backtest não funcionaria, mas não. Agora ele funciona.
Não está claro por que tive que criar o EURUSD_custom e depois excluí-lo para que o testador funcionasse.
ZY Bug.
Fórum sobre negociação, sistemas de negociação automatizados e teste de estratégias de negociação.
fxsaber, 2017.09.04 13:54
O novo cruzamento conta corretamente - ele não converte o lucro. Mas, por alguma razão, ele está puxando um major quando não é usado em nenhum outro lugar
2017.09.04 14:46:43.062 Core 1 EURCHF_custom: generate 975389 ticks in 0:00:00.063, passed to tester 3210 ticks 2017.09.04 14:46:43.062 Core 1 EURUSD: generate 979976 ticks in 0:00:00.062, passed to tester 8696 ticks
Além do EURCHF_custom, criei o EURUSD_custom. O backtest do EURCHF continuou, extraindo dados do EURUSD_custom.
Achei que, depois de excluir o EURUSD_custom, o backtest não funcionaria, mas não. Agora ele funciona.
Não está claro por que foi necessário criar o EURUSD_custom e depois excluí-lo para que o testador funcionasse.
Você não fornece todos os detalhes - moeda da conta, moeda do lucro. Se o testador tentar obter o histórico por meio de alguns símbolos, isso significa que ele precisa desses símbolos para os cálculos.
Você não fornece todos os detalhes - moeda da conta, moeda do lucro. Se o testador tentar obter o histórico por meio de alguns símbolos, isso significa que esses símbolos são necessários para os cálculos.
É interessante que o EURCHF real tem CHF como moeda de lucro, EUR como moeda de margem e EUR como moeda base.
Portanto, o testador tem um tipo de paradoxo. Ele precisa calcular quanto EUR (moeda base) está incluído em um lote e, em seguida, converter esse valor em EUR (moeda de margem) - aqui ele só teve sorte com a proporção (EUR/EUR = 1). Em seguida, ele deve converter a margem em USD (moeda da conta) e verificar se é suficiente. Ao calcular o lucro, ele deve converter CHF (moeda do lucro) em USD (moeda da conta).
No total, na pior das hipóteses, o testador deve fazer até três conversões (se as majors correspondentes estiverem disponíveis). E, é claro, puxar adicionalmente TRÊS moedas principais para o cruzamento, no qual o teste é realizado!
Você está testando instrumentos forex no modo forex/taxas cruzadas. Portanto, os requisitos para o ambiente de mercado são os mesmos.
Em suas perguntas, forneça registros completos de uma só vez, não linhas rasgadas, por favor.
Não estou entendendo.
Em anexo.
De acordo com os registros, a moeda de depósito = USD, o teste é realizado no símbolo EURCHF. O testador precisa de cotações EURUSD ou USDEUR para o cálculo da margem.
2017.09.04 15:26:30.999 Tester EURCHF_custom: history data begins from 2017.06.13 00:00 2017.09.04 15:26:31.000 Core 1 agent process started 2017.09.04 15:26:31.442 Core 1 connecting to 127.0.0.1:3000 2017.09.04 15:26:31.442 Core 1 connected 2017.09.04 15:26:31.448 Core 1 authorized (agent build 1653) 2017.09.04 15:26:31.452 Tester EURCHF_custom,M1 (MetaQuotes-Demo): testing of Experts\Test.ex5 from 2017.08.01 00:00 to 2017.08.15 00:00 2017.09.04 15:26:31.468 Core 1 common synchronization completed 2017.09.04 15:26:31.529 Tester quality of analyzed history is 100% 2017.09.04 15:26:31.683 Core 1 MetaTester 5 started on 127.0.0.1:3000 2017.09.04 15:26:31.683 Core 1 initialization finished 2017.09.04 15:26:31.683 Core 1 login (build 1653) 2017.09.04 15:26:31.683 Core 1 38520 bytes of account info loaded 2017.09.04 15:26:31.683 Core 1 1482 bytes of tester parameters loaded 2017.09.04 15:26:31.683 Core 1 2748 bytes of input parameters loaded 2017.09.04 15:26:31.683 Core 1 4356 bytes of symbols list loaded 2017.09.04 15:26:31.683 Core 1 expert file added: Experts\Test.ex5. 446309 bytes loaded 2017.09.04 15:26:31.683 Core 1 initial deposit 10000000.00 USD, leverage 1:500 2017.09.04 15:26:31.683 Core 1 successfully initialized
Ele procura por elas entre os símbolos disponíveis e encontra EURUSD, depois faz o download e as sincroniza
2017.09.04 15:26:31.683 Core 1 EURUSD: symbol to be synchronized 2017.09.04 15:26:31.683 Core 1 EURUSD: symbol synchronized, 3464 bytes of symbol info received 2017.09.04 15:26:31.683 Core 1 EURUSD: load 27 bytes of history data to synchronize in 0:00:00.000 2017.09.04 15:26:31.683 Core 1 EURUSD: history synchronized from 2016.01.04 to 2017.08.15
- 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

Novo artigo Criação e teste de símbolos personalizados na MetaTrader 5 foi publicado:
A criação de símbolos personalizados empurra os limites no desenvolvimento de sistemas de negociação e análise do mercado financeiro. Agora, os traders são capazes de desenhar gráficos e testar estratégias de negociação em um número ilimitado de instrumentos financeiros.
Vamos criar um símbolo personalizado baseado no que já está presente na Observação do Mercado. Abra a janela Símbolos pelo botão direito do mouse e selecione o que você gostaria de usar para criar um símbolo personalizado.
Autor: MetaQuotes Software Corp.