Discussão do artigo "Apresentação personalizada do histórico de negociação e criação de gráficos para relatórios" - página 2

 
Aleksey Vyazmikin:

Talvez eu não esteja explicando da maneira correta, o arquivo "dealHistory.csv" foi baixado com o arquivo, ele já contém dados, entendo que o relatório será criado com base neles. Como posso fazer com que o relatório seja criado com base em meus dados?

Agora entendo você. Você executou os dois testes. No script que anexei, há dois testes: o primeiro - os dados são obtidos do arquivo. O segundo - os dados são obtidos do terminal em seu histórico.

 
Andrey Azatskiy:

Entendi o que você quis dizer. Você executou os dois testes. No script que anexei, há dois testes: no primeiro, os dados são obtidos do arquivo. O segundo - os dados são obtidos do terminal pelo seu histórico.

E como você alterna entre eles?

 
Você precisa do segundo teste. Em geral, você pode escrever seu próprio teste. O arquivo DealHistoryGetter.mqh cria um relatório de histórico e o arquivo ReportGetter.mqh calcula os indicadores descritos no artigo.
Modifiquei um pouco esses arquivos e agora estou escrevendo o segundo artigo, no qual anexarei uma nova versão dessas classes, na qual incluí mais indicadores e melhorei um pouco o código.
 
Aleksey Vyazmikin:

E como alterná-los?

Eu não implementei a troca, o script de teste primeiro cria testes de histórico a partir do arquivo e, em seguida, repete os testes de histórico a partir do terminal. Para zonear manualmente de forma desnecessária ou para escrever seu próprio teste. Ou especifique o caminho para o arquivo de teste com o histórico registrado e passe por todos os testes (meu histórico e o seu)

 
Andrey Azatskiy:
Você precisa do segundo teste. De modo geral, você pode escrever seu próprio teste. O arquivo DealHistoryGetter.mqh cria um relatório de histórico e o arquivo ReportGetter.mqh calcula os indicadores descritos no artigo.
Modifiquei um pouco esses arquivos e agora estou escrevendo o segundo artigo, no qual anexarei uma nova versão dessas classes, na qual incluí mais indicadores e melhorei um pouco o código.

É suficiente comentar o segundo teste?

//void test_1(string pathToFile_historyData);
void test_2(string pathToDir);

Alterei os caminhos para os arquivos

//input string data_file_name ="C:\\MQL5 history saving test\\\dealHistory.csv"; // caminho para o arquivo CSV com histórico
input string data_file_name ="C:\Arquivos de programas\Broker de abertura\MQL5\Files\dealHistory.csv";    // caminho para o arquivo CSV com histórico
//input string report1_folder_name ="C:\\MQL5 test_1 to save report"; // pasta para carregar os resultados do teste nº 1
//input string report2_folder_name ="C:\\MQL5 test_2 to save the report"; // pasta para carregar os resultados do teste nº 2
input string report1_folder_name ="C:\Arquivos de programas\Broker de abertura\MQL5\Files\1";                // pasta para fazer upload dos resultados do teste nº 1
input string report2_folder_name ="C:\Arquivos de programas\Broker de abertura\MQL5\Files\2";                // pasta para fazer upload dos resultados do teste nº 2

Como resultado, recebo erros:

2018.09.01 18:48:38.386 Get_TradingHistory (GAZR Splice,H1)     Failed FindFirstFile ("C:\Program Files\Открытие Брокер\MQL5\Files ") with error: 7b
2018.09.01 18:48:38.386 Get_TradingHistory (GAZR Splice,H1)     Failed CreateDirectoryW ("C:\Program Files\Открытие Брокер\MQL5\Files ") with error: 7b
2018.09.01 18:48:38.391 Get_TradingHistory (GAZR Splice,H1)     Error CopyFile C:\Users\***\AppData\Roaming\MetaQuotes\Terminal\Common\Files\temp.csv to C:\Program Files\Открытие Брокер\MQL5\Files \Графики PL.csv
2018.09.01 18:48:38.394 Get_TradingHistory (GAZR Splice,H1)     Error CopyFile C:\Users\***\AppData\Roaming\MetaQuotes\Terminal\Common\Files\temp.csv to C:\Program Files\Открытие Брокер\MQL5\Files \Гистограмма PL.csv
2018.09.01 18:48:38.395 Get_TradingHistory (GAZR Splice,H1)     Error CopyFile C:\Users\***\AppData\Roaming\MetaQuotes\Terminal\Common\Files\temp.csv to C:\Program Files\Открытие Брокер\MQL5\Files \PL по дням.csv
2018.09.01 18:48:38.396 Get_TradingHistory (GAZR Splice,H1)     Error CopyFile C:\Users\***\AppData\Roaming\MetaQuotes\Terminal\Common\Files\temp.csv to C:\Program Files\Открытие Брокер\MQL5\Files \Крайние точки.csv
2018.09.01 18:48:38.397 Get_TradingHistory (GAZR Splice,H1)     Error CopyFile C:\Users\***\AppData\Roaming\MetaQuotes\Terminal\Common\Files\temp.csv to C:\Program Files\Открытие Брокер\MQL5\Files \Абсолютные показатели прибыли и убытка.csv
2018.09.01 18:48:38.398 Get_TradingHistory (GAZR Splice,H1)     Error CopyFile C:\Users\***\AppData\Roaming\MetaQuotes\Terminal\Common\Files\temp.csv to C:\Program Files\Открытие Брокер\MQL5\Files \Проценты кол-ва сделок.csv
2018.09.01 18:48:38.399 Get_TradingHistory (GAZR Splice,H1)     Error CopyFile C:\Users\***\AppData\Roaming\MetaQuotes\Terminal\Common\Files\temp.csv to C:\Program Files\Открытие Брокер\MQL5\Files \Таблица основных показателей.csv
2018.09.01 18:48:38.400 Get_TradingHistory (GAZR Splice,H1)     Error CopyFile C:\Users\***\AppData\Roaming\MetaQuotes\Terminal\Common\Files\temp.csv to C:\Program Files\Открытие Брокер\MQL5\Files \Краткая сводка по графику PL.csv
2018.09.01 18:48:38.436 Get_TradingHistory (GAZR Splice,H1)     An error occurred while test_11 !
2018.09.01 18:49:29.246 Get_TradingHistory (GAZR Splice,H1)     zero divide in 'DealHistoryGetter.mqh' (432,60)
 
Aleksey Vyazmikin:

Para ativar o segundo teste, um comentário é suficiente para ativar o segundo teste?

Alterei os caminhos dos arquivos

Acabo recebendo erros:

Sim, se você comentar test_1(data_file_name,report1_folder_name); somente o segundo teste será executado.

1) Bem, funciona para abrir o arquivo com o histórico anexado no caminho"C:\Program Files/open Broker\MQL5\Files " - Seja pelos direitos ou porque o espaço foi bloqueado, parece que você consegue abrir a pasta como um arquivo.
2) Bem, funciona para criar um diretório no caminho que você passou
3) Não funciona para criar arquivos csv no caminho que você passou
4) Divisão por zero (mas não pode ser se o histórico foi aberto corretamente, porque na primeira iteração da matriz com lotes o primeiro valor é inserido na matriz com lotes).


Posso aconselhá-lo a mudar o diretório com os arquivos para a área de trabalho, por exemplo.

 
E, a propósito, ao passar um caminho, a barra invertida deve ser escapada (escreva \\\\).
 

Corrigi os caminhos

//input string data_file_name ="C:\\MQL5 history saving test\\\dealHistory.csv"; // caminho para o arquivo CSV com histórico
input string data_file_name ="C:{\Program Files}{\Program Files} {\Opening Broker\\MQL5\Files\dealHistory.csv}";    // caminho para o arquivo CSV com histórico
//input string report1_folder_name ="C:\\MQL5 test_1 to save report"; // pasta para carregar os resultados do teste nº 1
//input string report2_folder_name ="C:\\MQL5 test_2 to save the report"; // pasta para carregar os resultados do teste nº 2
input string report1_folder_name ="C:{\Program Files}{\Program Files} {\Opening Broker\\MQL5\Files\1}";                // pasta para fazer upload dos resultados do teste nº 1
input string report2_folder_name ="C:{\Program Files}{\Program Files} {\Opening Broker\\MQL5\Files\2}";                // pasta para fazer upload dos resultados do teste nº 2

Os seguintes erros permanecem

2018.09.01 18:59:09.799 Get_TradingHistory (GAZR Splice,H1)     An error occurred while test_11 !
2018.09.01 19:00:01.201 Get_TradingHistory (GAZR Splice,H1)     zero divide in 'DealHistoryGetter.mqh' (432,60)

Há arquivos na pasta 1(report1_folder_name), mas nada na pasta 2. A propósito, não há nenhum relatório de resumo. Em que pasta devo procurá-lo? No gráfico, vejo como os diferentes gráficos são criados, mas não entendo onde essas imagens são colocadas....

O que mais posso consertar?

 
Aleksey Vyazmikin:

Corrigi os caminhos

Esses erros permanecem

Há arquivos na pasta 1(report1_folder_name), mas nada na pasta 2. A propósito, não há nenhum relatório de resumo. Em que pasta devo procurá-lo? Posso ver como os diferentes gráficos são construídos na tabela, mas não entendo onde essas imagens estão localizadas....

O que mais devo corrigir?

Tente substituir o arquivo DealHistoryGetter.mqh pelo arquivo anexado a esta mensagem.

Arquivos anexados:
 
Informe-me sobre o resultado