Fehler, Irrtümer, Fragen - Seite 1165

 

Hallo. Ich brauche Hilfe. Kann mir jemand einen Vorschlag machen, wie ich die Schriftgröße im Strategietester-Diagramm verkleinern kann, so dass sie das Diagramm nicht verdeckt und vollständig in das Diagramm passt, wie in der Abbildung unten (Option 2):

 
Akromix:

Hallo. Ich brauche Hilfe. Kann mir jemand einen Vorschlag machen, wie ich die Schriftgröße im Strategietester-Diagramm verkleinern kann, so dass sie das Diagramm nicht verdeckt und vollständig in das Diagramm passt, wie in der Abbildung unten (Option 2):

Versuchen Sie, in den Windows-Einstellungen die Standard-Systemschriftgröße auszuwählen oder sie sogar zu verringern.
 
marketeer:
Versuchen Sie, in den Windows-Einstellungen die Standard-Systemschriftgröße auszuwählen oder sie sogar zu verringern.
Diese Änderung verkleinert nur die Schrift mit dem Namen des Terminalfensters, aber die Schrift wird in der Testergrafik nicht verkleinert.
 
barabashkakvn:

Beim Übertragen von Änderungen in MQL5 Storage trat der Fehler 170004 auf. Das ist das zweite Mal, dass ich das sehe.

Ich schätze, ich muss erst ein Update machen, bevor ich mich festlege.
 
TheXpert:
Offensichtlich müssen Sie aktualisieren, bevor Sie sich festlegen.
Ist dies eine Verschreibung? Ist das hilfreich? Gerade aktualisiert aus dem Speicher am Morgen, dann arbeitete für einen halben Tag und hier ist der Fehler#170004 beim Übertragen.
 
barabashkakvn:
Ist dies eine Verschreibung? Hilft so etwas? Gerade aktualisiert von Repository am Morgen, dann arbeitete für einen halben Tag und hier bei der Festsetzung solcher Fehler#170004.
Wenn es heißt, dass das Repository nicht auf dem neuesten Stand ist, dann ist es logisch, dass man versucht, es zu aktualisieren.
 
TheXpert:
Nun, wenn es heißt, dass das Repository veraltet ist, ist es logisch, dass man versucht, es zu aktualisieren.
Es scheint, als ob ein anderer Computer mein Repository aktualisiert hat, während ich gearbeitet habe. Ich habe natürlich versucht, nach dem Auftreten des Fehlers zu aktualisieren. Das hat nicht geholfen.
 

Es ist eher eine Frage:

Suche nach einem bestehenden GV des Terminals nach Namen. Dadurch wird die ID des Charts, auf dem der EA läuft, an den Indikator übergeben. Der Indikator hängt an einem anderen Symbol. D.h., ich möchte dem Indikator die ID des Charts übergeben, auf dem der Expert Advisor läuft. Ich suche sie auf diese Weise:

   for(int i=0; i<GlobalVariablesTotal(); i++) {
      string gv_name=GlobalVariableName(i);
      if(StringFind(gv_name,"Multick")<0) continue;
      if(StringFind(gv_name,"chart_id")>0) {
         Print("Нашли такую переменную: "+gv_name);
         string xxx=IntegerToString(long(GlobalVariableGet(gv_name)));
         Print("Значение в ней = "+xxx);
         }
      }
   //2014.07.05 01:54:06.111    ChartsAgent NZDUSD,H1: ID главного = 130392553686025168
   //                                                а истинный ID = 130392553686025170

Das sagt mir das Terminal:


Ich habe versucht, die Variable zu lesen. Ich habe sie direkt in die Zeichenkette und in das Journal eingefügt, sowie in Variablen verschiedener Typen - alles das gleiche. Es sind zwei verschiedene.

Was ist los?

 
artmedia70:

Eher eine Frage:

Was ist los?

Ich würde auch gerne den Code sehen, der in die Variable schreibt (insbesondere wann und wie oft das geschieht).
 
marketeer:
Ich würde auch gerne den Code sehen, der in die Variable schreibt (insbesondere wann und wie oft das geschieht).

Einfach. In OnInit()

   symbol=Symbol();
   tf=Period();
   other.initNames(symbol,tf,Prefix,Magic);  // Создаём префикс и магик

// -------------------------------------------------------------

//----------------------------
   string gv_chart_id_name=Prefix+"_chart_id";
   long chart_id=get.GetChartID(symbol);
   if(chart_id>=0) GlobalVariableSet(gv_chart_id_name,chart_id); // chart_id==0 в тестере
   else graph.Message("Чё-та нету chart_id : Symbol()="+symbol+", chart_id="+IntegerToString(chart_id));
//----------------------------

// -------------------------------------------------------------

//+------------------------------------------------------------------+
   void COtherClass::initNames(string sy, int timeframe, string &prefix, int &mn) {
      string postf="_r", nm=WindowExpertName();
      if(IsDemo()) postf="_d";
      if(IsTesting()) postf="_t";
      if(IsVisualMode()) postf="_v";
      if(IsOptimization()) postf="_o";
      prefix=nm+"_"+sy+"-"+get.GetNameTF(timeframe)+postf;  
      mn=GetMagic(nm+sy,Period()); 
      }
//+------------------------------------------------------------------+
//+------------------------------------------------------------------+
   long CGetDataClass::GetChartID(string sy) {
      long id=-1, currChart,prevChart=ChartFirst();
      int i=0,limit=300;
      if(ChartSymbol(prevChart)==sy) id=prevChart;
      else {
         while(i<limit) {
            currChart=ChartNext(prevChart); 
            if(currChart<0) break;          
            if(ChartSymbol(currChart)==sy) {
               id=currChart;
               break;
               }
            prevChart=currChart;
            i++;
            }
         }
      return(id);
   }
//+------------------------------------------------------------------+

Etwa so ...