[ARQUIVO!] Qualquer pergunta de novato, para não desorganizar o fórum. Profissionais, não passem por aqui. Em nenhum lugar sem você - 4. - página 515

 
TarasBY:

Leia atentamente a função OrderSend(). Ele tem um parâmetro para as ordens pendentes:

Se você abrir uma ordem pendente no início do dia atual = iTime (Symbol(), PERÍODO_D1, 0), então você acrescenta a esta hora mais um dia - 1440 * 60. As ordens pendentes que não são acionadas são automaticamente apagadas no início do dia seguinte.


Eu o li, meu CD não parece apoiá-lo.
 
Noterday:
Eu o li, o CD parece não suportar isso.
Existe tal coisa?
 
Bem, eu acho que sim, ou talvez seja apenas um problema com meu terminal. Eu já disse em um tópico vizinho que também não estou salvando relatórios da guia HISTÓRIA da Conta...
 
Noterday:
Bem, eu acho que sim, ou talvez seja apenas um problema com meu terminal. Eu já disse em um tópico vizinho que também não estou salvando relatórios da guia HISTÓRIA da Conta...
Curiosamente, nem eu, embora minha construção seja 416. Embora, o terminal não tenha nada a ver com a eliminação de ordem pendente que não funcionou quando expirou - esta é uma competência do servidor da corretora.
 
hoz:

Honestamente, eu já estou completamente confuso. Não tenho nem mesmo exemplos para ver como os outros o fazem.

Eu entendo que, além de obter os valores, você tem que atribuí-los a algumas outras variáveis?


Eu não preciso do básico. Estou bem ciente da visibilidade variável. Não há nada no livro de texto sobre a passagem de valores de variáveis por referência. Por que você está me enviando para lá? Você está brincando comigo?


Não, não estou. Sua opinião sobre seu conhecimento de escopo é muito exagerada. Não é para insultar, é apenas óbvio que você não dominou o básico.

Tenho algum tempo, por isso vou tentar "com os dedos": Você descreveu variáveis dentro de uma função - é aí que elas existem. A função completou seu trabalho e a memória alocada para as variáveis é liberada. Então faça referência ao que você usa fora do escopo das variáveis? Pode haver qualquer "lixo" neste endereço. Só podemos nos alegrar com o fato de que os desenvolvedores tiveram clarividência e excluíram a aritmética de endereço. O resultado da função, se precisarmos passar para fora, é sempre passado por valor, não por referência (ou seja, passamos o valor em si, não o endereço da célula de memória onde o valor é armazenado). Há, naturalmente, exceções, mas não para µl4 (exceto quando se trabalha com arrays). Portanto, por favor, releia-o - não vai doer.

 
VladislavVG:

Só podemos nos regozijar com a clarividência dos desenvolvedores que eliminaram a aritmética de endereços.

Mas está lá, apesar de não estar descrito ...
 
valenok2003:


E os arrays?


Com arrays não é difícil: geralmente um array como parâmetro é passado por referência de fora - dentro da função, você o processa dentro da função e não precisa devolver nada - o resultado é obtido de uma só vez. A necessidade de retornar a referência (ou endereço) pode surgir se você estiver alocando dinamicamente a memória para a matriz dentro de uma função, e descrevendo a própria matriz ali. Então, para usar esta matriz fora da função, você precisa passar o endereço da área de memória alocada fora da função.

Parece mais assustador do que é. Se não estiver claro, posso lhe dar alguns exemplos.

 
VladislavVG:


Não é complicado com matrizes: geralmente uma matriz como parâmetro é passada por referência de fora - dentro da função, você a processa dentro da função e não precisa devolver nada - o resultado é obtido imediatamente. A necessidade de retornar a referência (ou endereço) pode surgir se você estiver alocando dinamicamente a memória para a matriz dentro de uma função, e descrevendo a própria matriz ali. Então, para usar esta matriz fora da função, você precisa passar o endereço da área de memória alocada fora da função.

Parece mais assustador do que é. Se você não entender, posso lhe dar alguns exemplos.



Obrigado, isso é claro. Ou seja, se uma variável ou uma matriz for descrita em um nível superior, você pode referenciar seu endereço para frente e para trás tanto quanto quiser.
 
valenok2003:


obrigado, isso foi claro, ou seja, se uma variável ou um array for descrito em um nível superior, você pode referir seu endereço o quanto quiser

Certo.
 

Boa noite.

Eu sou um pouco "cruciano" quando se trata de codificação :) Estou construindo um Consultor Especialista baseado no indicador Fibonacci. Não estou prestando atenção à estratégia até agora. Meu problema é 7 níveis de Fibonacci, como fazer cada nível ser atravessado por 2 ordens pendentes diferentes e não mais.

Agradecia quaisquer dicas.

Desculpe pelo meu incômodo russo.

Arquivos anexados:
Razão: