AI Expert Advisor
  • MQL5 78.8%
  • HTML 11.2%
  • C++ 7%
  • C 2.3%
  • Batchfile 0.3%
  • Other 0.4%
Find a file
Repository files (latest commit first)
Filename Latest commit message Latest commit date
AnimateDread afe1038d11 fix(topology): stop a training-alone size becoming permanent, and stop the keep-screen latching underpowered
1. THE POOL FIX WAS LANDING ON A TOPOLOGY THAT COULD NOT SEE IT.

   ComputeFirstLayerWidth budgets against EstimatedInSampleBars, which counts
   this chart's own bars PLUS the training pool. On a COLD fleet start every
   chart derives and pins its topology BEFORE any chart has published a pool
   file - measured on the 18:13 start, model creation at 18:13:21 against a
   first publish at 18:13:48. All six sized as if training alone, wrote that
   into .cfg, and adopted it back on every later start even with the pool full.
   SP500 ran a first layer floored to 16 while adopting 30229 peer rows.

   Adopt-don't-compare exists to protect weights shaped by those sizes. It was
   also running for a model with NO .nnw, where there is nothing to protect and
   the .cfg is just a record of one unlucky moment. The four derived sizes are
   now re-measured when no weights exist.

   Safe on all three counts that matter: free (nothing to discard), cannot loop
   (once weights exist the .cfg is authoritative again), and cannot fragment the
   pool - the derived width is NOT in BuildModelFingerprint, which keys only on
   the FEATURE layout. Verified: field 2 of the fingerprint is
   LEGACY_HISTORY_BARS_SLOT, not the first-layer width.

   TO TAKE EFFECT the weights must be wiped while the TrainPool is KEPT - the
   census has to be non-empty at derivation time. A full wipe empties the pool
   and reproduces the original condition exactly.

2. THE KEEP-SCREEN LATCHED ON AN UNDERPOWERED SAMPLE.

   MI_MIN_SAMPLES is a floor for "can this be computed", and it was being used
   as the bar for "is this answer final". The screen fired on the first era
   clearing 200 rows and latched, measuring at 202-773 samples where a warm
   chart gives ~2065. Columns kept then tracked SAMPLE SIZE rather than
   information - EURUSD kept 0 of 49 at n=202, SP500 kept 15 at n=773, and the
   ordering across all six charts was very nearly monotone in n.

   A thin sample is still measured and printed, but it no longer closes the
   question: below MI_GOOD_SAMPLE_FRACTION of the target the result is labelled
   underpowered and a later era supersedes it, bounded by the same attempt
   budget. An underpowered screen that latches is worse than one that waits,
   because it looks like a result.

Build tag -> fleet-pool-v2.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-08-26 19:27:48 -04:00
.claude . 2026-07-18 17:43:29 -04:00
.clinerules feat: suppress noisy performance warnings unless VerboseMode 2026-07-27 10:58:29 -04:00
AI fix: correct edge floor percentage calculation and logging for model training 2026-08-25 23:16:05 -04:00
Database feat(trade): two books per symbol, and delete the vote exit 2026-08-26 09:20:35 -04:00
DirectML perf(tester,bn): no sub-second timer in the tester + BN kernels on the DLL tier 2026-08-25 20:44:18 -04:00
docs feat(altdata): wire everything the sources serve - screens become priors, not gates 2026-08-16 17:29:22 -04:00
Enumerations feat(trade): two books per symbol, and delete the vote exit 2026-08-26 09:20:35 -04:00
Expert fix(topology): stop a training-alone size becoming permanent, and stop the keep-screen latching underpowered 2026-08-26 19:27:48 -04:00
Market Descriptions Add new research scripts for trading strategy analysis 2026-08-02 12:25:20 -04:00
Marketing/Logo refactor(AI): clean up comments and add conditional compilation guards 2026-07-22 17:17:23 -04:00
Money refactor(trade-mgmt): remove all confidence-scaled trade management 2026-08-25 10:10:20 -04:00
Panel refactor(comments): box headers to stdlib length 2026-08-22 00:30:14 -04:00
Scripts fix(research): calendar recorder - separate LIVE from BACKFILL, fix seen-set key 2026-08-01 20:22:12 -04:00
Signals refactor(meta): remove meta-labeling entirely - RETRAIN-NEUTRAL 2026-08-25 09:44:52 -04:00
Structures fix(db): per-side pattern journaling + versioned journaling semantics 2026-08-12 10:37:57 -04:00
System feat(pool,mi): one feature layout fleet-wide, and the keep-screen stops self-disabling on a cold start 2026-08-26 17:41:14 -04:00
Tests fix(binomial): correct tail calculation in BinomialUpperTailP and add tests for accuracy 2026-08-25 23:37:22 -04:00
Trailing Enhance Feature and Topology Interfaces with Bulk Operations and Cache Management 2026-08-25 22:51:50 -04:00
Variables feat(vote): exit-on-reversal boolean, pin the threshold, retry the atomic rename 2026-08-26 09:53:56 -04:00
.gitignore chore(repo): move research/ and references/ out to ..\Warrior_Research 2026-08-25 11:00:24 -04:00
AI_NETWORK.md fix(ai): fold in the rest of the AI/Impl split - previous commit's git add aborted silently 2026-08-23 21:05:52 -04:00
cpu_directml.log feat(opencl): add feedback alignment support to weight update kernels 2026-07-28 15:01:40 -04:00
DATABASE.md feat: add max-pooling and convolution OpenCL kernels, clean up barrier and signal code 2026-07-13 03:23:39 -04:00
EXPERIMENTS.md feat: make batch normalization mandatory, and record the run-3 results 2026-07-30 08:51:10 -04:00
opencl.log feat(opencl): add feedback alignment support to weight update kernels 2026-07-28 15:01:40 -04:00
profiling.csv fix: handle legacy neuron classes in BlendWeightsFrom to avoid UB 2026-07-26 14:45:08 -04:00
README.md feat: Enhance README and documentation for Warrior_EA project 2026-04-20 19:28:34 -04:00
REFACTOR_NOTES.md refactor(ai): extract Layer.mqh and deduplicate AI config 2026-08-01 11:27:28 -04:00
SIGNALS.md feat(signals): add MACD/Ichimoku presets and Vote_Close disabled option 2026-07-26 18:33:12 -04:00
Warrior_EA.md feat: Enhance README and documentation for Warrior_EA project 2026-04-20 19:28:34 -04:00
Warrior_EA.mq5 fix(topology): stop a training-alone size becoming permanent, and stop the keep-screen latching underpowered 2026-08-26 19:27:48 -04:00
Warrior_EA.mqproj refactor(trade-mgmt): remove all confidence-scaled trade management 2026-08-25 10:10:20 -04:00
Warrior_EA_System_Overview.md docs(overview): trade-management enums are placement-only, and pin ordinals 2026-08-25 10:10:46 -04:00

Warrior_EA Project Overview

Description

Warrior_EA is a modular, AI/ML-ready MetaTrader 5 Expert Advisor designed for robust, production-grade trading. It integrates traditional and AI-driven signals, advanced money management, trailing stops, and a database/statistics subsystem for adaptive optimization.

Key Features

  • AI/ML Integration: LSTM, PAI, and CONV neural network signals, with configurable feature pipelines and training options.
  • Traditional Signals: Modular support for classic indicators (MA, MACD, RSI, etc.) and price action patterns.
  • Money Management: Fixed lot, fixed risk, and intelligent/adaptive strategies.
  • Trailing Stops: ATR-based, MA-based, Parabolic SAR, and more.
  • Database/Statistics: Tracks trades, signals, and performance for optimization and research.
  • Configurable Inputs: All major features and strategies are user-configurable via Inputs.mqh.
  • Robust Initialization: Retry logic and error handling for all critical subsystems.
  • Production-Ready: Designed for institutional and advanced retail use, with a focus on maintainability and extensibility.

Directory Structure

  • AI/: Neural network and ML logic
  • Database/: Database and statistics management
  • Enumerations/: Enum and type definitions
  • Expert/: Main EA orchestration and custom logic
  • Money/: Money management strategies
  • Signals/: Signal generation (AI and traditional)
  • Structures/: Data structures for signals and trades
  • System/: Utility and infrastructure modules
  • Trailing/: Trailing stop strategies
  • Variables/: Global input parameters and runtime variables

Getting Started

  1. Configure your desired strategies and features in Variables/Inputs.mqh.
  2. Compile Warrior_EA.mq5 in MetaEditor.
  3. Attach to a chart and enable Algo Trading.
  4. Monitor logs and database/statistics for performance and optimization.

Modernization & AI/ML Roadmap

  • Migrate all hard-coded signals to a configurable, feature-driven pipeline.
  • Expand AI/ML subsystem with new models and training options.
  • Enhance database/statistics for deeper analytics and automated optimization.
  • Introduce unit and integration tests for all modules.

Documented April 2026. For subsystem details, see each directory's README.md and AI_NETWORK.md.