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
existe algum exemplo de utilização da sucção do icustom para obter dois períodos de tempo no mesmo buffer?
já que 2 tf tampão tem o mesmo nome, como posso determinar o período de tempo diferente?
período detempo atual
dupla tendência = iCustom(NULL, 1, "HA01", 0, 1500, 0, 0);
maior prazo
dupla tendência = iCustom(NULL, 5, "HA01", 0, 1500, 0, 1);
E então use as 2 variáveis conforme necessário (por exemplo : se (trend1minute == ... && trend5minute ==... ) fizer alguma coisa)
existe algum exemplo de utilização da sucção do icustom para obter dois períodos de tempo no mesmo buffer?
já que 2 tf buffer tem o mesmo nome, como posso determinar o período de tempo diferente?
período de tempo atual
dupla tendência = iCustom(NULL, 1, "HA01", 0, 1500, 0, 0);
maior prazo
dupla tendência = iCustom(NULL, 5, "HA01", 0, 1500, 0, 1);Usando o iCustom em uma EA, instância única
Olá a todos,
Estou trabalhando para escrever um EA para usar um indicador personalizado, quando faço um backtest, noto que parece carregar um novo instante do indicador toda vez que há chamadas para a função iCustom. Alguém sabe uma maneira de carregar o indicador personalizado uma vez e a referência de volta a ele em cada sucessão?
void OnBar()
{
RSIPL = iCustom(NULL,0,"NCH_DI",0,4,BarIndex);
TSL = iCustom(NULL,0,"NCH_DI",0,5,BarIndex);
HAOpen = iCustom(NULL,0,"HeikenAshi",0,2,BarIndex);
HAClose = iCustom(NULL,0,"HeikenAshi",0,3,BarIndex);
PACHigh = iMA(NULL,0,5,0,MODE_SMMA,PRICE_HIGH,BarIndex);
PACLow = iMA(NULL,0,5,0,MODE_SMMA,PRICE_LOW,BarIndex);
// DO MY OTHER STUFF HERE
}
O código acima carrega uma nova instância do NCH_DI com cada chamada........
Obrigado
Não é possível fazer
É assim que funciona o MT4. A melhor solução é minimizar o número de chamadas iCustom() em seu código. HA normalmente só precisa ser chamado quando uma nova barra é formada. Chamá-la cada vez que se faz uma chamada não é o ideal.
É assim que funciona o MT4. A melhor solução é minimizar o número de chamadas iCustom() em seu código. HA normalmente só precisa ser chamado quando uma nova barra é formada. Chamá-la cada vez que se faz uma chamada não é o ideal.
Eu tenho todas as minhas chamadas para uma nova formação de bares. O NCH_DI é infelizmente uma peça de código de memória relativamente intensiva. Você teria alguma sugestão de como eu poderia descartar instâncias antigas?
Experimente este
OTeste de Estratégia não é o objetivo final desta EA. Executá-lo ao vivo em um gráfico é. Acredito que o carregamento do iCustom() acontece uma vez em um gráfico, desde que você tenha memória suficiente, de modo que eu não gastaria muito tempo trabalhando em algo que se adaptasse às peculiaridades do Strategy Tester. A única outra alternativa ao iCustom() é codificar o indicador diretamente no EA.
Pensei em recodificá-la para a EA.... Decidi que isso não seria prático neste caso. Descobri que se eu comentar a janela do indicador de propriedade_separate_separate_window no indicador ele será carregado e descarregado uma vez que a chamada estiver completa, vou terminar a codificação principal e fazer uma demonstração por cerca de uma semana e monitorar meu uso de memória. Obrigado pessoal, eu avisarei a vocês como vai ser.
Problemas no Indicador iCustom
Olá,
minha EA está usando um indicador próprio com o iCustom.
Ao abrir uma nova vela, o indicador é chamado pelo iCustom.
Agora percebi que o valor do iCustom[1] não é igual ao iCustom[0] da barra anterior.
O valor é semelhante, mas não exatamente o mesmo que ele estremece e o que eu verifiquei para o RSI f.e.
Alguma idéia de onde o problema poderia se basear?
Obrigado por cada dica sobre isso.
Camilo
Depende do preço que é usado pelo indicador Personalizado. Se seu indicador personalizado estiver usando o preço próximo, alto, baixo ou qualquer outro preço que esteja mudando durante o desenvolvimento atual da vela, então o valor do índice [0] será alterado.
Por exemplo, se você chamar o indicador que está usando o preço personalizado e comparar o valor [0] e depois que a barra estiver fechada, você o comparará com o resultado em [1], é quase certo como o ovo é ovo que o valor será diferente. Mas, se você definir o indicador personalizado para usar o preço ABERTO em vez de fechado, então o valor será igual (é simplesmente porque o preço aberto não muda durante o desenvolvimento da vela).
Thx resposta rápida, Kalenzo.
Verifiquei os valores para [2] e percebi que para [1] -> [2] tudo parece bem
Aqui tenho um anexo com os valores do meu indicador
....[0]..........[1].........[2]
t431,871142,670052,1915
t344,688152,191560,3014
t253,057260,301467,6553
t159,886067,655374,5797
Portanto, parece que o problema é a identificação da abertura do bar.
Estou usando apenas como cheque antes:
se(Volume[0]>1) retornar;
Não está bem assim?