Qualquer pergunta de novato, de modo a não desorganizar o fórum. Profissionais, não passem por aqui. Em nenhum lugar sem você - 6. - página 753

 
AlexeyVik:

Você só entra nesta unidade uma vez por dia.

De alguma forma eu duvido que isto funcione corretamente também no testador.

Esta é exatamente a idéia, de acelerar o código para executar algumas funções uma vez por dia. Por exemplo, neste bloco podemos verificar se é inverno ou sexta-feira, ou se é o dia do turno. Acho que não faz sentido fazer essas verificações a cada carrapato, basta verificar todos os dias no primeiro carrapato de um novo bar diário. O código no testador funciona corretamente, e não vejo nenhuma razão para que ele não funcione. Obrigado pelo conselho, vou ver o que se passa com as estruturas...
 
tuner:
Esta é exatamente a idéia, de acelerar o código para executar algumas funções uma vez por dia. Por exemplo, neste bloco você pode verificar se é inverno, se é sexta-feira ou se é o dia em que o relógio é trocado. Acho que não faz sentido fazer essas verificações a cada carrapato, basta verificar todos os dias no primeiro carrapato de um novo bar diário. O código no testador funciona corretamente, e não vejo nenhuma razão para que não funcione. Obrigado pelo conselho, vou ver o que se passa com as estruturas...
Eu entendo sua idéia, mas a entrada será no início do dia, e a verificação do horário é apenas à noite. Ou não há código suficiente para entender o que está acontecendo. Eu estava apenas julgando pelo pedaço de código disponível.
 
AlexeyVik:
Entendi seu ponto de vista, mas a entrada será no início do dia e a verificação do horário somente à noite. Ou não há código suficiente para entender o que está acontecendo. Eu estava julgando apenas a partir do código disponível.

A verificação do tempo acontece a cada tique

 
tuner:

Vocês podem me dizer o que pode estar causando a falha que ocorreu hoje?

A EA tem a opção de interromper as negociações 15 minutos antes do fechamento do mercado na sexta-feira.


Verifique o valor que você recebe aqui: FinishInFriday=StringToTime("23:59")-15*60; algo me diz que será menos que o que você recebe aqui:cur=TimeCurrent()
 
VladislavVG:
Verifique o valor que você recebe aqui: FinishInFriday=StringToTime("23:59")-15*60; algo me diz que será menos que o que você recebe aqui:cur=TimeCurrent()

Sim, esse é o problema, quando chega o primeiro tick de sexta-feira, a funçãoStringToTime("23:59") é executada, o que por alguma razão retorna a hora com a data de ontem ao invés da data do novo tick. Não consigo entender como pode ser assim. Porque está claramente escrito no código que, se houver uma nova barra diária (tick com uma data diferente da anterior), que é sexta-feira, a funçãoStringToTime deve ser executada.E apesar disso, a função retorna a 23ª, que é quinta-feira(!). Mais uma vez, eu não observei tal falha no testador. Entretanto, vejo que a EA não negocia com Conselheiros Especialistas reais ou de demonstração e as mensagens nos logs mostram que a função não devolveu a data atual, mas a data de ontem:

0 05:59:47.731 Escalpador GBPAUDpt,M1: Terminar Na sexta-feira = 2014.10.23 23:44:00

0 03:00:11.999 Escalpador EURUSD,M1: Terminar Na sexta-feira = 2014.10.23 23:44:00

PS O Expert Advisor parou de operar desde o primeiro tick na sexta-feira, ou seja, exatamente após a função StringToTime ter sido executada

 
tuner:


Eu diria que, neste caso, deveria ser algo assim:

if(TimeDayOfWeek(cur)==5)
      if((TimeHour(cur)>22) && (TimeMinute(cur)> 44))
         return;
 
Olá, caros participantes do fórum! Primeiro de tudo,este posto é dirigido a pessoas interessadas no desenvolvimento de seus sistemas de análise, mais especificamente, emindicadores técnicos. Estou mais ou menos familiarizado com a Caixa de Ferramentas de Processamento de Sinais baseada no MATLAB e tenho uma idéia da análise do espectro e da filtragem discreta das séries temporais. Estou interessado em filtros IIR complexos como o Elliptic, Chebyshev. Sintetizei os coeficientes do filtro Chebyshev via MATLAB, ou seja, denominador e numerador do filtro (os coeficientes estão anexados abaixo). Agora o principal: como implementar um filtro Chebyshev com coeficientes especificados em um indicador usando MQL4? Por favor, ajude. Eu gostaria de ouvir críticas construtivas, observações. O filtro, cujos coeficientes são apresentados, tem 8 seções e este filtro tem ordem 16. Na tela de comparação, um simples MA é vermelho, o filtro Chebyshev FIR é verde, a série temporal inicial é azul, é M60 NZDUSD.Captura de tela
Arquivos anexados:
 
nikitasa1997:
Olá, caros membros do fórum! Primeiro de tudo, este posto é dirigido às pessoas interessadas no desenvolvimento de seus sistemas de análise e, mais especificamente, dosindicadores técnicos. Estou mais ou menos familiarizado com a Caixa de Ferramentas de Processamento de Sinais baseada na plataforma MATLAB e tenho uma idéia da análise do espectro e da filtragem discreta das séries temporais. Estou interessado em filtros IIR complexos como o Elliptic, Chebyshev. Sintetizei os coeficientes do filtro Chebyshev via MATLAB, ou seja, denominador e numerador do filtro (os coeficientes estão anexados abaixo). Agora o principal: como implementar um filtro Chebyshev com coeficientes especificados em um indicador usando MQL4? Por favor, ajude. Eu gostaria de ouvir críticas construtivas, observações. O filtro, cujos coeficientes são apresentados, tem 8 seções e este filtro tem ordem 16. Na tela de comparação um simples MA é vermelho, o filtro FIR Chebyshev é verde, a série temporal inicial é azul, é M60 NZDUSD.

comparar e contrastar... Na minha opinião, o MA funciona com mais precisão (compare - a que preço o sinal (cruzes) chegou de fato):

De acordo com seu filtro, o sinal será o oposto, então você pode aplicar

 
_new-rena:

comparar e contrastar... Na minha opinião, o MA funciona com mais precisão (compare - a que preço o sinal é realmente recebido (cruzes)):

De acordo com seu filtro, o sinal será o oposto, então você pode aplicar

Bem, se o oposto for mais de 75% das entradas corretas, você poderia aplicar, tudo o que resta é encontrar as saídas ;)


Embora a maior parte dos insumos estejam no meio, o que pode ser alcançado com os AMs convencionais, sem nenhuma reviravolta.

 
evillive:

Bem, se o oposto for verdade para mais de 75% das entradas, você poderia aplicar, tudo o que resta é encontrar as saídas ;)
Embora a maioria das entradas esteja no meio, o que também pode ser alcançado com AGs convencionais, sem nenhuma reviravolta.

É o que eu estou dizendo.