Warrior_EA/Signals
Repository files (latest commit first)
Filename Latest commit message Latest commit date
AnimateDread 8c0186c850 refactor(signals): AI signal files are identity + topology, nothing else
Every AI signal repeated the same five-line InitIndicators override that
did nothing but call InitNeuralNetwork. The cause was an access mismatch,
not a design: CExpertSignalCustom declares InitIndicators public, the AI
base redeclared it PROTECTED, and each subclass had to redeclare it
public to be reachable by CExpert. Worse, the base's own override does a
different job entirely - it creates the OHLC/ZigZag feature indicators -
and InitNeuralNetwork called it back scope-qualified to stop the virtual
dispatch landing in the subclass. Two jobs, one virtual name, and a
recursion trap held off by a scope qualifier.

The feature-indicator step is now InitFeatureIndicators() (protected,
non-virtual, named for what it does) and the AI base carries the single
public InitIndicators override. CONV/HYBRID/LSTM/PAI/META drop their
copies and are now purely identity plus topology, which is the classic
signal file's shape.

Comment pass on ExpertSignalAIBase.mqh, -100 lines with every constant
and every measured number kept. Three claims in the tier block were
stale and inverted - it named CalibratedConfidenceMagnitude() as the
tiering input where the code deliberately uses the RAW magnitude, and it
described the signal DB as re-ranking each tier when ApplyPatternWeight
declines the DB from the end of era 1. Also dropped a paragraph whose
subject was a previous version of the comment, and moved two notes down
onto the constants they document (CONV_COMPRESSION_DIVISOR was 16 lines
and three unrelated defines away from its own text).

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-08-20 08:57:54 -04:00
..
README.md feat(signals): add MACD/Ichimoku presets and Vote_Close disabled option 2026-07-26 18:33:12 -04:00
SignalCONV.mqh refactor(signals): AI signal files are identity + topology, nothing else 2026-08-20 08:57:54 -04:00
SignalHYBRID.mqh refactor(signals): AI signal files are identity + topology, nothing else 2026-08-20 08:57:54 -04:00
SignalIchimoku.mqh feat(meta): self-contained corpus - the META chart sweeps the real classic ladders over its own history 2026-08-13 16:19:43 -04:00
SignalLSTM.mqh refactor(signals): AI signal files are identity + topology, nothing else 2026-08-20 08:57:54 -04:00
SignalMA.mqh feat(indicators): run the built-in iMA and MetaTrader's ZigZag; add a classic-vote shift 2026-08-19 19:09:58 -04:00
SignalMACD.mqh feat(meta): self-contained corpus - the META chart sweeps the real classic ladders over its own history 2026-08-13 16:19:43 -04:00
SignalMETA.mqh refactor(signals): AI signal files are identity + topology, nothing else 2026-08-20 08:57:54 -04:00
SignalNewsFilter.mqh fix: add error logging for buffer failures and reject trades on invalid stop loss 2026-07-26 12:12:14 -04:00
SignalPAI.mqh refactor(signals): AI signal files are identity + topology, nothing else 2026-08-20 08:57:54 -04:00
SignalRiskGuard.mqh Add new research scripts for trading strategy analysis 2026-08-02 12:25:20 -04:00
SignalRSI.mqh feat(meta): self-contained corpus - the META chart sweeps the real classic ladders over its own history 2026-08-13 16:19:43 -04:00
Signals.mqh feat: S2 meta-labeling head - binary trade-quality model over the classic-candidate corpus 2026-08-13 06:52:31 -04:00
SignalSessionFilter.mqh refactor(stdlib): one quantile definition, from Math\Stat 2026-08-19 20:16:03 -04:00

Signals Subsystem (Signals/)

Overview

The Signals/ directory contains all trade signal generation logic for the Warrior EA. It includes both traditional indicator-based signals and advanced AI/ML-driven signals. Each signal is encapsulated in its own class, supporting modularity and extensibility.

Key Components

Signals.mqh

  • Main orchestration file for signal modules.
  • Includes both traditional and AI/ML signal classes.
  • Facilitates integration of filters (news, session, etc.) and advanced signals.

AI/ML-Driven Signals

  • SignalLSTM.mqh: Implements an LSTM-based neural network signal generator. Integrates with the AI subsystem, supports model training, loading, and inference. Designed for advanced, data-driven strategies.
  • SignalPAI.mqh: Implements a Perceptron AI-based signal generator. Inherits from CExpertSignalAIBase. Provides methods for initializing, training, and using a perceptron neural network for trade signal generation. Supports dynamic configuration, indicator integration, and modular AI/ML pipeline features. Designed for advanced, data-driven strategies and easy integration into the EA's AI subsystem.

Traditional Indicator-Based Signals

  • SignalMA.mqh: Moving Average signal generator.
  • SignalMACD.mqh: MACD oscillator signal generator.
  • SignalRSI.mqh: Relative Strength Index signal generator.
  • SignalStoch.mqh: Stochastic oscillator signal generator.
  • SignalPB.mqh: Pin Bar pattern signal generator.
  • SignalNewsFilter.mqh: News event filter for signals, configurable by impact and lookback period.
  • SignalSessionFilter.mqh: Session-based filter (London, New York, Tokyo sessions).

Individual Signal Modules

Below is a comprehensive list of all signal modules in the Signals/ directory, with a brief description of each:

  • SignalAC.mqh: (Removed)
  • SignalAO.mqh: (Removed)
  • SignalCCI.mqh: (Removed)
  • SignalCONV.mqh: Convolutional AI signal. Uses a neural network for advanced pattern recognition.
  • SignalDTDB.mqh: (Removed)
  • SignalEB.mqh: (Removed)
  • SignalIB.mqh: (Removed)
  • SignalIchimoku.mqh: Ichimoku Kinko Hyo classic vote, written from scratch (no standard-library module exists). 12 patterns numbered weakest-to-strongest, covering the full repertoire: price/cloud bias, projected cloud colour and full Chikou Span confirmation (models 0-2, all at the standard-library floor weight of 10 since each is a standing state rather than a trigger); the TK cross graded weak/neutral/strong by cloud position (3/5/10, weights 10/40/90); Kumo twist (4); Kijun-sen cross and bounce (6/7); Kumo breakout and thin-cloud breakout (8/9); and Sanyaku Kōten/Gyakuten at 100 (11). Its class comment documents MT5's draw-shift-only buffer convention and the resulting lookahead hazard.
  • SignalITF.mqh: Intraday Time Filter. Filters signals based on time-of-day and day-of-week.
  • SignalLSTM.mqh: LSTM AI signal. Uses a recurrent neural network for sequence-based prediction.
  • SignalMA.mqh: Moving Average classic vote (unified ADMovingAverage custom indicator; 4 patterns).
  • SignalMACD.mqh: MACD oscillator classic vote, ported from the MQL5 standard library. 6 patterns including single and double price/oscillator divergence — the only divergence model in the classic set.
  • SignalNewsFilter.mqh: (Filters trading signals based on economic news events and impact levels. Configurable lookback window and impact threshold.)
  • SignalPAI.mqh: Implements a Perceptron AI-based signal generator. Inherits from CExpertSignalAIBase. Provides methods for initializing, training, and using a perceptron neural network for trade signal generation. Supports dynamic configuration, indicator integration, and modular AI/ML pipeline features. Designed for advanced, data-driven strategies and easy integration into the EA's AI subsystem.
  • SignalPB.mqh: (Removed)
  • SignalRSI.mqh: RSI classic vote (4 patterns).
  • SignalRVI.mqh: (Removed)
  • Signals.mqh: Main orchestration file for all signals.
  • SignalSAR.mqh: (Removed)
  • SignalSessionFilter.mqh: (Removed)
  • SignalStoch.mqh: (Removed)
  • SignalWPR.mqh: (Removed)

Integration Notes

  • All signals derive from a common base (typically CExpertSignalCustom or CExpertSignalAIBase).
  • Modular design allows for easy addition/removal of signals and filters.
  • Migration to a fully AI/ML-driven pipeline is recommended for future-proofing and improved performance.
  • Some files (e.g., SignalPAI.mqh) may require conversion or external review due to non-text format.

Documented April 2026. For AI/ML migration and modernization, see AI_NETWORK.md and project roadmap.