Warrior_EA/Signals
Repository files (latest commit first)
Filename Latest commit message Latest commit date
AnimateDread d20058fc1b feat(meta): dataset export for offline cross-sectional pooled training
Meta_ExportDataset input: with AIType=META the chart writes its complete
training set once per attach - every resolved+labeled candidate as
[barTime|family|pattern|side|won|NetInputWidth floats] using the SAME
window builder, descriptor and label caches pass 2 trains on, so offline
examples are byte-equivalent to the EA's own. Sidecar .meta.csv carries
layout + the geometry/BE the labels were computed at. Files land in
Common\Files\Warrior_EA\MetaExport\<sym>_<period>.f32.

This is the pooling architecture decision: multi-symbol training INSIDE the
per-chart God-class would be the riskiest surgery this codebase has seen;
instead each chart exports, the pooled head trains offline (small dense+BN
net, minutes on this box), is validated per-symbol under the same
chronological splits and coverage x (p - BE) gate, and only a WINNER gets
written back into a .nnw for the EA to load natively (format fully mapped).
Also turns every future meta experiment from a 20-minute tester cycle into
minutes of offline iteration.

Cost-model note for the record (user challenge, verified): spread is 0.099
ATR = ~2% of the 4.74 ATR trade width - tiny per bar, but expressed in
win-rate points it is 0.099/4.74 = 2.1pp, which is the measured base-vs-BE
gap and the size of the entire observed skill lift. Zero-spread relabeling
would put base == BE by construction. Multi-day holds additionally pay swap,
which the label does NOT charge - the true bar is higher, not lower.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-13 13:14:12 -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 fix(ai): report the metric actually compared; surface the derived front-end 2026-07-30 15:20:30 -04:00
SignalHYBRID.mqh fix(ai): report the metric actually compared; surface the derived front-end 2026-07-30 15:20:30 -04:00
SignalIchimoku.mqh fix(signals): revive a dead MA model, and demote Sanyaku from state to event 2026-08-01 17:14:34 -04:00
SignalLSTM.mqh fix(ai): report the metric actually compared; surface the derived front-end 2026-07-30 15:20:30 -04:00
SignalMA.mqh fix(signals): revive a dead MA model, and demote Sanyaku from state to event 2026-08-01 17:14:34 -04:00
SignalMACD.mqh feat(signals): add MACD/Ichimoku presets and Vote_Close disabled option 2026-07-26 18:33:12 -04:00
SignalMETA.mqh feat(meta): dataset export for offline cross-sectional pooled training 2026-08-13 13:14:12 -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 feat: add max-pooling and convolution OpenCL kernels, clean up barrier and signal code 2026-07-13 03:23:39 -04:00
SignalRiskGuard.mqh Add new research scripts for trading strategy analysis 2026-08-02 12:25:20 -04:00
SignalRSI.mqh refactor(ai): extract Layer.mqh and deduplicate AI config 2026-08-01 11:27:28 -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 fix: add error logging for buffer failures and reject trades on invalid stop loss 2026-07-26 12:12:14 -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.