Perguntas sobre MQL5 Wizard e biblioteca padrão de classes comerciais - página 9

 
-Alexey-:

Qual é, então, o seu objectivo prático, e não o de testar? Parece estar lá, mas não se pode utilizá-lo. E porque é que quaisquer perguntas sobre este assunto, como, por exemplo, a proposta de introdução de tal processamento, ou a redacção de um artigo por parte dos criadores, ou algum guia sobre o tratamento de erros, se encontram sempre em silêncio por parte dos criadores? Afinal, eles são os mais competentes na matéria - qual é o problema? Parece estranho, para dizer o mínimo, que em vez de algo realmente útil, estejamos a trabalhar num monte de indicadores que ninguém precisa (0 comentários, 0 pedidos para eles), quando não há base para a negociação - a capacidade de abrir e fechar negócios. A questão do emulador de auto-transacção fica sem resposta. Gostaria de ouvir a resposta.

Portanto, ninguém esconde o facto de que o mago da estratégia é apenas para o testador. )) Basta e rapidamente verificar esta ou aquela ideia e depois decidir em que direcção seguir. E o tratamento de erros não é uma tarefa tão difícil. Pode, pelo menos, ver como os outros o fazem. Por exemplo, a biblioteca de funções da KimIV no quarto fórum. Penso que poderia até escrever um artigo sobre este assunto, mas não tenho assim tanto tempo agora.

E os promotores agora, segundo sei, têm todos os seus esforços concentrados no desenvolvimento do projecto como um todo. Os serviços de Mercado, Sinais e Armazém estão pendurados no ar, talvez mais alguns bugs. Estas são agora, na minha opinião, as principais tarefas.

 
A questão não é se a tarefa é complexa ou não, mas se precisa de ser implementada numa biblioteca padrão. Seria uma boa ideia definir uma lista das principais tarefas ao escrever uma EA e implementá-las para os criadores, para que não haja necessidade de observar como os outros o fazem, ou esperar que alguém tenha tempo para escrever um artigo.
 
beginner:

A questão não é se a tarefa é complexa ou não, mas se precisa de ser implementada numa biblioteca padrão. Seria uma boa ideia definir uma lista das principais tarefas ao escrever a EA e implementá-las para os criadores, para que não haja necessidade de observar como os outros o fazem, ou esperar que alguém tenha tempo para escrever um artigo.
Em qualquer caso, muito provavelmente terá de esperar que a empresa resolva tarefas de maior prioridade. Talvez num futuro próximo venha a ser implementado. Aqui decidi não esperar, pois realmente não gosto de esperar e já a implementei há muito tempo. Não demorou nada. Além disso, fi-lo logo no início da aprendizagem da língua. Poderá escrever o seu pedido para o balcão de serviço. E se eu o fizer? ))
 
tol64:
... Mas e se eu o fizer? ))

Não.

Lamento, mas é para isso que serve a Biblioteca Standard, para conter soluções genéricas. O processamento de erros comerciais depende muito das preferências do comerciante.

Portanto, caros amigos, façamo-lo por nós próprios.

 
tol64:
Em qualquer caso, provavelmente terá de esperar até que a empresa tenha mais prioridades. Talvez venha a ser implementado num futuro próximo. Aqui decidi não esperar, pois realmente não gosto de esperar e já a implementei há muito tempo. Não demorou nada. Além disso, fi-lo logo no início da aprendizagem da língua. Poderá escrever o seu pedido para o balcão de serviço. E se eu o fizer? ))
A implementação pode ser feita por qualquer pessoa, de qualquer forma. Tem a certeza de que fez tudo de forma óptima, correcta e bonita. É claro que pode haver muitas variantes, mas apenas uma típica dos criadores para a personalizar de acordo com as suas necessidades ou utilização como está.
 
beginner:
A implementação pode ser feita por qualquer pessoa e de qualquer forma. Tem a certeza de que fez tudo de forma óptima, correcta e bonita? Claro que pode haver muitas variantes, mas uma típica dos criadores é suficiente para a adaptar às suas necessidades ou utilizá-la tal como está.
Ainda não testado no real, mas aqueles que o testaram (membros competentes do fórum) estão bastante satisfeitos. Basta olhar para a versão final, está disponível, mas para o MT4. O mesmo se passa no MT5. Victor Kirillin já respondeu acima, por isso é melhor não esperar para o fazer. )) Exactamente de acordo com o padrão que desejar.
 

Olá, tenho 2 perguntas.

1) No método duplo CExpertSignal::Direction(), para normalizar o resultado em todos os filtros, dividimos o valor total resultante pelo valor numérico. Suponhamos que usamos um único filtro, então, de acordo com o código da biblioteca padrão, o valor do número que =1 durante a inicialização aumentará +1 e tornar-se-á 2. Assim, o resultado obtido a partir de um filtro é dividido por 2. Pergunta = existe um erro?

duplo CExpertSignal::Direção()

{

CExpertSignal *filtro;

máscara longa;

direcção dupla;

duplo resultado=m_weight*(LongCondition()-ShortCondition());

int número=1; // número de "votado

//---

int total=m_filters.Total();

//--- para depuração

//printf(__FUNÇÃO__+" : %s %d",EnumToString(m_period),total);

//--- laço por filtros

for(int i=0;i<total;i++)

{

//--- máscara para mapas de bits

mask=((long)1)<<<i;

//--- verificação da bandeira de ignorar o sinal do filtro

if((m_ignore&mask)!=0) continuar;

filter=m_filters.at(i);

direcção=filtro.direcção();

//--- o sinal de "proibição

if(direction===EMPTY_VALUE) return(EMPTY_VALUE) return(EMPTY_VALUE)

//--- verificação da bandeira de inversão do sinal do filtro

if((m_invert&mask)!=0) resultado=direcção;

senão resultado+=direcção;

número+++;

}

//--- normalização

resultado/=número;

//--- devolver o resultado

retorno(resultado);

}

2) Poderia dizer-me o que significa a variável m_adjusted_point?

Obrigado.

Документация по MQL5: Стандартная библиотека
Документация по MQL5: Стандартная библиотека
  • www.mql5.com
Стандартная библиотека - Документация по MQL5
 
IlshatG:

Olá, tenho duas perguntas.


1) Não há erro fundamental.

2) Correcção para citações de 3/5 dígitos.

 
uncleVic:

Não.

Lamento, mas é para isso que serve a Biblioteca Padrão, para conter soluções padrão. O processamento de erros comerciais depende muito das preferências do comerciante.

Por isso, caros amigos, é uma coisa do tipo "faça você mesmo".

O que é que as suas preferências têm a ver com isto? Quem conhece melhor as capacidades da configuração do servidor do que você? Ninguém. Pode definir a resposta adequada - a típica - e o comerciante ajustará a resposta de acordo com o seu gosto e conhecimento. Os horários nos protocolos de intercâmbio e assim por diante? O comerciante negoceia ou vai mais fundo no estudo dos erros? O programador deve escrever algoritmos ou estudar os erros? O programador deve estudar o API para escrever um emulador (para um com falhas) de auto-comercialização em caso de falha do servidor ou deve ele/ela escrever algoritmos? Quanto tempo gastar nisto em vez de negociar?
 

Olá.

Decidi escrever o meu próprio módulo de sinal puramente para fins cognitivos. Tenho enfrentado um problema. Tenho de estabelecer ordens pendentes. Compreendi que isso pode ser feito através do CExpertSignal::OpenLongParams(...). Mas eu tenho um problema - o meu testador avisa sobre a Expiração Inválida. Depois de ter mexido no código fonte, apercebi-me que não conseguimos obter nenhum tipo de tempo para além doORDER_TIME_SPECIFIED e gostaríamos de ORDER_TIME_GTC.

Fiz uma jogada inteligente até agora, mas não é bem assim. Corrigi a função na biblioteca:

bool CExpertTrade::SetOrderExpiration(datetime order_expiration)
  {
   if(m_symbol==NULL) return(false);
//---

   if (order_expiration == 0)
   {
      m_order_type_time =ORDER_TIME_GTC;      
   }
   else
        if(!SetOrderTypeTime(ORDER_TIME_SPECIFIED)) return(false);
//---
   m_order_expiration=order_expiration;
//---
   return(true);
  }

O que pode aconselhar

Документация по MQL5: Стандартные константы, перечисления и структуры / Торговые константы / Свойства ордеров
Документация по MQL5: Стандартные константы, перечисления и структуры / Торговые константы / Свойства ордеров
  • www.mql5.com
Стандартные константы, перечисления и структуры / Торговые константы / Свойства ордеров - Документация по MQL5