MT4-Tester gibt keine Informationen aus anderen Zeitrahmen - Seite 7

 
vladv002 >>:

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


Zeigen Sie mir Ihren Code. Sie sollten auch den Indikator gesehen haben

 
Rosh schrieb:>>
Rufen Sie den Indikator aus dem EA auf und stellen Sie sicher, dass alles korrekt funktioniert. Hör auf zu trollen, sonst gibt es ein Verbot.

Was ist das für ein Trolling? Ich versuche, mir einen Reim auf die Situation zu machen.
Wenn wir uns irren, hilf uns.
Aber wenn Sie den EA-Code von Victor verwenden, invertieren und sich ansehen, womit er in der Datei arbeitet, werden sich die Schlussfolgerungen nicht ändern.
Korrigieren oder verbieten ;)

//+------------------------------------------------------------------+
//| 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");
}
}
Dateien:
invert_2.mq4  4 kb
 
Vinin >>:


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

Das ist richtig - ich bestätige

 
YuraZ >>:

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


Ist Ihnen in Victors Logbuch aufgefallen, dass die monatliche TF 0 ausgibt?

Und warum?

 
avatara >>:

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

Почему?


Die Anzahl der Balken reicht nicht aus, um die Werte zu berechnen, ich nehme an, das ist eine Möglichkeit.
 
yuripk >>:


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

für opener und andere dann-richtige Info ist genug. oder für das Ende der Bar warten?

 
avatara писал(а) >>
Was ist das für ein Trollgehabe? Ich versuche, mir einen Reim auf die Situation zu machen.
Wenn wir uns irren, helfen Sie uns bitte.
Aber wenn Sie Victors EA-Code verwenden, rufen Sie invert auf und sehen Sie sich an, womit er in der Datei arbeitet - die Schlussfolgerungen werden sich nicht ändern.
Korrigieren oder verbieten ;)


Haben Sie Ihren Indikator in das Diagramm eingefügt?
Ich werde nur ein paar Zeilen schreiben

for (i=Period()-1; i>=0; i--)
          Value=iClose(PARA,0,i+k*Period());
i+k*Periode());
In der Tat suchen Sie nach einem Balken mit der Nummer Period()^2 (höchstens), und es gibt vielleicht nicht so viele Balken in der Historie
 
vladv002 >>:

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


Sie müssen es vorsichtig ändern, alles ändert sich wie es soll. Ich habe ein funktionierendes Beispiel gegeben, ändern Sie, was Sie brauchen und befassen sich mit ArrayCopyRates, können Sie Werte nicht nur von anderen Zeitrahmen, sondern auch von anderen Symbolen erhalten.

 
Vinin >>:


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

Ja, ja.

Ich weiß nicht... irgendetwas stimmt nicht. Versuchen Sie es noch einmal. Vielleicht ist es ein Fehler in der Geschichte?

Oder das Gebäude ist neu.

Aber meine M1-Nullleiste wurde zuletzt am 2/04/2010 gesehen. Ich kann es nicht ändern.

 
avatara писал(а) >>

Ja, ja.

Ich weiß nicht... irgendetwas stimmt nicht. Versuchen Sie es noch einmal. Vielleicht ist es ein Fehler in der Geschichte?

Oder das Gebäude ist neu.

Aber meine M1-Nullleiste wurde zuletzt am 2/04/2010 gesehen. Ich kann es nicht ändern.

Ich habe mich in meinem obigen Beitrag korrigiert.
Sagen Sie mir lieber, was Sie besorgen wollten?