Desejos para MT5 - página 31

 

Por favor, considere


Proposta para adicionar à funcionalidade MQL5 que permite mudar de um indicador ou perito ou de um guião

Max barras na janela...

Pode ser útil fazer um programa com limite controlável



 
Aos criadores. Por favor, preste atenção ao meu pedido18097(compreendo que o assunto é controverso, mas mesmo assim)...


PS

Também, se puder - por favor, faça com que os resultados e o gráfico de optimização sejam apagados, caso os testes estejam a decorrer em modo normal.

Ou será um tal truque poder observá-lo em qualquer altura?

 
Interesting:


PS

Também, se puder - por favor, faça com que os resultados e o gráfico de optimização sejam apagados, caso os testes estejam a decorrer em modo normal.

Ou será apenas um truque poder vê-lo em qualquer altura?

Eu opor-me-ia a tal sugestão. Após a optimização, para analisar os resultados, preciso de verificar vários passes separadamente no modo normal (conseguido clicando no passe correspondente). Se os resultados da optimização desaparecerem após o primeiro teste no modo normal, perde-se uma oportunidade valiosa de trabalhar com os resultados.

 
Yedelkin:

Eu opor-me-ia a esta sugestão. Após a optimização, preciso de testar muitos passes individualmente em modo normal para analisar os resultados (obtidos clicando no passe correspondente). Se os resultados da optimização desaparecerem após o primeiro teste no modo normal, perde-se uma oportunidade valiosa de trabalhar com os resultados.

Bem, eu não insisto, que é o que diz a frase - > Ou será um truque tão grande poder olhar para cima a qualquer momento?

 

1)É preciso acrescentar eventos normais, não aquilo que implementou.

A primeira coisa que me veio à cabeça

OnBar,OnBarClose,OnQuote,OnDomChanged...

EmPosiçãoAberta,EmPosiçãoFechada

OnConnected,Ondisconnected...

alterações no estado dos pedidos, etc.

2) fazer documentação semelhante à humana, como aqui: http://msdn.microsoft.com/en-us/library/system.data.aspx

3) "Trazer API para as massas" -)

ps Parece que os criadores ou fazem software para novatos ou são eles próprios

System.Data Namespace ()
System.Data Namespace ()
  • msdn.microsoft.com
The namespace provides access to classes that represent the ADO.NET architecture. ADO.NET lets you build components that efficiently manage data from multiple data sources. In a disconnected scenario such as the Internet, ADO.NET provides the tools to request, update, and reconcile data in multiple tier systems. The ADO.NET architecture is...
 
anubis:

1)É preciso acrescentar eventos normais, não aquilo que implementou.

A primeira coisa que me veio à cabeça

OnBar,OnBarClose,OnQuote,OnDomChanged...

EmPosiçãoAberta,EmPosiçãoFechada

OnConnected,Ondisconnected...

alterações no estado dos pedidos, etc.

2) fazer documentação semelhante à humana, como aqui: http://msdn.microsoft.com/en-us/library/system.data.aspx

3) "Trazer API para as massas" -)

ps Parece que os programadores ou fazem software para novatos ou são como os próprios novatos.

Existem eventos como o USER. Pode implementar qualquer número deles por si próprio.

Já há muito tempo que apanho eventos OnConnected e OnDisconnected através de um temporizador. Se quiser, pode também criar OnBar e OnBarClose ou qualquer outro evento.

Depois pode facilmente apanhá-los no OnChartEvent com a ajuda desse bloco (há tudo isto na ajuda, porquê reinventar a roda?).

  if(id>CHARTEVENT_CUSTOM)
  //User event is received / Получено пользовательское событие
  {
  }

PS

E a nível de classe pode tratar de qualquer (bem, quase qualquer) evento...

 
Interesting:

Existem eventos como o USER. Pode implementar qualquer número deles pessoalmente.

Já há muito tempo que apanho OnConnected e OnDisconnected com um temporizador. Se quiser, pode também criar OnBar e OnBarClose ou qualquer outro evento.

Depois disso, basta apanhá-los no OnChartEvent com a ajuda deste bloco (está tudo na ajuda, porquê reinventar a roda?).

PS

E a nível de classe pode tratar de qualquer (bem, quase qualquer) evento...

Interessante ver como o implementa (OnConnected?)

 

dentraf:

Interessante ver como implementa isto (OnConnected?)

Sim, por favor :)

Aqui está um exemplo de tratamento destes eventos em Expert Advisor com classe CMqlManagerConnect (módulo anexo ao posto).

1. Copiar o módulo para a pasta MQL5 (de preferência numa subdirectoria)

Tenho tudo aqui - MQL5IncluindoUnits Objectos.

2. No Expert Advisor adicionar uma ligação a este ficheiro.

////////////////////////////////////////////////////////////////////////////////
//              Object classes, used in working the trade system              //
////////////////////////////////////////////////////////////////////////////////
#include <\Units\Objects\UManagerConnect.mqh> //Class - CMqlManagerConnect

3. Criar uma variável do tipo CMqlManagerConnect.

////////////////////////////////////////////////////////////////////////////////
//             Global variables, used in working the trade system             //
////////////////////////////////////////////////////////////////////////////////
//****************************************************************************//
//               Objects created on the grounds of the classes                //
//****************************************************************************//
CMqlManagerConnect ManagerConnect; //Менеджер контролирующий состояние коннекта

4. No temporizador vai assim

void OnTimer()
{
//----------------------------------------------------------------------------//
//Work variables / Служебные переменные
//----------------------------------------------------------------------------//
//****************************************************************************//
//                  Контроль состояния соединения с сервером                  // 
//****************************************************************************//
ManagerConnect.OnEventTimer();
//----------------------------------------------------------------------------//
}

5 Deverá escrever o seguinte texto no OnChartEvent

void OnChartEvent(const int id,         // идентификатор события  
                  const long& lparam,   // параметр события типа long
                  const double& dparam, // параметр события типа double
                  const string& sparam  // параметр события типа string
                  )
{
//----------------------------------------------------------------------------//
//Work variables / Служебные переменные
//----------------------------------------------------------------------------//

//****************************************************************************//
//                          Processing user events                            //
//****************************************************************************//
  if(id>CHARTEVENT_CUSTOM)
  //User event is received / Получено пользовательское событие
  {
  //Выводим текстовое сообщение о событии в комментарий
  Comment("User Event ",sparam);

    if(id==CHARTEVENT_CUSTOM+1)
    //Соединеие с сервером востановлено
    {
    //тут обрабатываем все что нам нужно
    }

    if(id==CHARTEVENT_CUSTOM+2)
    //Соединеие с сервером потеряно
    {
    //тут обрабатываем все что нам нужно
    }

  }
//----------------------------------------------------------------------------//  
}

PS

É claro que não pode passar os eventos à OnChartEvent, mas processá-los directamente na classe (quer na base ou descendentes). Mas mesmo com esta abordagem, recomendo deixar a referência à OnChartEvent, porque pode ser necessário contar aos outros gráficos sobre os eventos... :)

Arquivos anexados:
 
Interesting:

Sim, por favor :)

Aqui está um exemplo de como estes eventos são tratados no Expert Advisor usando a classe CMqlManagerConnect (o módulo é anexado ao posto).

1. Copiar o módulo para a pasta MQL5 (de preferência numa subdirectoria)

Tenho tudo aqui - MQL5IncluindoUnits Objectos.

2. No Expert Advisor adicionar uma ligação a este ficheiro.

3. Criar uma variável do tipo CMqlManagerConnect.

4. No temporizador vai assim

5 Deverá escrever o seguinte texto no OnChartEvent

PS

É claro que não pode passar os eventos à OnChartEvent, mas processá-los directamente na classe (quer na base ou descendentes). Mas mesmo com esta abordagem, recomendo deixar a referência à OnChartEvent, porque pode ser necessário contar aos outros gráficos sobre os eventos... :)

Foi você que escreveu a classe CMqlManagerConnect? Tem uma solução para a recuperação do servidor quando perde a ligação ao servidor?
 
dentraf:
Escreveu você mesmo a classe CMqlManagerConnect? Tem uma solução para a enumeração do servidor quando perde a ligação ao servidor?
Claro que eu próprio o escrevi (por exemplo), mas tenho uma forma diferente de resolver este problema. Não existe uma solução de força bruta (pelo menos por agora), mas teremos de abordar também esta questão (as pessoas já contactaram os criadores sobre isto)...