Você está perdendo oportunidades de negociação:
- Aplicativos de negociação gratuitos
- 8 000+ sinais para cópia
- Notícias econômicas para análise dos mercados financeiros
Registro
Login
Você concorda com a política do site e com os termos de uso
Se você não tem uma conta, por favor registre-se
Se estiver interessado no cálculo de dados de outro indicador, pode fazê-lo da seguinte forma. Primeiro, criamos outro indicador com o seu próprio método de cálculo de dados, e depois tomamos o cabo deste indicador(MQL5 Reference Guide / Technical Indicators / iCustom ) e este cabo é utilizado no novo indicador. Vejam atentamente o exemplo. Se tiver alguma dúvida sobre o exemplo
Tenho perguntas. Ainda não as compreendo.
Ok, vamos tomar como base a Média Móvel Personalizada.mq5.
adicionar o novo procedimento de alisamento MODE_MYMA à lista - sem problemas.
a questão é como alimentar os dados. através da i-cast de outro indicador? ok. vamos tomar como exemplo qualquer indicador feito pelo segundo formulário (se o indicador é feito pelo primeiro formulário... não sei como tomar o alto-baixo... então significa apenas o segundo formulário?)
Ok, vamos declarar
int newHandl;
defini-lo no onInit (parabólico, ou seja, o que quer que seja, o principal é o 2º tipo, certo? eu entendo como implementar o meu)
newHandl=iCustom(_Símbolo,0, "ParabolicSAR.mq5",0.02,0.2);
e depois? no onCalculate, alimentamo-lo em vez do preço padrão?
CalculateEMA(rates_total,prev_calculated,begin,newHandl);????
jura ou o quê? por favor explique, não compreendo... (((((
sim, ainda estou a usar modelos mcl4. aí, é simples - loop, dados (qualquer!) take, smooth out, output.
Mas aqui.... Não sei a que me agarrar...
(se o indicador é feito pelo primeiro formulário... Não percebi de onde tirar o alto-baixo... então significa apenas pelo segundo formulário?)
Sim, sobre o alto-baixo foi apenas um exemplo, como lidar com artigos por si próprio. Para a primeira forma pode assumir a tarefa de traçar a linha de fechar[i]/2 [ou sqrt(close[i]/2 )]. Em geral, também é possível apresentar um monte de variações utilizando uma única matriz.
OK, vamos declarar
int newHandl;
no onInit defina-o (como exemplo - parabólico. o que quer que seja, o principal é o 2º tipo, certo? como implementar o seu próprio é mais ou menos claro)
newHandl=iCustom(_Símbolo,0, "ParabolicSAR.mq5",0.02,0.2);
Está bem. Vou terminá-lo agora.
Se o manípulo indicador estiver correcto, significa que podemos dirigir-nos aos amortecedores deste indicador. Veja novamente o exemplo da MQL5 Reference / Technical Indicators / iCustom Há uma linha:
Agora leia MQL5 Reference / Access to Timeseries and Indicators / CopyBuffer (...Novamente: muitas coisas ficam claras quando se analisam exemplos linha a linha).
Tente receber dados de qualquer buffer de indicadores, que tenha seleccionado. Não tenho um terminal, mas em parabólico pode-se ver quais os amortecedores que são calculados e a sua numeração.
Pergunta sobre a descrição das funções ArrayIsSeries() e ArrayGetAsSeries().
Existe uma frase deste tipo no Manual de Referência:"As matrizes passadas para a função reflectem dados de preços, ou seja, estas matrizes têm o sinal de série temporal e a função ArrayIsSeries() voltará a ser verdadeira ao verificar estas matrizes . Mas mesmo assim, em qualquer caso, a direcção de indexação deve ser verificada apenas com a função ArrayGetAsSeries()".
Decorre de uma leitura literal que mesmo que a função ArrayIsSeries() retorne verdadeiro (isto é, confirma que o array que está a ser verificado é um array de séries temporais), mesmo assim a direcção de indexação deve ser verificada apenas pela função ArrayGetAsSeries() de qualquer forma. Então não compreendo a razão para introduzir a função ArrayIsSeries() se os seus resultados tiverem de ser verificados adicionalmente de qualquer forma. Qual é o objectivo? Será possível que a matriz possa ser uma série cronológica, mas a sua direcção de indexação não será a mesma de uma série cronológica (a bandeira AS_SERIES não será hasteada)?
Ao portar de Mql4 para Mql5, surgiu um erro de lote:
'Lote' - constante não pode ser modificada
Como corrigir?
Ao portar de Mql4 para Mql5, ocorreu um erro de Lote:
'Lote' - constante não pode ser modificada
Como é que se arranja?
Não pode. Não é um insecto, é uma característica. :)
Em mql5 as variáveis de entrada não são modificáveis (const).
Fazer um simples desacoplamento:
Na secçãoMQL5 Manual / Array Operations / ArraySetAsSeries, há um exemplo quando a função ArraySetAsSeries() se aplica ao constant datetime array &time[] em cada tick:
É isto que todos fazem (vira a matriz em cada tic) para trabalhar com a matriz como uma série cronológica?
Outra questão: podem as matrizes utilizadas pela OnCalculate() mudar arbitrariamente a sua direcção de indexação? Ou será suficiente verificar esta direcção uma vez?
Ao portar de Mql4 para Mql5 um erro SymbolInfoDouble:
'SymbolInfoDouble' - nenhuma das sobrecargas pode ser aplicada à chamada de função
Como posso corrigi-lo?
Ao portar de Mql4 para Mql5, o erro SymbolInfoDouble apareceu:
SymbolInfoDouble' - nenhuma das sobrecargas pode ser aplicada à chamada de função
Como posso corrigi-lo?
Porque é que existe um 0 no fundo?
https://www.mql5.com/ru/docs/constants/environment_state/marketinfoconstants#enum_symbol_info_double
E, além disso, verificar a divisão por 0.
Os resultados do testador de estratégia são apresentados em gráficos:
Pode dizer-me onde descobrir o significado das diferentes cores nos gráficos?
Os resultados do testador de estratégia são apresentados em gráficos:
Pode dizer-me onde descobrir o significado das diferentes cores nos gráficos?