Erros, bugs, perguntas - página 1634

 
fxsaber:
LifeHack: obter qualquer número de janelas de visualização.
Fazer um depuração histórica do Metaeditor - CTRL+F5. Não feche a janela de visualização que aparece, mas feche a janela terminal. Depois começa-se desde o início. Assim, aparecerão novas janelas de visualização, o que é útil durante a análise das alterações dos resultados da EA, dependendo das alterações feitas no código.

Poderia ser mais simples. Para iniciar a visualização com um avanço.

A próxima visualização será iniciada na segunda, para a frente, visualização

 
fxsaber:
Gostaria de ver no Tester->Settings a opção "Apagar registos anteriores após o início". É cansativo clicar sempre em "Eliminar registos" em Tester->Journal. Obviamente, os registos de testes anteriores podem ser úteis em casos raros. A maior parte das vezes não são necessárias. Portanto, a opção de apagar automaticamente os registos antigos seria útil tanto por conveniência como para poupar espaço no HDD/SDD.
É isso mesmo."Pode vir a ser útil em casos raros"
 
fxsaber:
Como posso saber se o modo Hedge está ligado/desligado na conta/teste? Não há qualquer menção a isto na ajuda offline.

Passe o rato por cima da conta no navegador. Pode vê-lo na ponta de ferramenta da conta.

Quando se liga à conta, o registo do terminal diz netting ou hedging

 

Anteriormente na aplicação #1534780 sobre a chamada do construtor principal onde o resultado do código anexado era


2016.08.10 16:39:26.982 Teste (GBPUSD,M15) nulo A::~A():12855
2016.08.10 16:39:26.982 Teste (GBPUSD,M15) nulo A::A():17233
2016.08.10 16:39:15.587 Teste (GBPUSD,M15) nulo A::A():12855

a resposta (*) foi a seguinte:

Equipa de Apoio 2016.08.11 13:35

Não há nenhuma chamada principal, quando se altera o prazo é criado um novo indicador (clonado), depois o anterior é apagado


Se assim for, então o exemplo seguinte mostra uma chamada atrasada do construtor

Sequência de acções:

  1. Abrir um novo gráfico de GBPUSD,M15
  2. Alterar o período de tempo para H1
  3. Anexe o indicador Test.ex5 ao gráfico
  4. Alterar o período do gráfico para M15

Resultado:

2016.08.11 15:51:51.188 Teste (GBPUSD,M15) vazio A::A():17936
2016.08.11 15:51:50.932 Teste (GBPUSD,H1) vazio A::~A():12285
2016.08.08.11 15:51:50.931 Teste (GBPUSD,H1) OnDeinit:3
2016.08.11 15:51:39.421 Teste (GBPUSD,H1) nulo A::A():12285

deve ser (ver *) - a linha sublinhada deve vir em segundo lugar (a tempo), não durar

//Test.mq5
class A { public:
        A() : a( MathRand()) { Print( __FUNCSIG__, ":", a ); }
        virtual ~A()         { Print( __FUNCSIG__, ":", a ); }
        int a;
};
static A a;
void OnInit() {}
void OnDeinit( const int reason ) { Print( __FUNCTION__, ":", reason ); }
int OnCalculate( const int rates_total, const int, const int, const double& [] ) { return rates_total; }
 

Ocálculo do indicador ocorre num fio de símbolo separado, a definição do período do gráfico e a criação de um clone ocorre num fio GUI

É por isso que uma situação pode ocorrer quando um novo indicador é calculado antes de o anterior ser eliminado e vice-versa.

Operação de fluxo de caracteres (resumo)

  1. acção #1
  2. acção #2
  3. acção #3 - cálculo de indicadores
  4. acção #4
  5. acção #5 - verificar e apagar indicadores não utilizados
  6. acção #6
  7. acção #N
  8. saltar para o passo 1 se não parar o fluxo

Dependendo do ponto em que o fluxo do símbolo estava, a sequência de inicialização de um novo indicador e a eliminação do antigo depende dele.

 
Slawa:
É isso mesmo."podem vir a ser úteis em raras ocasiões".
Portanto, é lógico não escrever gigabytes quando o utilizador o pede especificamente. De qualquer forma, é necessário limpá-los manualmente.
 
Slawa:

Passe o rato por cima da conta no navegador. Verá a ponta de ferramenta da conta.

Após a ligação à conta, o registo terminal mostrará a rede ou a cobertura

Como?
 
fxsaber:
Programmaticamente como?!
ENUM_ACCOUNT_MARGIN_MODE margin_mode=(ENUM_ACCOUNT_MARGIN_MODE)AccountInfoInteger(ACCOUNT_MARGIN_MODE);
bool is_hedging=(margin_mode==ACCOUNT_MARGIN_MODE_RETAIL_HEDGING);
 
fxsaber:
Como posso saber se o modo Hedge está ligado/desligado na conta/teste? A ajuda offline não diz uma palavra sobre o assunto.

Referência MQL5 - Constantes, Contagens e Estruturas Padrão - Estado do Ambiente - Informação de Conta - ENUM_ACCOUNT_MARGIN_MODE

Manual de Referência MQL5 - Informação de Conta - AccountInfoInteger - ENUM_ACCOUNT_INFO_INTEGER - ENUM_ACCOUNT_MARGIN_MODE

MQL5\Include\trade.mqh - CTrade::IsHedging

 
Slawa:

Referência MQL5 - Constantes, Contagens e Estruturas Padrão - Estado do Ambiente - Informação de Conta - ENUM_ACCOUNT_MARGIN_MODE

Manual de Referência MQL5 - AccountInfoInteger - ENUM_ACCOUNT_INFO_INTEGER - ENUM_ACCOUNT_MARGIN_MODE

MQL5\Include\trade.mqh - CTrade::IsHedging

Obrigado! Desculpe, procurei pela palavra Hedge.