[AVISO FECHADO!] Qualquer pergunta de novato, para não desorganizar o fórum. Profissionais, não passem por aqui. Não posso ir a lugar algum sem você. - página 427

 
costy_ >>:
Вернее int startBar =iBarShift(NULL,PERIOD_D1, iTime(NULL,PERIOD_D1, N),false); // N - номер бара от текущего момента на дневном тф =))


não há necessidade de ficar tão complicado e tautológico...

Por que procurar o bar N via iBarShift quando ele já está lá?

O tempo deste bar está sempre lá, se houver uma história, mas o tempo do bar pode não estar lá, porque o tempo pode cair em um buraco na história ou na hora do fim de semana...

 
keekkenen >>:


не нужно так усложнять и заниматься тавтологией..

зачем искать бар N через iBarShift, когда он и так есть ?

время по этому бару всегда есть, если конечно есть история, а вот по времени бара может и не быть, т.к. время может попасть на дыру в истории или время выходных..

LOL =))

Apenas loop 60 barras em iLow... às 1440 e é isso =))

 
costy_ >>:

Ржу нимагу =))

Explicar o quê? Eu também vou rir.

 
keekkenen >>:

вся ваша проблема в постановке задачи, сформулируйте ее так чтобы понятно другим.. я честно так и не понял с какого по какое время нужно тестировать..

если нужно начать с 60 бара так и берите время с него

int startTime = iTime(NULL,PERIOD_D1, N); // N - номер бара от текущего момента на дневном тф



Declaração de tarefa: Há um consultor especializado e queremos otimizá-lo nas últimas 40 barras no testador de estratégia, por exemplo. Estes quarenta bares podem ser de hora em hora, 4 horas, diariamente ou em outro horário. O testador de estratégia funciona: O intervalo de tempo em que funciona é definido no painel do testador. Esta forma de definir o tempo de operação não atende à tarefa acima - testar para 40 barras. Isso significa que precisamos mudar o Expert Advisor para que não seja o testador que define o tempo de teste (suas capacidades não são satisfeitas), mas o próprio código.

Sua sugestão não vai funcionar, porque para o testador, o tempo que era N barras atrás é o tempo atual.

 
ikatsko >>:

Постановка задачи: имеется советник, есть желание его оптимизировать на последних, например, 40-ка барах в тестере стратегий. Эти сорок баров могут быть на часовом, 4-х часовом, дневном или другом ТФ. Работает тестер стратегий: промежуток времени на котором он работае указывается на панели тестера. Этот способ задания времени работы не выполняет поставленной выше задачи - тест на 40-ка барах. Значит надо внести изменения в советника так, чтобы выполняя код не тестер определял время тестирования (его возможности не устраивают), а сам код.

Ваше предложение работать не будет, так как для тестера время, которое было N баров назад является текущим.

Oh, é uma declaração de problema e é facilmente resolvida em qualquer quadro, mas somente em um EA!

if(Time[0]>iTime(0,1440,60))
функция
 
costy_ >>:

if(Time[0]>iTime(0,1440,60,false))

C U E R ! ! ! Mas parece ter 3 parâmetros? datetime iTime (símbolo de string, int timeframe, int shift)

Fui corrigido, fiquei entusiasmado muito cedo. Para a hora atual, o testador calculará o tempo de abertura da barra especificada (para trás) a partir da hora atual. Isto é, novamente não resolverá o problema. Precisamos de barras N de volta da barra (momentânea) de hoje, não do tempo atual do testador




 
Espero que isto não esteja otimizando a EA, pois ela testa a biblioteca óptica.
 
ikatsko >>:

C У П Е Р ! ! ! Но у него вроде как 3 параметра? datetime iTime( string symbol, int timeframe, int shift)


Desculpe, eu não estou escrevendo em um meta-editor, mas de memória.

 

Temo que esta construção se(Tempo[0]>iTime(0,1440,60)) sempre retornará verdadeiro, porque este valor iTime(0,1440,60) será de 60 barras à esquerda de Tempo[0]...

o que o teste mostra ?

 
costy_ >>:
Надеюсь это не оптимизация советника по ходу тестирования Библиотека Optimatic.

Confirmado, não é "isto".

Sua frase anterior eu repensei (ver acima).

Razão: