[ARQUIVO] Qualquer pergunta de novato, de modo a não desorganizar o fórum. Profissionais, não passem por aqui. Em nenhum lugar sem você - 3. - página 635

 
ikatsko:

Estudou operações de arquivo em MQL. Acontece que: os arquivos só podem ser abertos em arquivos do terminal_diretório (citação).

Ou seja, de outro terminal, este arquivo não é visível!!!

Por que você não quer rodar os dois EAs no mesmo terminal?

Como solução temporária, você pode colocar uma ordem pendente longe do mercado com um lote pequeno. E o segundo a observar se o pedido (por exemplo, no mágico - por exemplo, com o número 999 - iniciar o comércio, com o número 888 - parar)

 

Boa tarde!

Eu escrevi um EA, mas não é comercial. Eu faço uma verificação logo no início:

if (Volume[0]>2)
   {
   Print("Алгоритм работает");
   //+---------------------------------------------------------------+
   //| блок формирования соответствующих векторов                    |
   //+---------------------------------------------------------------+
   ....

E não imprime o texto no registro, que está na impressora. Portanto, concluo que a condição não passa, acho que a solução é trivial)))))

 
ikatsko:

Estudou operações de arquivo em MQL. Acontece que:os arquivos só podem ser abertos em arquivos do terminal_diretório (citação).

Então, de outro terminal, este arquivo não é visível!!!

https://www.mql5.com/ru/forum/138054

O Windows permite mapear um disco virtual para uma ou mais pastas. Desta forma, você pode fundir as pastas de vários terminais.

 
ikatsko:
Bem, aqui é muito complicado. :(
FileMapCreate(NULL, NameFileMap0, MemorySize); // Создаём отображение.
// hMapping = FileMapOpen(NameFileMap0); // Это, как ещё один вариант, если отображение уже открыто. В любом случае можно всегда открывать через "FileMapCreate()".
sComment = sComment + "Записываем число типа BOOL: (" + FileMapWriteBool(NameFileMap0, StartByte, bValue) + ")  " + bValue + "\n";
sComment = sComment + "Читаем число типа BOOL:" + FileMapReadBool(NameFileMap0, StartByte) + "\n";
Comment(sComment);
Tudo é terrivelmente complicado. Será que você tem programas MQL4 com menos de 3 linhas? Para torná-lo mais simples?
 

Hi

Caros programadores, ajudem-me a resolver um problema simples, quem pode

Dado:

1. Linha vertical 1 "Ver1

(nome arbitrário)

2. Linha vertical 2 "Ver2

(nome arbitrário)

3. Linha Horizontal 1 "Hor1

(nome arbitrário)


Tarefa:

Traçar uma linha de tendência (segmento)

que começa em Ver1 e termina em Ver2 com o valor de preço Hor1

 
alsu:
Leia sobre arrays na documentação. Uma maneira é fazer um array estático, ou seja, um array com um tamanho predefinido: duplo a[55443]; outra maneira é fazer um array dinâmico, ou seja, declarar um array de tamanho indefinido duplo a[], e então determinar/calcular o tamanho que precisamos no código do programa: ArrayResize(a,N)


Muito obrigado! Com a função ArrayResize, tudo se encaixou no lugar!

P.S. O problema todo acabou por faltar apenas uma linha!!!!!!

 
oleksaz:

Hi

Caros programadores, ajudem-me a resolver um problema simples, quem pode

Dado:

1. Linha vertical 1 "Ver1

(nome arbitrário)

obtê-lo OBJPROP_TIME1

2. Linha vertical 2 "Ver2

(nome arbitrário)

obtê-lo OBJPROP_TIME1

3. Linha Horizontal 1 "Hor1

(nome arbitrário)

obtê-lo OBJPROP_PRICE1

Tarefa:

Traçar uma linha de tendência (segmento)

que começa em Ver1 e termina em Ver2 com o valor de preço Hor1


construir um objeto de linha de tendência com base nos dados de tempo e preço recebidos
 
orb:

Boa tarde!

Eu escrevi um EA, mas não é comercial. Eu faço uma verificação logo no início:

E não imprime o texto no registro, que está na impressora. Portanto, concluo que a condição falha, acho que a solução é trivial)))))



Verifique qual modelo de teste, se a preços de abertura, a condição falhará.
 
Você pode me dizer que tipo de erro ocorre durante a otimização, ele não é completo. O que tem a ver com isso? Uma foto é anexada.
 
orb:
Você pode me dizer que tipo de erro ocorre durante a otimização, ele não é completo. O que tem a ver com isso? Estou anexando uma foto.


Isto não é um erro - é uma mensagem de que o saldo mínimo foi alcançado - ou seja, a conta está esgotada - a execução é concluída e um novo é iniciado com outro conjunto de parâmetros de entrada - veja as caixas de seleção e defina os valores limite na guia Otimização do testador:

Razão: