Discusión sobre el artículo "Simplificación de bases de datos en MQL5 (Parte 1): Introducción a las bases de datos y SQL"
¡Me encanta leer tus artículos técnicos!
En este primer artículo, solo he mostrado la punta del iceberg. TickORM va mucho más allá: la idea es cambiar por completo la forma de trabajar con bases de datos en MQL5. El objetivo es conseguir algo directo, sencillo y potente, en el que abrir una base de datos, crear un repositorio y manipular entidades resulte tan natural como trabajar con matrices. Al final de la serie, el uso se parecerá al ejemplo que se muestra a continuación, en el que se guardan, buscan, actualizan y eliminan registros sin escribir ni una sola consulta manual. Este es el camino que estoy allanando con TickORM.
int OnInit(void) { IDatabaseManager *database = new CDatabaseManager(); if(database.OpenDatabase("trades.sqlite")) { //--- Repositorio de instancias AccountRepository repo(database); //--- Insertar Account acc; acc.number = 10; repo.save(acc); //--- Seleccionar todo Account acc[]; repo.findAll(acc); ArrayPrint(acc); //--- Seleccionar por ID Account acc = repo.findById(1); Print(acc.id); Print(acc.number); //--- Actualización Account acc; acc.id = 1; acc.number = 10; repo.update(acc); //--- Eliminar por ID repo.deleteById(1); } database.CloseDatabase(); delete database; return(INIT_SUCCEEDED); }
Ahora mismo es muy necesario contar con un ORM adecuado para MQL5. Por suerte, contamos con gente como tú que crea bibliotecas tan geniales e importantes que nos facilitan la vida. Me encantan todos los proyectos y artículos en los que has trabajado hasta ahora, tío. Todos ellos han resuelto un gran problema que tenía al trabajar con MQL5 en determinadas tareas.
joaopedrodev trabajar con bases de datos en MQL5. El objetivo es conseguir algo directo, sencillo y potente, en el que abrir una base de datos, crear un repositorio y manipular entidades resulte tan natural como trabajar con matrices. Al final de la serie, el uso se parecerá al ejemplo que se muestra a continuación, en el que se guardan, buscan, actualizan y eliminan registros sin escribir ni una sola consulta manual. Este es el camino que estoy allanando con TickORM.
Nota: En el libro se ha presentado una implementación de ORM para MQL5.
MQL5 Book: Advanced language tools / SQLite database / OOP (MQL5) and SQL integration: ORM concept
- www.mql5.com
The use of a database in an MQL program implies that the algorithm is divided into 2 parts: the control part is written in MQL5, and the execution...
Está perdiendo oportunidades comerciales:
- Aplicaciones de trading gratuitas
- 8 000+ señales para copiar
- Noticias económicas para analizar los mercados financieros
Registro
Entrada
Usted acepta la política del sitio web y las condiciones de uso
Si no tiene cuenta de usuario, regístrese
Artículo publicado Simplificación de bases de datos en MQL5 (Parte 1): Introducción a las bases de datos y SQL:
Cuando hablamos de MQL5, la mayoría de las conversaciones giran en torno a los indicadores, los Expert Advisors, las estrategias de trading y los backtests. Pero llega un momento en el que cualquier operador o desarrollador que se dedique en serio a la automatización se da cuenta de que la persistencia de los datos es fundamental. Y aquí es donde entran en juego las bases de datos. Quizá incluso pienses: «Pero si ya guardo mis resultados en archivos CSV o TXT, ¿por qué complicar las cosas con una base de datos?». La respuesta radica en la organización, el rendimiento y la fiabilidad que ofrece una base de datos, sobre todo cuando se trata de grandes volúmenes de información u operaciones complejas.
En el contexto de MQL5, hablar de bases de datos puede parecer una exageración a primera vista. Al fin y al cabo, este lenguaje está muy orientado al trading, a los indicadores y a los robots de ejecución automática. Sin embargo, cuando empezamos a trabajar con estrategias que implican grandes volúmenes de datos, pruebas retrospectivas complejas o registros detallados de órdenes, la simplicidad de los archivos estándar pronto resulta insuficiente. Es aquí donde saber cómo crear, acceder y manipular una base de datos se convierte en una herramienta capaz de transformar tu flujo de trabajo en el trading.
Un operador que empiece a explorar las bases de datos en MQL5 encontrará docenas de funciones nativas y ejemplos independientes. Basta con guardar y consultar registros, pero pronto surge la pregunta: ¿cómo organizar todo esto de forma clara y reutilizable en proyectos reales? En esta serie de artículos, vamos más allá de la documentación. Empezamos con las funciones básicas de SQLite y avanzamos paso a paso para crear un "mini-ORM en MQL5 (TickORM)". La idea es transformar las llamadas directas en capas bien diseñadas, inspiradas en JDBC y JPA de Java, pero adaptadas al ecosistema de MetaTrader.
En este artículo, explico los conceptos básicos de las bases de datos en MQL5 y SQL. Esto allana el camino para que los artículos siguientes encapsulen estas funciones en clases, interfaces y, finalmente, en el ORM.
Autor: joaopedrodev