Trading Filters Guide
π Overview
RedFox Copier Pro includes multiple filtering layers to control which signals are executed. You can filter by symbol, trading hours, days of week, and signal content. This ensures you only trade what fits your strategy and schedule.
Filter Categories:
Symbol Filters - Which instruments to trade
Time Filters - When to trade (hours & days)
Content Filters - What text patterns to allow/block
π― Symbol Filters
1. EnableListSymbol
EnableListSymbol = true | falseControls whether symbol filtering is active.
false (Default - All Symbols)
Behavior: EA trades all symbols from signals.
Example:
Signals received:
- EURUSD BUY β
- XAUUSD BUY β
- GBPJPY SELL β
- US30 BUY β
All symbols are tradedWhen to use:
Trust all signal provider's instruments
Want maximum diversification
No symbol preferences
true (Symbol Whitelist Active)
Behavior: EA only trades symbols in ListSymbol setting.
Example:
ListSymbol = "EURUSD,GBPUSD,XAUUSD"
Signals received:
- EURUSD BUY β
(in list)
- GBPUSD SELL β
(in list)
- USDJPY BUY β οΈ (not in list, blocked)
- XAUUSD BUY β
(in list)When to use:
Focus on specific instruments
Avoid high-spread pairs
Limit to pairs you understand
Broker doesn't offer all symbols
2. ListSymbol
ListSymbol = "EURUSD,GBPUSD,XAUUSD" // Comma-separated listDefines which symbols to trade (when EnableListSymbol = true).
Configuration Examples:
Major Forex Only:
EnableListSymbol = true
ListSymbol = "EURUSD,GBPUSD,USDJPY,USDCHF"Gold + EUR Pairs:
EnableListSymbol = true
ListSymbol = "XAUUSD,EURUSD,EURGBP,EURJPY"Indices Only:
EnableListSymbol = true
ListSymbol = "US30,SPX500,NAS100,GER40"Mixed Portfolio:
EnableListSymbol = true
ListSymbol = "EURUSD,GBPUSD,XAUUSD,BTCUSD,US30"Important:
Use exact broker symbol names (check Market Watch)
No spaces after commas:
"EUR,GBP"not"EUR, GBP"Case-sensitive on some brokers
Include suffix if broker requires (e.g.,
EURUSDm,XAUUSD.)
Symbol Suffix Handling
Problem: Brokers add suffixes to symbols (EURUSD β EURUSDm, XAUUSD.)
Solution: EA automatically tries multiple suffix variations.
Settings:
SymbolsEnd = "" // Your broker's suffix (if any)Examples:
No Suffix (Standard):
SymbolsEnd = ""
Signal: EURUSD
EA opens: EURUSD β
With Suffix (ECN Broker):
SymbolsEnd = "m"
Signal: EURUSD
EA opens: EURUSDm β
Auto-Detection: EA tries these variations automatically:
Signal: EURUSD
EA tries:
1. EURUSD
2. EURUSDm
3. EURUSD.
4. EURUSDpro
5. EURUSD_
6. [other common suffixes]
Uses first match found in Market WatchBest Practice: Leave SymbolsEnd = "" and let EA auto-detect.
β° Time Filters
3. EnableTimeFilter
EnableTimeFilter = true | falseControls whether time-based filtering is active.
false (Default - 24/7 Trading)
Behavior: EA trades any time a signal is received.
When to use:
Automated 24/7 trading
Signal provider has good timing
No schedule restrictions
true (Time Filter Active)
Behavior: EA only trades during specified hours and days.
When to use:
Avoid high-spread hours (rollover, news)
Trade only London/NY sessions
Weekend/holiday restrictions
Personal trading schedule
4. StartHour / EndHour
StartHour = 8 // Trading starts at 08:00 (broker time)
EndHour = 20 // Trading ends at 20:00 (broker time)Defines trading hours (24-hour format, broker server time).
Configuration Examples:
London + NY Session (Full Overlap):
EnableTimeFilter = true
StartHour = 8 // 08:00
EndHour = 20 // 20:00
// Covers 8 AM - 8 PM (most liquid hours)NY Session Only:
StartHour = 13 // 13:00 (1 PM)
EndHour = 22 // 22:00 (10 PM)Asian Session:
StartHour = 0 // 00:00 (midnight)
EndHour = 9 // 09:00 (9 AM)Avoid Rollover (Skip 11 PM - 1 AM):
StartHour = 1 // 01:00
EndHour = 23 // 23:00
// Skips 11 PM - 1 AM high-spread periodImportant Notes:
Times are in broker server time (check MT4 market watch)
Most brokers use GMT+2/GMT+3 (Europe time)
Convert your local time to broker time!
Example Timeline:
Configuration:
StartHour = 8
EndHour = 18
Signal Timeline (Broker Time):
07:30 - Signal received β οΈ (before 08:00, blocked)
08:15 - Signal received β
(within hours, executed)
12:00 - Signal received β
(executed)
18:30 - Signal received β οΈ (after 18:00, blocked)EA Logs:
β οΈ Signal blocked by time filter
Current Time: 07:30
Allowed Hours: 08:00 - 18:00
Reason: Outside trading hours5. StartDay / EndDay
StartDay = 1 // Monday (1 = Monday, 7 = Sunday)
EndDay = 5 // FridayDefines trading days (1=Mon, 2=Tue, 3=Wed, 4=Thu, 5=Fri, 6=Sat, 7=Sun).
Configuration Examples:
Weekdays Only (Avoid Weekend Gaps):
EnableTimeFilter = true
StartDay = 1 // Monday
EndDay = 5 // Friday
// Trades Mon-Fri onlyExclude Friday (Avoid Weekend Risk):
StartDay = 1 // Monday
EndDay = 4 // Thursday
// Trades Mon-Thu, closes all before FridayFull Week (Including Weekend):
StartDay = 1 // Monday
EndDay = 7 // Sunday
// Trades any day (if broker offers weekend trading)Mid-Week Only:
StartDay = 2 // Tuesday
EndDay = 4 // Thursday
// Avoid Monday open volatility and Friday closeCombined Time & Day Filter Example:
Professional Setup (London Session, Weekdays):
EnableTimeFilter = true
StartHour = 8 // 08:00
EndHour = 17 // 17:00
StartDay = 1 // Monday
EndDay = 5 // Friday
Result:
β
Monday 10:00 - Allowed
β
Wednesday 15:00 - Allowed
β οΈ Friday 20:00 - Blocked (after 17:00)
β οΈ Saturday 12:00 - Blocked (weekend)
β οΈ Tuesday 06:00 - Blocked (before 08:00)π Content Filters (Whitelist/Blacklist)
6. EnableWhitelist
EnableWhitelist = true | falseControls whether signal text must contain specific keywords.
false (Default - No Content Filter)
Behavior: All signal text formats are accepted.
When to use:
Trust all signal provider's messages
No specific content requirements
true (Whitelist Active)
Behavior: Signal text must contain at least one keyword from Whitelist.
Use Cases:
Only trade specific signal types
Filter by strategy name
Require specific indicators mentioned
7. Whitelist
Whitelist = "PREMIUM,VIP,CONFIRMED" // Comma-separated keywordsSignal must contain at least ONE of these keywords to be executed.
Configuration Examples:
VIP Signals Only:
EnableWhitelist = true
Whitelist = "VIP,PREMIUM"
Signal 1: "π₯ VIP Signal: EURUSD BUY" β
(contains "VIP")
Signal 2: "EURUSD BUY" β οΈ (no keyword, blocked)
Signal 3: "PREMIUM Trade: GBPUSD SELL" β
(contains "PREMIUM")Confirmed Setups Only:
EnableWhitelist = true
Whitelist = "CONFIRMED,STRONG SETUP,HIGH PROBABILITY"
Signal 1: "CONFIRMED: XAUUSD BUY" β
Signal 2: "Possible EURUSD trade" β οΈ (not confirmed)Specific Strategy:
EnableWhitelist = true
Whitelist = "BREAKOUT,TREND FOLLOW"
Signal 1: "BREAKOUT Signal - GBPUSD" β
Signal 2: "Scalp trade EURUSD" β οΈ (wrong strategy)Multiple Channels (Filter by Source):
EnableWhitelist = true
Whitelist = "CHANNEL-A,CHANNEL-B"
// Only signals tagged with channel name are executed8. EnableBlacklist
EnableBlacklist = true | falseControls whether certain keywords block signals.
false (Default - No Blacklist)
Behavior: No text-based blocking.
true (Blacklist Active)
Behavior: Signal is blocked if it contains ANY keyword from Blacklist.
Use Cases:
Avoid risky setups
Skip specific instruments
Filter out test signals
Block experimental strategies
9. Blacklist
Blacklist = "TEST,DEMO,RISKY" // Comma-separated keywordsSignal is blocked if it contains ANY of these keywords.
Configuration Examples:
Avoid Test Signals:
EnableBlacklist = true
Blacklist = "TEST,DEMO,PRACTICE"
Signal 1: "TEST - EURUSD BUY" β οΈ (contains "TEST", blocked)
Signal 2: "EURUSD BUY" β
(no blacklist word)Skip Risky Trades:
EnableBlacklist = true
Blacklist = "RISKY,HIGH RISK,AGGRESSIVE,YOLO"
Signal 1: "RISKY TRADE: GBPJPY" β οΈ (blocked)
Signal 2: "Conservative: EURUSD" β
Avoid Specific Pairs (Alternative to Symbol Filter):
EnableBlacklist = true
Blacklist = "JPY,EXOTIC,CRYPTO"
Signal 1: "USDJPY BUY" β οΈ (contains "JPY")
Signal 2: "EURUSD BUY" β
Filter News Trades:
EnableBlacklist = true
Blacklist = "NEWS,NFP,FOMC,PENDING"
Signal 1: "NEWS Trade - EURUSD" β οΈ (contains "NEWS")
Signal 2: "Technical Setup - GBPUSD" β
Whitelist + Blacklist Combined:
Example: Only VIP, But Skip Risky
EnableWhitelist = true
Whitelist = "VIP,PREMIUM"
EnableBlacklist = true
Blacklist = "RISKY,NEWS"
Signal 1: "VIP Signal: EURUSD BUY" β
(VIP + no blacklist)
Signal 2: "VIP RISKY: GBPJPY" β οΈ (VIP but contains RISKY, blocked!)
Signal 3: "EURUSD BUY" β οΈ (no VIP keyword)
Signal 4: "PREMIUM NEWS: XAUUSD" β οΈ (PREMIUM but contains NEWS)Logic:
Check whitelist: Must contain keyword
Check blacklist: Must NOT contain keyword
Both must pass for signal to execute
πΌ Real-World Configuration Examples
Example 1: Conservative Trader
Goal: Only major pairs, London session, weekdays only.
Configuration:
// Symbol Filter
EnableListSymbol = true
ListSymbol = "EURUSD,GBPUSD,USDCHF"
// Time Filter
EnableTimeFilter = true
StartHour = 8
EndHour = 17
StartDay = 1
EndDay = 5
// Content Filter
EnableWhitelist = true
Whitelist = "CONFIRMED,LOW RISK"
EnableBlacklist = falseResult: Very selective trading, only clean setups during optimal hours.
Example 2: Gold Specialist
Goal: Only Gold, NY session, avoid news.
Configuration:
// Symbol Filter
EnableListSymbol = true
ListSymbol = "XAUUSD"
// Time Filter
EnableTimeFilter = true
StartHour = 13 // NY open
EndHour = 22 // NY close
StartDay = 1
EndDay = 5
// Content Filter
EnableWhitelist = false
EnableBlacklist = true
Blacklist = "NEWS,NFP,FOMC,CPI"Result: Focused Gold trading, avoids high-impact news volatility.
Example 3: Premium Signals Only
Goal: Only VIP signals, any time, any symbol.
Configuration:
// Symbol Filter
EnableListSymbol = false // All symbols
// Time Filter
EnableTimeFilter = false // 24/7
// Content Filter
EnableWhitelist = true
Whitelist = "VIP,PREMIUM,GOLD SIGNAL"
EnableBlacklist = falseResult: Maximum flexibility but only premium tier signals.
Example 4: Avoid Volatility
Goal: Trade major pairs, avoid news and risky setups, avoid Friday.
Configuration:
// Symbol Filter
EnableListSymbol = true
ListSymbol = "EURUSD,GBPUSD,USDCHF,AUDUSD"
// Time Filter
EnableTimeFilter = true
StartHour = 8
EndHour = 20
StartDay = 1
EndDay = 4 // Monday-Thursday only
// Content Filter
EnableBlacklist = true
Blacklist = "NEWS,RISKY,AGGRESSIVE,VOLATILE,NFP,FOMC"Result: Safe, conservative trading avoiding high-risk periods and setups.
Example 5: Full Diversification
Goal: Trade everything (maximum signals).
Configuration:
// Symbol Filter
EnableListSymbol = false
// Time Filter
EnableTimeFilter = false
// Content Filter
EnableWhitelist = false
EnableBlacklist = falseResult: EA executes every signal received (maximum exposure).
β οΈ Common Mistakes
β Mistake 1: Wrong Broker Symbol Names
Bad:
ListSymbol = "EURUSD,XAUUSD"
Broker symbols: EURUSDm, XAUUSD.
// Result: No match, no trades!Good:
Check Market Watch, use exact names:
ListSymbol = "EURUSDm,XAUUSD."
// Or use SymbolsEnd for auto-suffixβ Mistake 2: Time Zone Confusion
Bad:
Your Time: 9 AM EST
Broker Time: 4 PM GMT+3
StartHour = 9 // Thinks this is broker time
// Result: Actually trading at 4 PM your time!Good:
Convert to broker time:
Your 9 AM EST = 4 PM broker time
StartHour = 16β Mistake 3: Whitelist + Blacklist Conflict
Bad:
Whitelist = "VIP"
Blacklist = "VIP-TEST"
Signal: "VIP-TEST Signal"
// Contains "VIP" (whitelist pass) AND "VIP-TEST" (blacklist block)
// Result: Blocked (blacklist wins)Good: Use precise keywords without overlap.
β Mistake 4: Too Restrictive Filters
Bad:
EnableListSymbol = true
ListSymbol = "EURUSD" // Only 1 symbol
EnableTimeFilter = true
StartHour = 14
EndHour = 16 // Only 2 hours
EnableWhitelist = true
Whitelist = "SUPER-VIP" // Rare keyword
// Result: Almost no signals execute!Good: Balance filters with signal frequency.
β Mistake 5: Spaces in Lists
Bad:
ListSymbol = "EURUSD, GBPUSD, XAUUSD" // Spaces after commas
// May cause parsing issuesGood:
ListSymbol = "EURUSD,GBPUSD,XAUUSD" // No spacesβ
Best Practices
β
1. Start Permissive, Then Restrict
Week 1:
All filters OFF
// See what signals come inWeek 2:
Add symbol filter (focus on profitable pairs)Week 3:
Add time filter (optimize for best hours)Week 4:
Add content filters if neededβ
2. Monitor Filter Logs
EA logs blocked signals:
β οΈ Signal blocked by symbol filter: USDJPY
β οΈ Signal blocked by time filter: 22:30
β οΈ Signal blocked by whitelist: No keyword foundReview logs weekly:
Missing good trades? Relax filters
Too many bad trades? Tighten filters
β
3. Match Filters to Strategy
Scalping:
EnableTimeFilter = true (high liquidity hours only)
EnableListSymbol = true (low spread pairs only)Swing Trading:
EnableTimeFilter = false (entry timing less critical)
EnableListSymbol = true (focus on trending pairs)News Trading:
Blacklist = "NEWS,NFP" // Avoid (or whitelist for specialists)β
4. Test Filter Combinations
Run on demo with different configurations
Compare performance (profit, drawdown, trade count)
Find optimal balance
Example Test:
Week 1: All symbols, all time
Week 2: Major pairs only, all time
Week 3: Major pairs, London+NY only
Week 4: Major pairs, London+NY, VIP only
Compare results β Choose bestβ
5. Document Your Filters
Filter Configuration Notes:
Date: 2024-10-28
Symbols: EURUSD, GBPUSD, XAUUSD (low spread, liquid)
Hours: 08:00-20:00 broker time (London+NY overlap)
Days: Mon-Thu (avoid Friday risk)
Content: VIP only (premium signals)
Reason: Focus on high-quality setups during optimal hours
Review Date: 2024-11-15π EA Logging Examples
Symbol Filter Block:
β οΈ SIGNAL BLOCKED - Symbol Filter
Signal: USDJPY BUY
Reason: Symbol not in whitelist
Allowed Symbols: EURUSD, GBPUSD, XAUUSD
Action: Signal skippedTime Filter Block:
β οΈ SIGNAL BLOCKED - Time Filter
Signal: EURUSD BUY
Current Time: 22:45 (Broker Time)
Allowed Hours: 08:00 - 20:00
Allowed Days: Mon-Fri (Today: Friday)
Action: Signal skippedContent Filter Block:
β οΈ SIGNAL BLOCKED - Blacklist
Signal Text: "RISKY NEWS Trade - EURUSD BUY"
Matched Keyword: "RISKY"
Blacklist: RISKY, NEWS, AGGRESSIVE
Action: Signal skippedFilter Pass:
β
SIGNAL PASSED ALL FILTERS
Symbol: GBPUSD β
(in whitelist)
Time: 10:30 Tuesday β
(within hours)
Content: "VIP Signal: GBPUSD BUY" β
(whitelist match)
Action: Processing signal for order placementπ Filter Impact Analysis
Test: 500 signals over 3 months
No Filters
500 (100%)
52%
+15%
-12%
Symbol Only (Majors)
350 (70%)
54%
+18%
-10%
Symbol + Time
200 (40%)
58%
+22%
-8%
Symbol + Time + Content
120 (24%)
62%
+25%
-6%
Conclusion: Proper filtering improves win rate and reduces drawdown by focusing on optimal conditions.
π Quick Start Guide
Step 1: Understand Your Signal Provider
What symbols do they trade?
When do they send signals?
Do they use specific keywords?
Step 2: Set Symbol Filter
EnableListSymbol = true
ListSymbol = "[your broker's exact symbol names]"Verify in Market Watch!
Step 3: Set Time Filter (Optional)
EnableTimeFilter = true
StartHour = [optimal start]
EndHour = [optimal end]
StartDay = 1
EndDay = 5Step 4: Set Content Filters (Optional)
// If signal provider uses tags:
EnableWhitelist = true
Whitelist = "VIP,PREMIUM"
// If you want to avoid certain types:
EnableBlacklist = true
Blacklist = "RISKY,NEWS"Step 5: Monitor & Adjust
Check EA logs for blocked signals
Adjust filters based on performance
Balance selectivity vs signal frequency
π FAQ
Q: No orders opening at all? A: Check logs for filter blocks. Likely symbol names don't match or time filter too restrictive.
Q: Can I use regex in whitelist/blacklist? A: No, simple keyword matching only. Keywords are case-insensitive.
Q: How to trade only one specific symbol? A: EnableListSymbol = true, ListSymbol = "EURUSD" (single symbol).
Q: Time filter not working? A: Verify broker server time (check MT4 Market Watch time). Convert your local time.
Q: Can I have different filters per symbol? A: Not directly. Use separate EA instances or file config feature.
Remember: Filters are powerful tools to align signal execution with your strategy and schedule. Use them wisely! π―
Last updated