MT4 tester non dà informazioni da altri timeframes - pagina 7

 
vladv002 >>:

Я извиняюсь, но тему я начал с того что в советнике на тесте данные не те, потому стал проверять что там и где,
в итоге оказывается что неверные данные в тестере хоть в индикаторе хоть в советнике.
Это я проверял и на своем коде и на готовых индикаторах поставленных на эксперта в режиме тестирования,
НО увы результат - только с одного ТФ.
iCustom() - Это первое что я применял, потом перебрал почти все из справки, резутьтат тот же!


Mostrami il tuo codice. Dovreste anche aver visto l'indicatore

 
Rosh ha scritto:>>.
Chiama l'indicatore dall'EA e assicurati che tutto funzioni correttamente. Smettila di trollare, ci sarà un ban.

Cos'è il trolling? Cercando di dare un senso alla situazione.
Se ci sbagliamo, aiutaci.
Ma se usate il codice EA di Victor, chiamate invert e guardate con cosa lavora nel file, le conclusioni non cambieranno.
Correggere o bandire ;)

//+------------------------------------------------------------------+
//| VininE_test |
//| Copyright © 2010, Victor Nicolaev |
//| e-mail: vinin@mail.ru |
//+------------------------------------------------------------------+
#property copyright "Copyright © 2010, Victor Nicolaev"
#property link "e-mail: vinin@mail.ru"


//+------------------------------------------------------------------+
//| expert initialization function |
//+------------------------------------------------------------------+
int init() {return(0);}

//+------------------------------------------------------------------+
//| expert deinitialization function |
//+------------------------------------------------------------------+
int deinit() {return(0); }


//+------------------------------------------------------------------+
//Работа по отдельной ТС
//+------------------------------------------------------------------+
int start() {
static int prevtime=0;
if (Time[0]==prevtime) return(0);
if (prevtime==0) {
prevtime=Time[0];
return(0);
}
prevtime=Time[0];

switch (Period()) {
case PERIOD_M1: myPrint(PERIOD_M1);
case PERIOD_M5: myPrint(PERIOD_M5);
case PERIOD_M15: myPrint(PERIOD_M15);
case PERIOD_M30: myPrint(PERIOD_M30);
case PERIOD_H1: myPrint(PERIOD_H1);
case PERIOD_H4: myPrint(PERIOD_H4);
case PERIOD_D1: myPrint(PERIOD_D1);
case PERIOD_W1: myPrint(PERIOD_W1);
case PERIOD_MN1: myPrint(PERIOD_MN1);
}
return(0);
}

void myPrint(int TimeFrame){
Print(PeriodToStr(TimeFrame)+": ",
TimeToStr(iTime( NULL, TimeFrame, 0),TIME_DATE)," ",
TimeToStr(iTime( NULL, TimeFrame, 0),TIME_MINUTES), "; ",
iOpen( NULL, TimeFrame, 0), "; ",
iHigh( NULL, TimeFrame, 0), "; ",
iLow( NULL, TimeFrame, 0), "; ",
iClose(NULL, TimeFrame, 0),"; ",
iCustom(NULL,TimeFrame,"invert",0,0));

}

string PeriodToStr(int TimeFrame){
switch (TimeFrame){
case PERIOD_M1 : return("M1");
case PERIOD_M5 : return("M5");
case PERIOD_M15: return("M15");
case PERIOD_M30: return("M30");
case PERIOD_H1 : return("H1");
case PERIOD_H4 : return("H4");
case PERIOD_D1 : return("D1");
case PERIOD_W1 : return("W1");
case PERIOD_MN1: return("MN1");
}
}
File:
invert_2.mq4  4 kb
 
Vinin >>:


При правильном подходе все работает нормально.

Esatto - confermo.

 
YuraZ >>:

верно - подтверждаю


Avete notato nel registro di Victor che il TF mensile dà 0?

Perché?

 
avatara >>:

Вы заметили в логе Виктора, что месячный ТФ выдает 0?

Почему?


Il numero di barre non è sufficiente per calcolare i valori, suppongo che sia un'opzione.
 
yuripk >>:


Количества баров не хватает для расчёта значений, полагаю такой вариант.

per l'apertura e altre informazioni poi corrette è sufficiente. o aspettare la fine del bar?

 
avatara писал(а) >>
Cos'è la trollesità? Cercando di dare un senso alla situazione.
Se ci stiamo sbagliando, per favore aiutateci.
Ma se usate il codice EA di Victor, chiamate invert e guardate con cosa funziona nel file - le conclusioni non cambieranno.
Correggere o bandire ;)


Hai messo il tuo indicatore sul grafico?
Prenderò solo un paio di righe

for (i=Period()-1; i>=0; i--)
          Value=iClose(PARA,0,i+k*Period());
i+k*Periodo());
Infatti state cercando una barra con il numero Period()^2 (al massimo), e non ci possono essere così tante barre nella storia
 
vladv002 >>:

Ваш код как есть запустил - работает НО данные по всем строкам одинаковые!!! Т.е. с одного ТФ!
Минутку, у Вас все цыфиры по ТФ разные и меняются? Может что с моим МТ4, здесь вер-220.
Пожалуйста проверьте на счет цыфир, а еще лучше смените вывод на[0][0]:
"\n", " -----------1------ = ",arr1[0][1]," - ", arr1[0][1], Хотя разницы особо нет.
Подставил Ваши блоки - меняются цыфиры только того ТФ на котором идет тест!
Но всеравно спасибо.


Devi cambiarlo con attenzione, tutto cambia come dovrebbe. Ho dato un esempio funzionante, cambiate quello che vi serve e trattate con ArrayCopyRates, potete ottenere valori non solo da altri timeframes ma anche da altri simboli.

 
Vinin >>:


Ты свой индикатор на график выкладывал?

Sì...

Non lo so... c'è qualcosa che non va. riprova. forse è un problema di cronologia?

O la costruzione è nuova.

Ma la mia barra zero M1 è stata vista l'ultima volta il 2/04/2010. Non posso farci niente.

 
avatara писал(а) >>

Sì...

Non lo so... c'è qualcosa che non va. riprova. forse è un problema di cronologia?

O la costruzione è nuova.

Ma la mia barra zero M1 è stata vista l'ultima volta il 2/04/2010. Non posso farci niente.

Mi sono corretto nel post sopra.
È meglio che mi diciate cosa volevate ottenere?