Wie kann ich einen automatischen Multiple-Choice-Test erstellen? - Seite 3

 
Hoper23 писал (а) >>

Nein, es verwendet den Balkenverlauf als Eingabe, sucht nach einer Analogie und gibt einen Korridor aus. Wenn die Analogie und der Korridor übereinstimmen, öffnet er sich. Tritt während des Supports höhere Gewalt ein, wird er geschlossen. Zumindest zeigt es in meiner Demo sehr gute Ergebnisse bei geringer Einarbeitungszeit.

Super!

 

Vinin 07.08.2008 14:06
Sie bekommen eine reine Passform.
Das ist die Mühe nicht wert.

Warum so... Die Geschichte der Bars ist sehr interessant. Was glaubst du, wie alle Formen aufgebaut sind? Zum Beispiel "Kopf und Schultern"? Noch einmal zu der Analogie. Was ist mit der 123-Methode? Wenn Punkt 3 zwischen 1 und 2 liegt, sind mehr als 50 % von Punkt 2 und je näher an 1, desto zuverlässiger ist die Prognose.... Auch dies ist eine Anprobe. Dieser EA verwendet solche Fälle als ALARM. Wer stimmt nicht mit mir überein?

 
Die Frage bleibt - wie mache ich einen Endlostest eines EAs?
 
Hoper23 писал (а) >>
Es bleibt die Frage, wie man den EA-Endlostest macht.

Es ist möglich, eine unendliche Optimierung durch einen nicht verwendeten Parameter, der ein Zähler ist, durchzuführen.

z.B..

extern int Prohod=0;

Dieser Parameter wird nirgends verwendet.

Deaktivieren wir die genetische Optimierung.

Legen Sie in den EA-Eigenschaften die gewünschte Anzahl von Läufen fest und führen Sie sie aus. Ungefähr alle

 
Vinin писал (а) >>

Sie können einen nicht verwendeten Parameter, der ein Zähler ist, unendlich optimieren.

z.B..

extern int Prohod=0;

Dieser Parameter wird nirgends verwendet.

Deaktivieren wir die genetische Optimierung.

Legen Sie in den EA-Eigenschaften die gewünschte Anzahl von Läufen fest und führen Sie sie aus. Das ist ungefähr alles

Ja, das habe ich auch geschrieben, aber in kürzerer Form :).

Wenn der Prüfer die Bedingung im Protokoll speichert, ist das durchaus ein Ausweg.

 
Vinin писал (а) >>

Sie können einen nicht verwendeten Parameter, der ein Zähler ist, unendlich optimieren.

z.B..

extern int Prohod=0;

Dieser Parameter wird nirgends verwendet.

Deaktivieren wir die genetische Optimierung.

Legen Sie in den EA-Eigenschaften die gewünschte Anzahl von Läufen fest und führen Sie sie aus. Ungefähr alle

Aber hier hört es auf. Ich habe mich noch nie mit Optimierung beschäftigt, also erzählen Sie mir mehr. Wir setzen diese extenr int Prohod=0 am Anfang des EA, und der Wert 0 wird die Anzahl der Läufe sein?

 

Fügen Sie diese Zeile in das TestCommander-Skript ein

case 8 : if(ParameterTest()<0){return(-1);}if(Crazy_Cycle(-1,"","","",NameVar,VolumeVar,1,TstReport)<0){return(-1);} break;

und dieser Code

//==========================================================================================================
//============================================= Бесконечный тест ===========================================
//==========================================================================================================
int Crazy_Cycle(int PeriodTime,string StartDate,string StopDate,string Symb,string NameVar[],double VolumeVar[],bool Report,string TstReport[][2]){
   string PerTXT,RepTest,TecTst;
   int err,TimeStartExp,Endstr,pos1,n,k,kr,HandlFileTst;
   int step;
   double id;
   string Info;
   string STime = TimeToStr(TimeLocal(),TIME_DATE)+"_"+TimeHour(TimeLocal())+"."+TimeMinute(TimeLocal()); 
   string RepFile="Crazy_Cycle_"+STime+".csv";
   bool flag = true;  
   Info=GlobVariable("SetNameMTS")+"_"+GlobVariable("SetPeriod")+"_"+GlobVariable("SetSymb")+"_"+GlobVariable("SetTestFromDate")+"-"+GlobVariable("SetTestToDate");
   if(StrToInteger(GlobVariable("Glob_BgColor"))!=0){col=DarkBlue;}else{col=LightSkyBlue;}
   if(Report){
      TextWrite(3,"Программа \"Crazy_Cycle\" \n "+Info+"\n ,бесконечное тестирование \n Результат записывается в файл отчета \n Crazy_Cycle_"+STime+".csv ",col);            //выведем описание программы
   }
   RepTest=Info;
    while(!IsStopped()){
       if(StrToInteger(GlobVariable("Glob_BgColor"))!=0){col=DarkBlue;}else{col=LightSkyBlue;}
       TextWrite(2,"Проход № "+(step+1),col);
       err = OneTest("",Symb,PeriodTime,-1,-1,StartDate,StopDate,0,NameVar,VolumeVar,TstReport);
       if(err<0){return(-1);}
       if(Report){
          TecTst="Тек. Проход: "+step; 
          WriteReport(RepFile,RepTest,TecTst,TstReport);//Запись файла отчета
          RepTest="";
      }
      step++;
   }
return(0);
}

in AutoMacroProg.mqh


und führen Sie das Programm Nr. 8 entsprechend aus

 
Hoper23 писал (а) >>

Aber hier hört es auf. Ich habe mich noch nie mit Optimierung beschäftigt, also erzählen Sie mir mehr. Wir setzen extenr int Prohod=0 am Anfang des Beraters, und der Wert 0 wird die Anzahl der Durchläufe sein?

Sie haben Ihnen gesagt, dass der Parameter Prohod nirgendwo im Code vorkommt, aber sein Schritt ist 1, so dass Sie bei ausgeschaltetem GA EA so oft ausführen können, wie Sie wollen...

 
Ich mag die Variable von CrazyCycle und viele andere Dinge nicht. Xeon, könnten Sie eine fertige Variante, denn es ist eine lange Zeit, um sich mit Bindungen, da Sie wissen, wie es zu tun, können wir die Zeit für die Belästigung zu reduzieren?
 
Oh fuck, 100.001 pogoin... Warum sagst du es nicht auf Russisch, wie StarBar? Mal sehen, ob diese Optimierung die richtigen Dateien im Protokoll speichert...