[Qualsiasi domanda da principiante, per non ingombrare il forum. Professionisti, non passate. Non posso andare da nessuna parte senza di te. - pagina 427

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


non c'è bisogno di diventare così complicati e tautologici...

Perché cercare la barra N tramite iBarShift quando è già lì?

Il tempo di questo bar è sempre lì, se c'è una storia naturalmente, ma il tempo del bar può non esserci, perché il tempo può cadere su un buco nella storia o il tempo del fine settimana...

 
keekkenen >>:


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

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

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

LOL =))

Basta un loop di 60 barre su iLow... a 1440 e questo è tutto =))

 
costy_ >>:

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

Spiegare cosa? Riderò anch'io.

 
keekkenen >>:

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

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

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



Dichiarazione del compito: c'è un Expert Advisor e vogliamo ottimizzarlo sulle ultime 40 barre nel tester di strategia, per esempio. Queste quaranta barre possono essere su un timeframe orario, 4 ore, giornaliero o altro. Il tester di strategia funziona: l'intervallo di tempo in cui funziona è specificato nel pannello del tester. Questo modo di impostare il tempo di funzionamento non soddisfa il compito di cui sopra - testare per 40 bar. Significa che dobbiamo cambiare l'Expert Advisor in modo che non sia il tester a definire il tempo di prova (le sue capacità non sono soddisfatte), ma il codice stesso.

Il tuo suggerimento non funzionerà, perché per il tester, il tempo che era N battute fa è il tempo attuale.

 
ikatsko >>:

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

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

Oh, è un'affermazione problematica ed è facilmente risolvibile su qualsiasi telaio, ma solo in un EA!

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

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

C U E R ! ! ! Ma sembra avere 3 parametri? datetime iTime( simbolo stringa, int timeframe, int shift)

Mi correggo, mi sono eccitato troppo presto. Per l'ora corrente il tester calcolerà il tempo di apertura della barra specificata (all'indietro) a partire dall'ora corrente. Cioè di nuovo non risolverà il problema. Abbiamo bisogno di N barre all'indietro dalla barra (momentanea) di oggi, non dall'ora corrente del tester




 
Spero che questo non sia l'ottimizzazione dell'EA in quanto testa la libreria Optimatic.
 
ikatsko >>:

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


Scusate, non sto scrivendo in un meta-editor ma a memoria.

 

Temo che questa costruzione if(Time[0]>iTime(0,1440,60)) restituirà sempre true, perché questo valore iTime(0,1440,60) sarà 60 barre a sinistra di Time[0]...

Cosa mostra il test?

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

Confermato, non è "esso".

La tua frase precedente l'ho ripensata (vedi sopra).