AiDataGenByLeo/README.md

177 lines
4.8 KiB
Markdown
Raw Permalink Normal View History

2025-09-09 20:45:25 +00:00
# AiDataGenByLeo
2026-02-08 19:03:22 +00:00
Build AI-powered trading systems with automatic feature generation, DSL-based configuration, and 85+ built-in features.
2025-09-09 20:45:25 +00:00
2026-02-08 19:03:22 +00:00
---
## License Notice
The source code is made visible solely for transparency, learning, and auditing purposes.
- **Visible Code:** Available for review
- **Proprietary License:** All rights reserved
- **No Modifications:** Code cannot be altered
- **No Redistribution:** Cannot be shared or republished
- **Commercial Use:** Restricted (see [LICENSE](./LICENSE.md))
[![License: Proprietary](https://img.shields.io/badge/License-Proprietary-red.svg)](./LICENSE.md)
[![Source: Available](https://img.shields.io/badge/Source-Available-blue.svg)](./LICENSE.md)
**[Read Full License](./LICENSE.md)** | **[Commercial Licensing](#commercial-licensing)**
---
## What's Included
### Framework and Tools
- **DSL Parser:** Define trading features using intuitive domain-specific language
- **Feature Generator:** Automatic extraction of technical indicators, ICT concepts, news data, and more
- **Data Collector:** Generic framework for collecting training data
- **Python Training Script:** Train AI models using a generic script for classifiers with CatBoost, KFold, and SelectBestFeatures
- **Feature Factory:** Over 85 features available to configure your ML dataset
### EasySb - ICT EA with AI
- **Production-Ready EA:** Complete trading system with AI integration, ONNX model included, and SetFile trained on XAUUSD M5
---
## Main Features
### DSL-Based Feature Definition
Define features declaratively without writing repetitive code:
```dsl
@ New vector
{
[Rsi_Valor][](Period=14|Applied=0)
[Vidya_Tendencia][](CmoPeriod=9|EmaPeriod=12)
[News_HasCpiUsaToday][]()
}
```
### Automatic Data Generation
```mql5
// Initialize feature generator
m_generator.Init("MyStrategy", features_dsl);
// Generate feature vector on each bar
m_generator.ObtenerDataEnVector(vector, curr_time);
```
### Python Training Pipeline
```python
# Load generated data
df = pd.read_csv('data.csv')
# Train classifier
model = train_classifier(df, selected_features)
# Export to ONNX
export_model(model, 'model.onnx')
```
### Real-Time AI Predictions
```mql5
// In your EA
if(m_predictor.CheckOpenOrder(trade_config)) {
// AI approved - execute trade
OpenPosition(type, entry, sl, tp);
}
```
---
## Repository Structure
```
AiDataGenByLeo/
├── Examples/ # Library usage in an ICT EA with AI
├── Extra/ # Library to measure correlations (with integrated plot)
├── GenericData/ # Classifier, DSL Parser, Feature Factory
└── Py/ # Python script for model training
```
---
## License
**Full details:** [LICENSE.md](./LICENSE.md)
By downloading or using this repository, you accept the license.
---
## Quick Start
### Requirements
See the `requirements.txt` file (requirements for MQL5 and Python).
### Installation
- Clone the Git repository into shared projects via CMD
- Contact me on MQL5 (user: nique_372) to be added as a collaborator with your MQL5 nickname (read-only access), which will make the repository automatically appear in your Shared Projects folder
- Or fork the repository
### Train Your Own Model
```bash
# 1. Generate training data
# Run EA in training mode
# Data will be saved to: TerminalPath/Files/Common/EasySbAi/data.csv
# 2. Train model
# Execute the Python script
# 3 files will be generated in TerminalPath/Files/Common/EasySbAi/
# Copy the ONNX model and scaler file to:
# AiDataGenByLeo/Examples/EAs/TTrades/EasySb/res/
# 3. Run the EA
# Execute Ea.mq5 with the training parameter set to false
```
---
## Documentation
- Coming soon
---
## Commercial Licensing
Need to use this software beyond the permitted scope?
### Commercial licenses available for:
- Source code modification rights
- Development of derivative products
- Distribution to clients or end users
- Integration as main component in commercial products
- White-label implementations
- Enterprise deployments
**Contact for licensing:**
```
Platform: MQL5 Community
User: nique_372
Profile: https://www.mql5.com/es/users/nique_372
```
---
## Disclaimer
**Trading involves substantial risk of loss.**
- This software is a technical tool, not financial advice
- Past performance does not guarantee future results
- You are solely responsible for your trading decisions
- Always test thoroughly before deploying with real capital
- Use appropriate risk management in all operations
The authors assume no liability for trading losses, system failures, or any damages arising from the use of this software.
---
## Contact and Support
- **Platform:** [MQL5 Community](https://www.mql5.com/es/users/nique_372)
- **Profile:** https://www.mql5.com/es/users/nique_372/news
- **Issues:** For bug reports or questions
---
**Copyright © 2026 Nique-Leo. All rights reserved.**