Erros, bugs, perguntas - página 365

 
Yedelkin:
Está OK: "30. MetaTester: Processamento adicional de eventos personalizados para programas MQL5 no testador".

Bem, então, tudo está realmente em ordem e podemos começar a criar e testar estratégias.

E para o campeonato, se alguma coisa, também podemos começar a preparar, é apenas uma questão de regras do novo campeonato...

PS

Para programadores.

Fixámos certamente o processamento, mas quem será capaz de verificar os resultados?

Serão enviados os seguintes eventos

//Messages - Timer
string MsgTimerRolloverHour  = "Rollover Hour (№ %d): Processing of statistical information.";
string MsgTimerRolloverDay   = "Rollover Day (№ %d): Processing of statistical information.";
string MsgTimerRolloverWeek  = "Rollover Week (№ %d): Processing of statistical information.";
string MsgTimerRolloverMonth = "Rollover Month (№ %d): Processing of statistical information.";
string MsgTimerRolloverYear  = "Rollover Year (№ %d): Processing of statistical information.";

//Messages - Timer
int UserEvent_TimerRolloverHour  = CHARTEVENT_CUSTOM+11; //TimerRolloverHour
int UserEvent_TimerRolloverDay   = CHARTEVENT_CUSTOM+12; //TimerRolloverDay
int UserEvent_TimerRolloverWeek  = CHARTEVENT_CUSTOM+13; //TimerRolloverWeek
int UserEvent_TimerRolloverMonth = CHARTEVENT_CUSTOM+14; //TimerRolloverMonth
int UserEvent_TimerRolloverYear  = CHARTEVENT_CUSTOM+15; //TimeRolloverYear

O que se segue passa

2011.04.16 15:41:58     Core 1  2010.01.10 07:00:00   New event ID 11 - Rollover Hour (№ 223): Processing of statistical information.
2011.04.16 15:41:57     Core 1  2010.01.10 06:00:00   New event ID 11 - Rollover Hour (№ 222): Processing of statistical information.
2011.04.16 15:41:57     Core 1  2010.01.10 05:00:00   New event ID 11 - Rollover Hour (№ 221): Processing of statistical information.
2011.04.16 15:41:57     Core 1  2010.01.10 04:00:00   New event ID 11 - Rollover Hour (№ 220): Processing of statistical information.
2011.04.16 15:41:57     Core 1  2010.01.10 03:00:00   New event ID 11 - Rollover Hour (№ 219): Processing of statistical information.
2011.04.16 15:41:57     Core 1  2010.01.10 02:00:00   New event ID 11 - Rollover Hour (№ 218): Processing of statistical information.
2011.04.16 15:41:57     Core 1  2010.01.10 01:00:00   New event ID 11 - Rollover Hour (№ 217): Processing of statistical information.
2011.04.16 15:41:57     Core 1  2010.01.10 00:00:00   New event ID 13 - Rollover Week (№ 2): Processing of statistical information.
2011.04.16 15:41:57     Core 1  2010.01.10 00:00:00   New event ID 12 - Rollover Day (№ 9): Processing of statistical information.
2011.04.16 15:41:57     Core 1  2010.01.10 00:00:00   New event ID 11 - Rollover Hour (№ 216): Processing of statistical information.
2011.04.16 15:41:57     Core 1  2010.01.09 23:00:00   New event ID 11 - Rollover Hour (№ 215): Processing of statistical information.
2011.04.16 15:41:57     Core 1  2010.01.09 22:00:00   New event ID 11 - Rollover Hour (№ 214): Processing of statistical information.
2011.04.16 15:41:57     Core 1  2010.01.09 21:00:00   New event ID 11 - Rollover Hour (№ 213): Processing of statistical information.
2011.04.16 15:41:56     Core 1  2010.01.09 00:00:00   New event ID 12 - Rollover Day (№ 8): Processing of statistical information.

Surgem três questões:

1. Para onde foi o CHARTEVENT_CUSTOM e porque é que o ID 11 é devolvido em vez do 1011?

2. Se a regra da geração de identificação já não é válida, porque não escreveu logo sobre ela na descrição da nova construção?

Refiro-me a isto.

customEventID=CHARTEVENT_CUSTOM+1;
EventChartCustom(0,customEventID-CHARTEVENT_CUSTOM,0,0,message);

3. Precisa de escrever no Service Desk ou o quê?

 

Adenda

E na demonstração parece algo parecido com isto

2011.04.16 15:41:44     123456 (EURUSD,D1)  Stoping: Stoping timer of trade system.
2011.04.16 15:41:44     123456 (EURUSD,D1)  Timer: Timer successfully is stopped.
2011.04.16 15:41:44     123456 (EURUSD,D1)  Stoping: Stoping of the trade system.
2011.04.16 15:41:47     123456 (EURUSD,D1)  Initialization: Loading system information.
2011.04.16 15:41:47     123456 (EURUSD,D1)  Initialization: Changing the template based on the parameters of the trading system.
2011.04.16 15:41:47     123456 (EURUSD,D1)  Initialization: Loading of information on the trade account.
2011.04.16 15:41:47     123456 (EURUSD,D1)  Initialization: Activation timer of the trade system.
2011.04.16 15:41:47     123456 (EURUSD,D1)  Timer: Timer successfully is activated.
2011.04.16 15:41:47     123456 (EURUSD,D1)  Trade system: Processing...
2011.04.16 16:00:00       123456  (EURUSD,D1)    New event ID 1011 - Rollover Hour (№ 1): Processing of statistical information.
Assim, a pergunta 2 é retirada da ordem de trabalhos...
 
Interesting:

E para o campeonato, se houver alguma coisa, também se pode começar a preparar...

Como se costuma dizer, "Boa sorte nos seus esforços"!
 
Yedelkin:
Como se costuma dizer, "Boa sorte nos seus esforços"!
Obrigado, claro, mas prefiro esperar um mês ou dois. Deixe que algumas construções mudem, talvez haja menos bugs óbvios...
 
Interesting:
Obrigado, claro, mas prefiro esperar um mês ou dois. Deixar que uns cinco edifícios mudem, talvez haja menos bugs óbvios...
4 meses para se preparar para o concurso? Haverá tempo suficiente?
 
Yedelkin:
Em quatro meses para se preparar para o concurso? Haverá tempo suficiente?
Melhor em 4 meses sobre construções "normais" do que consertar os seus próprios bugs e os dos outros mais tarde.
 
Interesting:

1. Para onde foi o CHARTEVENT_CUSTOM e porque é que o ID 11 é devolvido em vez do 1011?

Verifiquei a minha demo. OnChartEvent() dá identificação com CHARTEVENT_CUSTOM.
 
Interesting:
Melhor para 4 sobre as construções "normais", do que para corrigir os seus próprios erros e os dos outros.

Não há assim tantos "insectos" que venham à luz. Na grande maioria dos casos, a plataforma é estável. Além disso, ninguém garante que um erro relativo ao seu programa será detectado por outra pessoa. E que no momento do lançamento da sua formação as construções se revelarão "normais" no seu entendimento :) . É claro, o "mestre é o mestre".

 
Yedelkin:

Não há assim tantos "insectos" que venham à luz. Na grande maioria dos casos, a plataforma é estável. Além disso, ninguém garante que um erro relativo ao seu programa será detectado por outra pessoa. E que no momento do lançamento da sua formação as construções serão "normais" na sua opinião :) . É claro que é o mestre do jogo.

1. Mesmo que o meu Expert Advisor tenha 100K linhas, terei de o fazer dentro de 4 meses. O principal é assegurar que as condições comerciais melhor se adaptem à estratégia.

Por agora estou a concentrar-me nas regras de 2010, mas quero algo mais.

2. Claro que há bastantes bugs, mas se alguma coisa, eles não podem ser evitados pelo CAVALO DE FUCKING, e penso que mais perto do início do Campeonato os criadores devem fazer uma visualização e acrescentar novas funcionalidades.

 
Interesting:

1. Mesmo que o Expert Advisor tenha 100K linhas em 4 meses, deve funcionar. O principal é que as condições comerciais devem ser as mais adequadas à estratégia.

Ainda me guio pelas regras de 2010, mas quero algo mais.

2. Claro que não há demasiados bugs, mas não sei como evitá-los, e penso que os criadores do Campeonato deveriam preparar a visualização e acrescentar novas funcionalidades perto do início do Campeonato.

OK, estou a ver. Para mim, o principal é tornar a estratégia mais adequada às condições comerciais. Mas essa é a área de visão :) E que outras novidades, para além da estrutura do evento comercial, espera?

A propósito, no meu testador CHARTEVENT_CUSTOM também falta, mas recebo o velho erro de uma das classes. Por isso, vou analisar de que lado está o problema.