Erros, bugs, perguntas - página 1018

 
A100:
Não funciona em períodos não comerciais. O que é que está no caminho?

Tem a certeza sobre os parâmetros?

Ambos os exemplos parecem errados:

ChartGetInteger( chart_ID, CHART_BRING_TO_TOP, 0, true )  - последний параметр должен быть long&, а не bool
ChartGetInteger( chart_ID, CHART_BRING_TO_TOP, true )     - последний параметр должен быть номер подокна, а не bool

Parece confundido com ChartSetInteger?

 
Renat:

Tem a certeza sobre os parâmetros?

Ambos os exemplos parecem errados:

Parece confundido com ChartSetInteger?

Sim, desculpe, mal traduzido do meu código - não funciona em tempo não comercial
bool bringToTop = true;
ChartSetInteger( chart_ID, CHART_BRING_TO_TOP, 0, bringToTop ) 
ChartSetInteger( chart_ID, CHART_BRING_TO_TOP, true )
//этим хотел показать что пробовал оба варианта
ChartGetInteger e não deve funcionar, porque CHART_BRING_TO_TOP- escrever apenas. Irei corrigir a aplicação ao ServiceDesk
 

Estou a fazer um retracement (com uma pausa de 5000) de todos os gráficos:

a) (ontem) dia não comercial - sem reacção - quando se descarrega o guião vai para o 1º gráfico, mesmo que o guião não tenha sido iniciado a partir dele

b) agora - tudo funciona correctamente

Se necessário - anexarei o código - um simples laço - GetLastError - sem erros

 

Não sei como isto é importante, mas

ChartSetInteger( chart_ID, CHART_BRING_TO_TOP, true )
ChartSetInteger( chart_ID, CHART_BRING_TO_TOP, false )
agora (no momento da negociação) funciona da mesma maneira - o gráfico é colocado em cima dos outros
 

Fórum sobre comércio, sistemas automatizados de comércio e testes de estratégia comercial

Insectos, insectos, perguntas

Renat, 2013.07.22 09:22

Tem a certeza sobre os parâmetros?

Ambos os exemplos parecem errados:

ChartGetInteger( chart_ID, CHART_BRING_TO_TOP, 0, true )  - последний параметр должен быть long&, а не bool
ChartGetInteger( chart_ID, CHART_BRING_TO_TOP, true )     - последний параметр должен быть номер подокна, а не bool

Parece confundido com ChartSetInteger?

Se o meu erro for confirmado e as alterações forem feitas - também peço para considerar fazer CHART_BRING_TO_TOP não só escrever, mas também ler como escreveu através de ChartGetInteger.
long ChartID()
não pode ajudar neste caso, uma vez que este último não devolve a selecção actual, mas sim aquela a partir da qual o guião está a correr. E no processo de execução do guião, o utilizador pode alterar o guião actual.
 
MetaDriver:

Apenas lotes e lotes de .mqh e um executável .mq5, nada mais.

Deixem-me acrescentar. A vantagem da abordagem absoluta, modular em comparação com a relativa, é que no caso de
Print( __FUNCTION__, __FILE__ )

Se houver apenas um módulo .ex5, não é claro qual procurar entre os muitos módulos .mqh, o que faz uma grande diferença dado o grande tamanho do código.

Por favor, pergunte também aos Desenvolvedores:

É possível introduzir uma macrossubstituição adicional pré-definida__MÓDULO__ análoga a __FILE__ - apenas sem extensão .mq5?

Isto é necessário para compilar uma expressão da seguinte forma: __MÓDULO__::f()

Isto é frequentemente utilizado durante o desenvolvimento para alterar os nomes de ficheiros e funções de transferência de módulo para módulo.

 
A100:
Acrescentarei. A vantagem da abordagem modular absoluta, em comparação com a abordagem relativa, é que quando emerge de

não é claro em que módulo procurar a função, e se houver apenas um .ex5, não é claro em que .mqh, o que faz uma grande diferença quando o código é grande.

Estás a delirar, irmão.

h1.mqh :

string GetH1()
{
  return  "Файл: "+__FILE__+"   Функция: "+__FUNCTION__;
}

h2.mqh :

string GetH2()
{
  return  "Файл: "+__FILE__+"   Функция: "+__FUNCTION__;
}

PrintTest, mq5 :

#include "h1.mqh"
#include "h2.mqh"

void OnStart()
  {
   Print( "Файл: "+__FILE__+"   Функция: "+__FUNCTION__);
   Print(GetH1());
   Print(GetH2());
  }
//+------------------------------------------------------------------+

Resultado:

2013.07.22 14:40:17 PrintTest (EURUSD,M1) Ficheiro: h2.mqh Função: GetH2
2013.07.22 14:40:17 PrintTest (EURUSD,M1) Ficheiro: h1.mqh Função: GetH1
2013.07.22 14:40:17 PrintTest (EURUSD,M1) Ficheiro: PrintTest.mq5 Função : OnStart

---

Por favor, faça uma conclusão por si mesmo: "Antes de desenvolver ninhos grandiosos define, é uma boa ideia compreender como funciona realmente o pré-processador".

Boa sorte para si!

Arquivos anexados:
h1.mqh  1 kb
h2.mqh  1 kb
PrintTest.mq5  1 kb
 
MetaDriver:

Por favor, conclua: "Antes de conceber grandiosos, multi-nested define, é uma boa ideia compreender como funciona realmente o pré-processador.

Dedicar algum tempo e esforço a isto. É necessário aprender mais sobre o local de construção e as propriedades materiais para construir estruturas fortes e confortáveis.

A sua mente é muito sofisticada e atenciosa, mas ao alimentar as suas próprias conclusões apressadas com o seu contributo, está condenado a tomar frequentemente decisões erradas.

 
MetaDriver:

A sua mente é muito sofisticada e pensativa, mas ao alimentá-la as suas próprias conclusões apressadas, está condenado a tomar muitas vezes decisões erradas.

Posso juntar-me à vossa Padawan? :)
 
TheXpert:
Posso juntar-me à vossa Padawan? :)

Existe algum dinheiro? :))

--

Mas não vamos brincar:

É uma pena que quase não haja tópicos neste fórum dedicados à estruturação sensata de programas. Uma estrutura harmoniosa é a chave para um desenvolvimento sem problemas de grandes sistemas.

Como encorajar as pessoas a discutir tais coisas?