1.Nada sobre não associar o número tampão indicador com o indicador. Como há um indicador, ele tem automaticamente um buffer 0 e foi isso que especifiquei.
2. Se eu tiver o controle do indicador na inicialização, quando eu mudar os parâmetros que são passados para o indicador, eu preciso preencher novamente o EA para que o evento de inicialização venha e os novos parâmetros sejam aplicados?
É assim que eu obtenho os dados atuais da média móvel, isto é correto?
Duas perguntas.
1.Nada sobre não associar o número tampão indicador com o indicador. Como há um indicador, ele tem automaticamente um buffer 0 e foi isso que especifiquei.
2. Se eu tiver o controle do indicador na inicialização, quando eu mudar os parâmetros que são passados para o indicador, preciso recarregar a EA no gráfico para que o evento de inicialização ocorra e os novos parâmetros sejam aplicados?
intCopyBuffer(
int indicator_handle, // handle индикатораint buffer_num, // номер буфера индикатораint start_pos, // откуда начнем int count, // сколько копируемdouble buffer[] // массив, куда будут скопированы данные
);
Há uma função que requer a manipulação do indicador (no seu caso, esta é a variávelma_handle e o número de buffer '0' - zero, porque o indicador Moving Average tem apenas um buffer).
2. Se você alterar os parâmetros de entrada em seu EA, ele inicializará seu EA novamente e o manípulo indicador será criado no OnInit com os parâmetros que você inseriu.
Отсчет элементов копируемых данных (индикаторный буфер с индексом buffer_num) от стартовой позиции ведется от настоящего к прошлому, то есть стартовая позиция, равная 0, означает текущий бар (значение индикатора для текущего бара). При копировании заранее неизвестного количества данных в качестве массива-приемника buffer[] желательно...
Sim, não está claro qual é o número do indicador tampão, como estes tampões são criados, se pertencem a um indicador específico ou se têm uma numeração comum. A documentação diz para escrever SetIndexBuffer(), mas no exemplo da Moving Average é escrito sem. Li a referência e pesquisei artigos adicionais, mas ainda não está claro. O pré-processador precisa especificar os amortecedores e por que os amortecedores devem ser um a menos do que na diretiva do pré-processador e não o mesmo.
Ivan_Invanov: Não sei o que é um número tampão indicador, como esses tampões são criados e se são atribuídos a um determinado indicador ou se têm a mesma numeração. A documentação diz para escrever SetIndexBuffer(), mas no exemplo da Moving Average é escrito sem. Li a referência e pesquisei artigos adicionais, mas ainda não está claro. O pré-processador precisa especificar os amortecedores e por que os amortecedores devem ser um a menos do que na diretiva do pré-processador e não o mesmo.
Se você procura algum significado metafísico... então, muita coisa se torna incompreensível. Caso contrário, é apenas um número. Ela pertence a um indicador específico.
Os Conselheiros Especialistas não têm tampão indicador, portanto não pode haver uma chamada SetIndexBufer().
Não um a menos, mas exatamente o mesmo. Ao contar a partir de zero, o último número é 1 a menos do que o número total.
Se você não se importa, responda a mais algumas perguntas, por favor.
1. Eu não entendo porque preciso atribuir 0 a uma variável declarada se vou atribuir algo mais tarde de qualquer forma. E além disso, às vezes não é atribuído 0, às vezes é.
E dizem que você precisa apagar objetos na desinicialização (não entendo por quê), mas um cabo indicador é um objeto, mas normalmente não é apagado, por que isso?
3.MqlTradeRequest request={0}; O que isso significa? Provavelmente, toda a estrutura é atribuída a 0, mas ela não contém apenas tipos numéricos.
4. E por que existe aqui uma operação lógica?
boolOrderSend(
MqlTradeRequest& request, // структура запросаMqlTradeResult& result // структура ответа
);
Se você não se importa, responda a mais algumas perguntas, por favor.
1. Eu não entendo porque preciso atribuir 0 a uma variável declarada se vou atribuir algo mais tarde de qualquer forma. E além disso, às vezes não é atribuído 0, às vezes é.
E dizem que você precisa apagar objetos na desinicialização (não entendo por quê), mas um cabo indicador é um objeto, mas normalmente não é apagado, por que isso?
3.MqlTradeRequest request={0}; O que isso significa? Provavelmente, toda a estrutura é atribuída a 0, mas não se trata apenas de tipos numéricos.
4. Por que precisamos de uma operação lógica aqui?
1. Por hábito.
2. é outro objeto. Ele será descarregado por si mesmo, mas pode ser acelerado pela função IndicatorRelease().
3. está limpo e pronto.
4. Esta não é uma operação lógica, mas uma transferência de variável por referência.
Estou confuso com alguma coisa. Quando SYMBOL_TRADE_EXECUTION_MARKET é executado. Posso fazer algo para abrir pedidos a um determinado preço, como na Execução Imediata? Preciso de uma ordem pendente? Por favor, escreva um formato de solicitação de mercado para uma ordem pendente.
É assim que eu obtenho os dados atuais da média móvel, isto é correto?
Duas perguntas.
1.Nada sobre não associar o número tampão indicador com o indicador. Como há um indicador, ele tem automaticamente um buffer 0 e foi isso que especifiquei.
2. Se eu tiver o controle do indicador na inicialização, quando eu mudar os parâmetros que são passados para o indicador, eu preciso preencher novamente o EA para que o evento de inicialização venha e os novos parâmetros sejam aplicados?
É assim que eu obtenho os dados atuais da média móvel, isto é correto?
Duas perguntas.
1.Nada sobre não associar o número tampão indicador com o indicador. Como há um indicador, ele tem automaticamente um buffer 0 e foi isso que especifiquei.
2. Se eu tiver o controle do indicador na inicialização, quando eu mudar os parâmetros que são passados para o indicador, preciso recarregar a EA no gráfico para que o evento de inicialização ocorra e os novos parâmetros sejam aplicados?
1. Não existe uma "associação". Nunca existiu.
Vamos ler a ajuda no CopyBuffer
Há uma função que requer a manipulação do indicador (no seu caso, esta é a variávelma_handle e o número de buffer '0' - zero, porque o indicador Moving Average tem apenas um buffer).
2. Se você alterar os parâmetros de entrada em seu EA, ele inicializará seu EA novamente e o manípulo indicador será criado no OnInit com os parâmetros que você inseriu.
1. Não existe uma "associação". Nunca existiu.
...
Significa uma chamada paraSetIndexBuffer()
Significa uma chamada para SetIndexBuffer()
Não sei o que é um número tampão indicador, como esses tampões são criados e se são atribuídos a um determinado indicador ou se têm a mesma numeração. A documentação diz para escrever SetIndexBuffer(), mas no exemplo da Moving Average é escrito sem. Li a referência e pesquisei artigos adicionais, mas ainda não está claro. O pré-processador precisa especificar os amortecedores e por que os amortecedores devem ser um a menos do que na diretiva do pré-processador e não o mesmo.
Se você procura algum significado metafísico... então, muita coisa se torna incompreensível. Caso contrário, é apenas um número. Ela pertence a um indicador específico.
Os Conselheiros Especialistas não têm tampão indicador, portanto não pode haver uma chamada SetIndexBufer().
Não um a menos, mas exatamente o mesmo. Ao contar a partir de zero, o último número é 1 a menos do que o número total.
Se você não se importa, responda a mais algumas perguntas, por favor.
1. Eu não entendo porque preciso atribuir 0 a uma variável declarada se vou atribuir algo mais tarde de qualquer forma. E além disso, às vezes não é atribuído 0, às vezes é.
E dizem que você precisa apagar objetos na desinicialização (não entendo por quê), mas um cabo indicador é um objeto, mas normalmente não é apagado, por que isso?
3.MqlTradeRequest request={0}; O que isso significa? Provavelmente, toda a estrutura é atribuída a 0, mas ela não contém apenas tipos numéricos.
4. E por que existe aqui uma operação lógica?
Se você não se importa, responda a mais algumas perguntas, por favor.
1. Eu não entendo porque preciso atribuir 0 a uma variável declarada se vou atribuir algo mais tarde de qualquer forma. E além disso, às vezes não é atribuído 0, às vezes é.
E dizem que você precisa apagar objetos na desinicialização (não entendo por quê), mas um cabo indicador é um objeto, mas normalmente não é apagado, por que isso?
3.MqlTradeRequest request={0}; O que isso significa? Provavelmente, toda a estrutura é atribuída a 0, mas não se trata apenas de tipos numéricos.
4. Por que precisamos de uma operação lógica aqui?
1. Por hábito.
2. é outro objeto. Ele será descarregado por si mesmo, mas pode ser acelerado pela função IndicatorRelease().
3. está limpo e pronto.
4. Esta não é uma operação lógica, mas uma transferência de variável por referência.
1. Por hábito.
2. este é um objeto diferente. Em seguida, ela se descarregará sozinha, mas pode ser acelerada pelo IndicatorRelease().
3. está limpo e pronto.
4. esta não é uma operação lógica, mas uma transferência de variável por referência.