Errores, fallos, preguntas - página 1165

 

Hola. Necesito ayuda. ¿Alguien puede sugerir cómo reducir el tamaño de la fuente en el gráfico del probador de estrategias para que no cubra el gráfico y quepa completamente en el gráfico, como en la imagen de abajo (opción 2):

 
Akromix:

Hola. Necesito ayuda. ¿Alguien puede sugerir cómo reducir el tamaño de la fuente en el gráfico del probador de estrategias para que no cubra el gráfico y quepa completamente en el gráfico, como en la imagen de abajo (opción 2):

Prueba a seleccionar el tamaño de letra estándar del sistema en la configuración de Windows, o incluso a reducirlo.
 
marketeer:
Prueba a seleccionar el tamaño de letra estándar del sistema en la configuración de Windows, o incluso a reducirlo.
Este cambio sólo reduce la fuente con el nombre de la ventana del terminal, pero la fuente no se reduce en el gráfico del probador.
 
barabashkakvn:

Al confirmar los cambios en MQL5 Storage, se produjo el error 170004. Es la segunda vez que veo esto.

Supongo que tengo que actualizarme antes de comprometerme.
 
TheXpert:
Bueno, aparentemente hay que actualizar antes de comprometerse.
¿Esto es una receta? ¿Ayuda? Acabo de actualizar desde el almacenamiento en la mañana, luego trabajó durante medio día y aquí está el error#170004 al cometer.
 
barabashkakvn:
¿Esto es una receta? ¿Ayuda este tipo de cosas? Acabo de actualizar desde el repositorio en la mañana, luego trabajó durante medio día y aquí en la fijación de dicho error#170004.
Pues bien, si dice que el repositorio no está actualizado, lo lógico es intentar actualizarlo.
 
TheXpert:
Pues bien, si dice que el repositorio está desactualizado, lo lógico es intentar actualizarlo.
Parece que otro ordenador ha actualizado mi repositorio mientras yo estaba trabajando. Por supuesto, intenté actualizar después de que se produjera el error. No ayudó.
 

Es más bien una pregunta:

Buscando un GV existente de la terminal por su nombre. A través de él se pasa al indicador el ID del gráfico en el que se está ejecutando el EA. El indicador cuelga de otro símbolo. Es decir, quiero pasar al indicador el ID del gráfico en el que se está ejecutando el Asesor Experto. Lo busco así:

   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

Esto es lo que me dice el terminal:


Intenté leer la variable. Lo puse directamente en la cadena y lo puse en el diario, así como en variables de diferentes tipos - todo lo mismo. Son dos diferentes.

¿Qué pasa?

 
artmedia70:

Más bien una pregunta:

¿Qué pasa?

También me gustaría ver el código que escribe en la variable (especialmente cuándo y con qué frecuencia ocurre).
 
marketeer:
También me gustaría ver el código que escribe en la variable (especialmente cuándo y con qué frecuencia ocurre).

Simple. En 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);
   }
//+------------------------------------------------------------------+

Algo así...