That’s why the “take a look at earlier than you belief” strategy helps: take the precise message historical past from a channel, convert it into structured trades, and run it by means of the Technique Tester. This makes it simpler to separate advertising from statistics.
What the utility does
Becktester TG Indicators is a two-part workflow:
- Python app — connects to Telegram, masses message historical past from a specific channel/chat, parses indicators, and exports them to a CSV file.
- MetaTrader EA (MT4/MT5) — reads that CSV and reproduces trades within the Technique Tester, producing efficiency metrics and an fairness curve on historic knowledge.
Why merchants may have this
- Validate sign channels earlier than copying. Test commerce frequency, drawdown, shedding streaks, and stability throughout durations.
- Examine a number of sources. Similar take a look at setting → simpler comparability of Win Charge / Revenue Issue / Drawdown.
- Measure sensitivity. Perceive how unfold/slippage and entry precision have an effect on outcomes.
- Cut back “trust-based” selections. Numbers assist keep away from emotional buying and selling based mostly on a channel’s claims.
Key benefits of the strategy
- Makes use of actual message historical past (not curated examples).
- Runs inside MT4/MT5 Technique Tester: acquainted experiences, visuals, and period-to-period comparisons.
- Versatile parsing through key phrase and symbol-alias configurations.
- Security filters: skip duplicates, weekend indicators, time home windows, danger limits.
Excessive-level workflow
- Choose a Telegram channel/chat and a date vary within the Python app.
- Parse messages and generate indicators.csv (generally into Terminal/Frequent/Recordsdata so the terminal can entry it).
- Open the Technique Tester in MT4 or MT5, connect the EA, and level it to the indicators file.
- Evaluate statistics and (optionally) export a outcomes report back to a separate CSV file.
CSV construction (what will get exported)
The export retains the information structured: date/time, command kind, image, entry/SL/TP, lot dimension, and repair fields (message ID, edit flag, error area for unparsable messages). A number of take-profit ranges could be saved as an inventory separated by | .

Most important EA settings overview (MT4/MT5)
1) File & parser fundamentals
- SignalFile — CSV filename (e.g., indicators.csv ).
- DebugLogs, DebugCsvRows — further logs + print first CSV rows.
- BrokerUTCOffset — dealer UTC offset (helps align timestamps).
- SkipDuplicates — skip duplicated indicators.
- SkipWeekendSignals — ignore weekend indicators if wanted.
2) Lot sizing & danger
- LotMode — fastened / risk-based / per-symbol guidelines / lot-by-TP slots.
- FixedLotValue, RiskPercent, RiskPercentPerSymbol — core sizing controls.
- LotSizePerSymbol, LotSizeSpecificPair — fastened tons per instrument.
- DivideLotByTPCount — break up dimension throughout a number of TP targets.
3) SL/TP interpretation
- SLMode, TPMode — use values from the sign or customized ranges.
- CustomSL, CustomTP — customized targets (relying on items).
- SLUnit, TPUnit — Worth / Pips / Factors.
- AllTPInOneLine, SLMerged, TPMerged — deal with particular formatting types in messages.
- RejectOrdersWithoutSL, RejectOrdersWithoutTP — optionally ignore indicators lacking SL/TP.
- TPToCopy — select which TP ranges to incorporate (e.g., solely TP1 and TP3).
4) Execution & slippage habits
- ForceMarketExecution — all the time enter at market.
- MaxSlippage — most allowed worth deviation.
- HandleSlippage — ignore the sign or place a pending order when out of vary.
- PendingOrderExpiration — pending order expiry (minutes).
- EntryRangeMode, EntriesInZoneOnly — find out how to interpret “entry zone”.
5) Administration (breakeven & trailing)
- ActivateBreakeven, BreakevenAfterPoints — transfer to breakeven after X factors.
- ActivateTrailingStop, SLTrailingMode, TrailingStartPoints, TrailingStepPoints, TrailingDistancePoints — trailing choices.
- BreakevenToSignalEntryPrice — use the entry worth from the sign for BE when relevant.
6) Threat limits & time filter
- MaxTradesPerDay, MaxLossesPerDay — every day caps.
- MaxDailyLoss, MaxWeeklyLoss, MaxMonthlyLoss — loss limits (share or forex).
- LossExceedAction — cease copying or shut & cease if limits are exceeded.
- UseTimeFilter, StartTime, EndTime, AllowedTradingDays — commerce window & weekdays.
7) Stats & report
- ShowStats — present statistics.
- ExportReport, ReportFile — export outcomes to CSV (e.g., outcomes.csv ).
Python-side configuration (key phrases & symbols)

The supply consists of a number of configuration information that make parsing adaptable:
- app_config.json — Telegram connection settings (api_id/api_hash/session) and output preferences.
- backtest_settings.json — final channel, date vary, and output CSV path.
- configs/default.json (and different configs) — key phrase units for BUY/SELL, SL/TP, modifications, closes, and many others., plus image lists and aliases (e.g., GOLD → XAUUSD).
- config/current_config.json — the lively parsing configuration.
This issues as a result of channels format messages in a different way (TP1/TP2 vs “targets”, GOLD vs XAUUSD, and many others.). Configurable key phrases and image aliases assist match the parser to the channel’s fashion.
Replace: MT5 launch
The standard walkthrough is commonly proven on MT4, however the workflow is identical for MT5: the identical CSV idea, the identical Technique Tester strategy. A devoted MetaTrader 5 model of the EA is now out there.
Obtain
To maintain this instructional, hyperlinks are positioned on the finish. Exchange placeholders together with your precise product pages:
Disclaimer: Instructional content material solely. Backtesting is a mannequin and doesn’t assure future outcomes. Actual buying and selling consists of latency, slippage, various spreads, and execution variations.
