forked from mnbvc188199/Warrior_EA
Owner decision (stated twice): available data gets wired; the networks judge
usefulness; the deploy gate remains the arbiter of what trades. Implemented:
MACRO block (6) on every symbol: 10y yield 20d change, curve slope, 5y
breakeven 20d change, Fed-ECB policy gap, CPI yoy, unemployment 12m change.
Screened null vs forward range on all four research symbols - recorded as
the honest prior in the catalog comment, wired regardless.
RISK block (3) extended to every symbol (FX majors, metals, energy, BTC all
now carry vix/vix_chg5/usd_chg5).
IVOL pair extended with the level alongside the change.
Vintage integrity kept where it is free: CPI is fetched as CPIAUCNS (NSA,
essentially never revised) so the plain-FRED backfill stays first-print-clean;
yields/curve/breakevens/policy rates are unrevised by nature. UNRATE is the
one exception (seasonal refits, ~0.1-0.2pp) - the EA cannot run the ALFRED
protocol, accepted and documented at the declaration site.
UpdateFred gains a staleDays parameter so the monthly series do not fire a
pointless fetch attempt every hour for three weeks after each print.
FeatureValue now takes the day and does its own as-of lookups - adding a
source no longer widens a parameter list. Feature counts: 12-15 per symbol;
symbol feature-order changed, safe only because no models exist yet.
export.py mirrors the new catalog for the five research symbols (13-15
features), smoke-tested: all five CSVs written, 6,072 daily rows each.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
113 lines
6.1 KiB
Text
113 lines
6.1 KiB
Text
WARRIOR EA - ALTERNATIVE DATA SYMBOL CATALOG
| |
============================================
| |
| |
The EA maps the chart's symbol to an alt-data instrument automatically. Broker
| |
tickers differ wildly (Dukascopy "USA500IDX", OANDA "SPX500", FTMO "US500.cash"),
| |
so the catalog lists the common names for each instrument, and any leftover
| |
suffix is absorbed by prefix matching - US500, US500.cash, US500.r, US500pro and
| |
US500m all resolve to SP500 from the single alias "US500".
| |
| |
Source of truth: System\AltDataFetch.mqh -> BuildCatalog().
| |
| |
IF YOUR SYMBOL IS NOT RECOGNISED
| |
--------------------------------
| |
A dialog appears on the chart asking which instrument it is, with a dropdown of
| |
everything below. Pick one and it is saved forever in
| |
| |
%APPDATA%\MetaQuotes\Terminal\Common\Files\Warrior_EA\AltData\symbol_map.cfg
| |
| |
Choosing "No alternative data" records that too, so it never asks again. The EA
| |
trains and trades normally either way - an unmapped symbol simply contributes
| |
zero alt-data features.
| |
| |
To map by hand (or to change an answer), edit that file - one line each:
| |
| |
USA500IDX=SP500
| |
MYWEIRDTICKER=NONE
| |
| |
Delete a line to be asked again at the next attach.
| |
| |
POLICY (owner decision 2026-08-16): every feature the fetched sources can serve
| |
is wired on every symbol. The research screens inform priors but do not gate
| |
the input list - the networks decide what is useful, and the deploy gate
| |
decides whether anything trained on these is ever allowed to trade.
| |
| |
FEATURE BLOCKS
| |
--------------
| |
RISK (3) vix, vix_chg5 CBOE VIX level + 5-day change (FRED VIXCLS)
| |
usd_chg5 broad dollar index 5-day change (FRED DTWEXBGS)
| |
IVOL (2) ivol, ivol_chg5 the instrument's OWN implied-vol index, level +
| |
5-day change (GVZ gold, OVX oil, VXN/VXD/RVX the
| |
US indices; FX has none - EVZ was discontinued)
| |
COT (3) cot_idx_1y/3y leveraged-fund net position percentile, 1y and 3y
| |
cot_chg_4w its 4-week change (SP500 carries cot_spec_net)
| |
EIA (3) eia_stk_idx1y US crude stocks ex-SPR, 1-year percentile
| |
eia_stk_chg4 US crude stocks, 4-week change
| |
eia_util US refinery utilization
| |
MACRO (6) mac_y10 10y treasury yield, 20-day change
| |
mac_curve 10y-2y curve slope
| |
mac_bei 5y inflation breakeven, 20-day change
| |
mac_gap Fed minus ECB policy rate
| |
mac_cpi US CPI year-over-year (unrevised NSA index)
| |
mac_unemp US unemployment rate, 12-month change
| |
| |
CATALOG
| |
-------
| |
CANONICAL FEATURES BLOCKS RECOGNISED NAMES (any broker suffix)
| |
--------- -------- ---------------------- ------------------------------------
| |
SP500 13 RISK+spec_net+EIA+MAC SP500 SPX500 US500 USA500 USA500IDX
| |
US_500 SPXUSD S&P500 SP_500 SPX
| |
USA500IDXUSD US500Cash
| |
NAS100 14 RISK+IVOL+EIA+MAC NAS100 NASDAQ US100 USA100 USATEC
| |
USTEC NDX100 NQ100 TECH100 USA100IDX
| |
US_100 NDX USATECHIDX
| |
US30 14 RISK+IVOL+EIA+MAC US30 DJ30 DOW30 USA30 WALLSTREET
| |
WS30 DJIUSD USA30IDX US_30 DOWJONES DJI
| |
US2000 14 RISK+IVOL+EIA+MAC US2000 RUSSELL2000 RUT USA2000 RTY US_2000
| |
DE40 12 RISK+EIA+MAC DE40 GER40 DAX40 DAX GER30 DE30
| |
GERMANY40 DEU40 GRXEUR DE_40 GER_40
| |
UK100 12 RISK+EIA+MAC UK100 FTSE100 FTSE GBR100 UKX GB100
| |
UK_100 BRXGBP
| |
JP225 12 RISK+EIA+MAC JP225 NIKKEI NI225 JPN225 J225 JPXJPY JP_225
| |
EU50 12 RISK+EIA+MAC EU50 STOXX50 ESTX50 EUSTX50 SX5E EUR50 E50EUR
| |
FR40 12 RISK+EIA+MAC FR40 CAC40 FRA40 CAC FRXEUR
| |
AU200 12 RISK+EIA+MAC AU200 ASX200 AUS200 SPI200 AU_200 AUXAUD
| |
HK50 12 RISK+EIA+MAC HK50 HSI HKG33 HK33 HANGSENG HKXHKD
| |
EURUSD 15 COT+RISK+EIA+MAC EURUSD EUR_USD
| |
USDJPY 15 COT+RISK+EIA+MAC USDJPY USD_JPY
| |
GBPUSD 15 COT+RISK+EIA+MAC GBPUSD GBP_USD
| |
USDCAD 15 COT+RISK+EIA+MAC USDCAD USD_CAD
| |
AUDUSD 15 COT+RISK+EIA+MAC AUDUSD AUD_USD
| |
NZDUSD 15 COT+RISK+EIA+MAC NZDUSD NZD_USD
| |
USDCHF 15 COT+RISK+EIA+MAC USDCHF USD_CHF
| |
XAUUSD 14 RISK+IVOL(GVZ)+EIA+MAC XAUUSD GOLD XAU_USD GOLDUSD
| |
XAGUSD 12 RISK+EIA+MAC XAGUSD SILVER XAG_USD SILVERUSD
| |
XTIUSD 14 RISK+IVOL(OVX)+EIA+MAC XTIUSD USOIL WTI CRUDE USCRUDE OIL
| |
WTICOUSD OILUSD LIGHTCMDUSD CRUDEOIL
| |
XBRUSD 14 RISK+IVOL(OVX)+EIA+MAC XBRUSD UKOIL BRENT UKOUSD BCOUSD
| |
BRENTCMDUSD
| |
NATGAS 12 RISK+EIA+MAC NATGAS NGAS XNGUSD NATURALGAS
| |
BTCUSD 15 COT+RISK+EIA+MAC BTCUSD BITCOIN XBTUSD BTC_USD
| |
| |
WHAT THE SCREENS FOUND (priors, not gates)
| |
------------------------------------------
| |
Screened CLEAN (family-wise bar + incremental test, vs forward RANGE):
| |
SP500 : vix_chg5, vix, usd_chg5, cot_spec_net
| |
USDJPY : COT family; vix_chg5
| |
EURUSD : vix_chg5
| |
XAUUSD : vix_chg5, and ivol_chg5 (GVZ) at 4.6x the strength of vix_chg5 -
| |
the second-strongest feature of the whole campaign
| |
Screened NULL (wired anyway by policy): the MACRO block on all four research
| |
symbols; EIA on WTI. Everything else is untested on its instrument.
| |
| |
NOT WIRED
| |
---------
| |
Gold/silver/copper COT positioning (CFTC disaggregated report - different
| |
dataset id and columns), and silver IV (VXSLV discontinued). GEX records daily
| |
to gex_{SYMBOL}.csv but feeds nothing until ~a year of history exists.
| |
| |
NOT WIRED
| |
---------
| |
Gold and WTI COT positioning exist, but in the CFTC's DISAGGREGATED report -
| |
a different dataset id with different column names than the financial-futures
| |
report this EA queries. Metals and energy therefore carry no COT columns.
|