Eu registraria o valor máximo. O tempo de criação do próximo registro TesterTradeState provavelmente depende da frequência escolhida pelos desenvolvedores e de algumas outras condições.
Se eu tivesse uma tarefa para criar um arquivo tst muito semelhante ao original, não obteria um TesterTradeState[] idêntico .
Após a execução do script SingleTesterCache_Example.ex5, o resultado do Test.tst não é aberto no testador de estratégias ao clicar no botão “Resultados anteriores”.
Anexo o arquivo com o resultado da execução do script e o histórico da conta na qual executei o script.
Ivan Titov testador de estratégias ao clicar no botão “Resultados anteriores”.
Não utilizo o método Save desde a criação da biblioteca (em breve fará sete anos). Nesse período, provavelmente, foram feitas alterações por parte da MQ.
É preciso pegar o tst original, analisá-lo e, em seguida, gravá-lo. Depois, verificar onde está a diferença.
Eu, pessoalmente, ainda não estou pronto para lidar com isso. Não utilizo essa funcionalidade.
Ivan Titov #: Ou seja, no que diz respeito a “gravar arquivos tst” , é melhor não usaressa biblioteca. Apenas no que diz respeito a “ler”. Entendi certo?
Se for para gravar com o Tester, será necessário um ajuste explícito. Qual exatamente, é preciso verificar.
Se for necessário discutir os resultados de um backtest sem divulgar nomes (por exemplo, um expert advisor do Market), é possível tornar o arquivo tst anônimo e publicá-lo tranquilamente no fórum.
Faça da seguinte maneira.
#include <fxsaber\SingleTesterCache\SingleTesterCache.mqh> // https://www.mql5.com/pt/code/27611#include <fxsaber\MultiTester\MTTester.mqh> // https://www.mql5.com/pt/code/26132template <typename T>
void ChangeComments( T &Array[], conststring NewComment = NULL )
{
for (uint i = ArraySize(Array); (bool)i--;)
Array[i].comment = NewComment;
return;
}
void ChangeName( SINGLETESTERCACHE &SingleTesterCache, conststring Name = "Deleted", constbool Comments = false )
{
SingleTesterCache.Header.expert_name = Name; // nome do especialista
SingleTesterCache.Header.expert_path = Name; // nome do especialista com o caminho a partir do MQL5if (!Comments)
{
ChangeComments(SingleTesterCache.Deals);
ChangeComments(SingleTesterCache.Orders);
}
return;
}
voidOnStart()
{
uchar Bytes2[];
if (MTTESTER::GetLastTstCache(Bytes2) != -1) // Se foi possível ler o último registro do cache de uma execução única
{
SINGLETESTERCACHE SingleTesterCache(Bytes2); // Atribuímos esse valor ao objeto correspondente.
ChangeName(SingleTesterCache);
SingleTesterCache.Save("ForumBacktest.tst");
}
}
Primeiro, faça o backtest e, em seguida, execute este script no Terminal. No final, você obterá seu backtest sem dados de identificação. Assim, todas as estatísticas do backtest serão preservadas, e você poderá publicá-las no fórum sem receio.
При составлении портфеля ТС стараются опираться на статистику. Например, пробуют составлять таблицу корреляции на основе вычислений соответствующих коэффициента (КК). Основная причина такого подхода -
Eu registraria o valor máximo. O tempo de criação do próximo registro TesterTradeState provavelmente depende da frequência escolhida pelos desenvolvedores e de algumas outras condições.
Se eu tivesse uma tarefa para criar um arquivo tst muito semelhante ao original, não obteria um TesterTradeState[] idêntico .
Após a execução do script SingleTesterCache_Example.ex5, o resultado do Test.tst não é aberto no testador de estratégias ao clicar no botão “Resultados anteriores”.
Anexo o arquivo com o resultado da execução do script e o histórico da conta na qual executei o script.
Atualizei a biblioteca hoje.
Versão do MT5: 6230.
Não utilizo o método Save desde a criação da biblioteca (em breve fará sete anos). Nesse período, provavelmente, foram feitas alterações por parte da MQ.
É preciso pegar o tst original, analisá-lo e, em seguida, gravá-lo. Depois, verificar onde está a diferença.
Eu, pessoalmente, ainda não estou pronto para lidar com isso. Não utilizo essa funcionalidade.
Ou seja, no que diz respeito a “gravar arquivos tst” , é melhor não usaressa biblioteca. Apenas no que diz respeito a “ler”. Entendi certo?
Se for escrito para ser lido pelo Tester, será necessário um ajuste explícito. Qual exatamente, é preciso verificar.
por 505.
Se for necessário discutir os resultados de um backtest sem divulgar nomes (por exemplo, um expert advisor do Market), é possível tornar o arquivo tst anônimo e publicá-lo tranquilamente no fórum.
Faça da seguinte maneira.
Primeiro, faça o backtest e, em seguida, execute este script no Terminal. No final, você obterá seu backtest sem dados de identificação. Assim, todas as estatísticas do backtest serão preservadas, e você poderá publicá-las no fórum sem receio.
Aqui, no código-fonte, é possível ver como organizar o funcionamento em simultâneo com qualquer número de caches de passagem única.
Mais especificamente, é assim que as transações são selecionadas.