Quaisquer perguntas de recém-chegados sobre MQL4 e MQL5, ajuda e discussão sobre algoritmos e códigos - página 796

 
Igor Makanu:

tenho a mesma numeração que na MQL5: na MQL5 os buffers indicadores e as séries temporais são "desdobrados", aocontrário, por padrão a barra mais à esquerda na MT5 é a barra 0 e na MT4 a barra mais à direita é a barra 0 e os buffers indicadores têm a mesma numeração

ZS: Eu não quero me envolver com o MT5, o MT4 é suficiente para eu verificar minhas idéias, eu só olho para o MT5, e se eu escrever algo usando o MT5 eu nunca o mostro para ninguém))))

Eu estava olhando o código macd para 5 como exemplo, lá SimpleMAOnBuffer foi aplicado sem nenhuma mágica e não há possibilidade de executá-lo ao contrário.

Eu tentei contar de trás para frente

   int limit;
   if(prev_calculated==0)
      limit=0;
   else limit=prev_calculated-1;

   for(int i=limit;i<rates_total && !IsStopped();i++)

A mesma coisa acontece, parece que o problema está em outra coisa.

 
psyman:

Tente contar para trás

não é tão fácil reverter.... você precisa expandir as matrizes por ArraySetAsSeries() - todas elas, tanto buffers como timeseries que você usa

e então você pode contar da direita para a esquerda, como no MT4, e todas as manipulações com comparação e busca de valores mais altos e mais baixos também precisam pensar de que forma a matriz está inclinada...

Eu não gosto de tais tarefas, eu assumo e escrevo no MT4, no MT5 estou sempre me verificando ))))

Quanto mais você usa a biblioteca padrão#include <MovingAverages.mqh> - Eu não sou um ajudante aqui, eu estava interessado apenas em gráficos e matrizes da biblioteca padrão, eu não olhei mais longe como tudo está arranjado lá - não faz sentido - há "cargas de caminhão" de indicadores prontos para o MT4

 
Igor Makanu:

não é tão fácil de contar para trás.... Você precisa expandir as matrizes por ArraySetAsSeries() - todas elas, tanto buffers como timeseries.

e então você pode contar da direita para a esquerda, como no MT4, e todas as manipulações com comparação e busca de valores mais altos e mais baixos também precisam pensar de que forma a matriz está inclinada...

Não gosto dessas tarefas, assumo e escrevo no MT4, no MT5 estou sempre checando a mim mesmo ))))

Quanto mais você usa a biblioteca padrão#include <MovingAverages.mqh> - Não sou assistente aqui, estava interessado apenas em gráficos e matrizes da biblioteca padrão, não olhei mais longe como ela estava organizada - não fazia sentido - havia "cargas de caminhão" de indicadores prontos para MT4

Agora eu analisei vários indicadores do conjunto padrão, por alguma razão nenhum deles usa o ArraySetAsSeries(). A referência MT4 diz:

Asséries cron ológicas são matrizes indexadas invertidas, ou seja, o primeiro elemento de uma série cronológica está na posição mais à direita e o último elemento da série cronológica está na posição mais à esquerda.https://docs.mql4.com/ru/series/bufferdirection

O mesmo em MT5:

Uma série temporal difere de uma matriz regular na medida em que os elementos das séries temporais são indexados desde o final da matriz até o início (dos dados mais recentes aos dados mais antigos).

https://www.mql5.com/ru/docs/series


A biblioteca foi utilizada porque não conheço nenhuma outra maneira padrão de calcular a média, embora se o iMAOnArray for removido, deve haver algo em seu lugar.

Доступ к таймсериям и индикаторам - Справочник MQL4
Доступ к таймсериям и индикаторам - Справочник MQL4
  • docs.mql4.com
Функции для работы с таймсериями и индикаторами. Таймсерия отличается от обычного массива тем, что индексация элементов таймсерии производится от конца массива к началу (от самых свежих данных к самым старым). Для копирования значений таймсерий и индикаторов рекомендуется использовать только динамические массивы, так как функции копирования...
 
psyman:

Agora eu olhei vários indicadores do conjunto padrão, por alguma razão o ArraySetAsSeries() não é usado em nenhum lugar. A referência MT4 diz:

Asséries cron ológicas são matrizes indexadas invertidas, ou seja, o primeiro elemento de uma série cronológica está na posição mais à direita e o último elemento da série cronológica está na posição mais à esquerda.https://docs.mql4.com/ru/series/bufferdirection

O mesmo em MT5:

Uma série temporal difere de uma matriz regular na medida em que os elementos das séries temporais são indexados desde o final da matriz até o início (dos dados mais recentes aos dados mais antigos).

https://www.mql5.com/ru/docs/series


A biblioteca foi utilizada porque não conheço outra maneira padrão de calcular a média, embora se o iMAOnArray fosse removido, deveria haver algo em seu lugar.

Mas basta verificar a diferença de numeração na MT4 e na MT5 - desenhar um 10 Fechar de zero a 9 bar com buffer indicador e você verá imediatamente onde é desenhado na MT4 e onde é desenhado na MT5.

Eu não gosto de MT5 - é mais rápido lá, ou não mais rápido )))), talvez Artem apareça aqui, ele gosta de aprender MT5, eu não gosto de MT5 - eu nunca me forcei

 
Igor Makanu:

Sevocê tiver uma numeração diferente em MT4 e em MT5 - use o buffer indicador para desenhar 10 Fechar de zero a 9 bar e você verá imediatamente onde em MT4 está e onde em MT5 está

Se você não tem um indicador MT5 mas o leva aotópico MT5, é mais rápido lá...), talvez Artem apareça aqui, ele gosta de ensinar MT5, eu não gosto de MT5 - eu nunca me forcei a fazê-lo.

Não gosto do MT5 - não me obrigo a fazê-lo.

Não consigo ver o lugar exato onde posso fazer uma pergunta no MT5.

 
psyman:

Então a ajuda do MT5 está copiando do MT4?

Por favor, me dê um link, não consigo ver onde posso fazer minha pergunta sobre o MT5.

A numeração em MT5 é como em uma arrays usual - o elemento com o índice mais baixo e aquele com um índice mais alto aparece mais tarde, a barra mais à esquerda em MT5 é 0 e a barra mais à direita = taxas_total-1 - e assim para todo o buffer e séries de tempos. Você pode mudar a numeração com oArraySetAsSeries().... Aqui em geral, você pode escolher uma coisa para dominar - ou MT4 ou MT5 - a sintaxe de comando é a mesma, mas .... Há muitas diferenças entre MT4 e MT5

https://www.mql5.com/ru/forum/6343/page1020

Вопросы от начинающих MQL5 MT5 MetaTrader 5
Вопросы от начинающих MQL5 MT5 MetaTrader 5
  • 2019.03.26
  • www.mql5.com
Подскажите пожалуйста, такой показатель тестера в жизни реален? И хороший это или плохой результат за год с депо 3000...
 
Igor Makanu:

A numeração na MT5 é a mesma que nas arrays habituais - o elemento com o índice mais baixo e aquele com um índice mais alto aparece mais tarde, a barra mais à esquerda na MT5 é 0 e a barra mais à direita = taxas_total-1 - e assim, para tudo, para o buffer e as séries de tempos, você pode mudar a numeração com oArraySetAsSeries().... Aqui em geral, você pode escolher uma coisa para dominar - ou MT4 ou MT5 - a sintaxe de comando é a mesma, mas .... há muitas diferenças entre MT4 e MT5

https://www.mql5.com/ru/forum/6343/page1020

Obrigado

 
Igor Makanu:

Se você tiver uma numeração diferente em MT4 e em MT5 - use o buffer indicador para desenhar 10 Fechar de zero a 9 bar e você verá imediatamente onde em MT4 está e onde em MT5 está

Se você não tem um Mt5 corretamente, pode ser mais rápido lá. Se você não o vê, ele pode tentar aprender MT5, eu não gosto de MT5.

Não gosto do MT5 - não me obrigo a fazê-lo. Vou aparecer. Corrija tudo com a seriedade. E a MovingAverages.mqh trabalha em estilo quaternário - da esquerda para a direita.

Você não precisa fazer muito com o código em discussão - basta olhar para onde todas as matrizes são dirigidas e apontá-las na mesma direção - como em quádruplos. Eu simplesmente não tenho tempo...

 
psyman:

Então a ajuda do MT5 está copiando do MT4?

Por favor, me dê um link, não consigo ver onde posso fazer uma pergunta sobre o MT5.

Não tenho idéia de onde posso fazer minhas perguntas sobre o MT5. Mas com ênfase na multiplataforma.

 
Artyom Trishkin:

Pergunte aqui - aqui ensinamos a transição para Cinco, ou apenas respondemos a perguntas em ambas as plataformas. Mas com ênfase na multiplataforma.

Você já perguntou https://www.mql5.com/ru/forum/160683/page795#comment_11143961

Razão: