Librerías: MultiTester - página 59

klycko #:

Lamentablemente su script no funciona

Lo he comprobado - funciona. Pero tal vez tenemos diferentes interpretaciones del concepto set-file.

He añadido estas líneas en caso de una interpretación diferente.

// Cargar/Guardar el set-file del Probador.
#property script_show_inputs

input bool inLoad = true; // Ajustes Cargar/Guardar - true/false

#include <fxsaber\MultiTester\MTTester.mqh> // https://www.mql5.com/es/code/26132

#define  EA_INPUTS "[TesterInputs]\r\n"

void OnStart()
{
  const string FileName = __FILE__ + ".set";
  
  string Settings;
  ushort Words[];  
      
  if (inLoad) // Cargar ajustes.
  {
    Print("Load: " + (string)FileLoad(FileName, Words));
    Settings = EA_INPUTS + ShortArrayToString(Words, 1); // 1 - Unicode
    
    Print(MTTESTER::SetSettings(Settings));
  
  }
  else if (MTTESTER::GetSettings(Settings)) // Guardar configuración.
  {
    Settings = StringSubstr(Settings, StringFind(Settings, EA_INPUTS) + StringLen(EA_INPUTS));
    
    Words[ArrayResize(Words, 1) - 1] = 0xFEFF; // 1 - Unicode
    
    StringToShortArray(Settings, Words, ArraySize(Words));    
    Print("Save: " + (FileSave(FileName, Words) ? (string)ArraySize(Words) : "error"));
  }
}
fxsaber #:

Lo he comprobado: funciona. Pero tal vez tenemos diferentes interpretaciones del concepto de set-file.

He añadido estas líneas en caso de una interpretación diferente.

Muchas gracias por su tiempo e inteligencia.

Ya he superado estas dificultades con la ayuda de Google AI.

Te envié esta solución de trabajo en forma de script OX.mq5.

Muchas gracias.

metatrader version 5.00
build 5800 17-apr-2026

Estoy utilizando los archivos exactamente igual que el .zip

¿Tiene alguna sugerencia en cuanto a lo que podría ser?

Archivos adjuntos:
fileapi.mqh  10 kb
winuser.mqh  82 kb
Thomaz Diogo Cimim #:
¿Tiene alguna sugerencia sobre lo que podría ser?

Lo más probable es que sea la versión incorrecta del archivo mqh. Todo compila para mí y otros usuarios.

// Importa el historial de operaciones desde el Terminal al Simulador.

#include <fxsaber\SingleTesterCache\SingleTesterCache.mqh> // https://www.mql5.com/es/code/27611
#include <fxsaber\MultiTester\MTTester.mqh> // https://www.mql5.com/es/code/26132

input string inFileName = "Test.tst";

void OnStart()
{  
  SINGLETESTERCACHE SingleTesterCache; // Se ha creado un objeto de caché de prueba.
  
  // https://www.mql5.com/ru/forum/330333/page7#comment_60578334
  if (SingleTesterCache.Set() &&          // Se han introducido en él datos reales de las operaciones bursátiles.
      SingleTesterCache.Save(inFileName)) // La hemos guardado en un archivo que se puede importar al Tester.
  {
    const string FullPath = TerminalInfoString(TERMINAL_DATA_PATH) + "\\MQL5\\Files\\" + inFileName;
    
    MessageBox(MTTESTER::OpenCache(FullPath) ? "Done" : "Failed");
  }
}