Dashboard Basket MT5 is a multi-symbol trading dashboard for manual traders. One panel shows the market state of up to 40 symbols (spread, daily move, average daily range, candle direction on 9 timeframes and price versus a moving average) and lets you open and close trades on any of them with one click, including whole currency baskets, with an automatic basket take profit and stop loss.
The EA never trades by itself. Every position is opened by you; only the basket take profit / stop loss closes positions automatically.
Product page on the MQL5 Market: Dashboard Basket MT5
Free demo (demo accounts only, see section 9): Download demo
Contents
- Installation
- The panel
- Trading buttons
- Currency baskets
- Basket take profit and stop loss
- Symbol sources
- Input parameters
- Important notes
- Free demo version
- Troubleshooting
1. Installation
- Buy or download the EA from the MQL5 Market page. It appears in the Navigator under Expert Advisors > Market.
- Open an empty chart (any symbol) and make the window wide: the panel is about 1070 pixels wide.
- Drag Dashboard Basket onto the chart. In the Common tab, tick Allow Algo Trading.
- Turn on the Algo Trading button in the terminal toolbar.
- In the Inputs tab, choose the symbol source and, if your broker adds characters to symbol names (for example EURUSDm or EURUSD.pro), set the symbol prefix / suffix.
- Click OK. The Experts tab shows how many symbols were loaded and which ones were skipped.
The EA adds the symbols it uses to Market Watch. The first time, some ADR and MA cells stay empty ("-") or grey for a few seconds while the terminal downloads the price history. They fill in by themselves.
2. The panel
Header
- Title and info line: magic number, lot, account type (HEDGING or NETTING) and number of symbols.
- Basket TP / SL: the basket take profit and stop loss in account currency ("off" when disabled).
- Totals: number of positions, total lots and total floating P/L of the EA.
- Status line: result of your last action (order filled, error, basket closing in progress).
- CLOSE ALL: closes every position of the EA (with a confirmation).
- X: removes the EA from the chart, after a confirmation. Open positions are not closed, but the basket take profit / stop loss stops working until you attach the EA again.
Columns
| Column | Meaning |
|---|---|
| Symbol | Broker symbol name (names longer than 12 characters end with ~) |
| Spread | Current spread in pips |
| Pips | Today's move: close minus open of the current D1 candle, in pips, with sign |
| ADR | Average Daily Range in pips: average of yesterday's range and the 5, 10 and 20 day average ranges |
| Candle direction M1 ... MN | Current candle on 9 timeframes: green = bullish, red = bearish, grey = flat or no data yet |
| MA (2 timeframes) | Arrow up = price above the moving average, arrow down = below (default SMA 12 on H4 and D1) |
| Trade | BUY, SELL and CLOSE buttons of the symbol |
| Lots Buy / Sell | Open volume on each side |
| Pos B / S | Number of buy and sell positions |
| Profit Buy / Sell / Total | Floating profit including swap and entry commission |
Pips are calculated per symbol: the standard forex pip for pairs of two major currencies (0.0001, or 0.01 for JPY pairs), and a configurable number of points for metals, indices and crypto (default 10 points).
3. Trading buttons
- BUY / SELL on a row: opens one market order of the configured lot on that symbol.
- CLOSE on a row: closes every position of the EA on that symbol, buy and sell.
- CLOSE ALL: closes every position of the EA on every symbol.
Before each order the EA checks that trading is allowed (terminal, EA settings, account, symbol), rounds the lot to the broker step, refuses a lot below the minimum, and checks the free margin. The result is shown in the status line, for example BUY EURUSD 0.01 @ 1.08512 OK (deal #123456).
Only positions with the EA's magic number are counted and closed. Your manual trades and positions of other EAs are never touched.
4. Currency baskets
A currency basket trades one currency against all of its pairs on the dashboard. BUY xxx makes you long that currency, SELL xxx short.
Example, BUY USD opens: BUY USDJPY, BUY USDCHF, BUY USDCAD, SELL EURUSD, SELL GBPUSD, SELL AUDUSD, SELL NZDUSD.
- CLOSE on a basket row closes every position of the EA on the pairs of that currency.
- The basket row shows the number of positions and the floating P/L on that currency's pairs. A pair such as EURUSD counts for both the EUR and the USD basket.
- Only pairs of two of the 8 major currencies (EUR, GBP, AUD, NZD, USD, CAD, CHF, JPY) take part. Metals, indices and exotic pairs never join a basket.
- The number of pairs is shown next to the currency, for example USD (7 pairs). With a Market Watch or custom list it can be lower than 7.
- Choose the basket rows with the Currencies input (default USD,JPY).
5. Basket take profit and stop loss
Set a target and a maximum loss in account currency (0 = off). When the total floating P/L of all positions of the EA reaches the target, or falls to minus the stop loss, the EA closes all of its positions. The status line shows for example Basket TP hit (25.40): all positions closed.
If a close fails (requote, market closed, connection lost), the EA retries on every refresh until all of its positions are closed. New orders are blocked during that time.
The basket TP / SL only works while the EA is on the chart and the terminal is running.
6. Symbol sources
| Symbol source | Rows |
|---|---|
| 28 major & cross pairs (default) | All pairs of EUR, GBP, AUD, NZD, USD, CAD, CHF, JPY. Both quote directions are recognised; pairs your broker does not offer are skipped |
| 28 major & cross pairs + custom list | The 28 pairs, then the symbols of the custom list (for example XAUUSD, US30, BTCUSD), up to "Max symbols" in total |
| All symbols in Market Watch | Every symbol shown in Market Watch when the EA starts, in that order, up to "Max symbols". Re-attach the EA after changing Market Watch |
| Custom list only | Only the symbols you type, separated by commas, up to "Max symbols" |
Custom names are tried as typed, then with the prefix and suffix added: with the suffix "m" you can type XAUUSD or XAUUSDm. Unknown names are skipped and listed in the Experts log.
7. Input parameters
| Group | Input | Default | Meaning |
|---|---|---|---|
| Symbols | Symbol source | 28 major & cross pairs | See section 6 |
| Custom / extra symbols | XAUUSD,XAGUSD | Comma-separated list for the two "custom list" sources | |
| Symbol prefix / Symbol suffix | (empty) | Characters your broker adds to symbol names, for example "m." or ".pro" (not used for Market Watch) | |
| Max symbols shown in total | 40 | Limit of rows. The 28 major pairs are always kept | |
| Points per pip for non-major symbols | 10 | Pip size of metals, indices, crypto. Set 1 to see points | |
| Moving average | MA period | 12 | Period of the moving average |
| MA method | Simple | Simple, Exponential, Smoothed, Linear weighted | |
| MA applied price | Close | Price used by the moving average | |
| MA timeframe #1 / #2 | H4 / D1 | Timeframes of the two MA columns | |
| Trading | Magic number | 1234 | Identifies the positions of the EA. Use a different number for each copy of the EA |
| Lot per order | 0.01 | Volume of every order, rounded to the broker step | |
| Max slippage (points) | 30 | Maximum deviation for opening and closing | |
| Order comment | Dashboard Basket | Comment of every order | |
| Basket TP / SL | Basket take profit (money) | 0 | Close everything at this total profit (0 = off) |
| Basket stop loss (money) | 0 | Close everything at this total loss, entered as a positive number (0 = off) | |
| Include entry commission in P/L | true | Adds the commission paid at entry to the floating P/L | |
| Currency baskets | Currencies | USD,JPY | Basket rows, any of the 8 major currencies (empty = none) |
| Safety | Ask for confirmation before CLOSE ALL | true | Confirmation dialog before CLOSE ALL |
| Ask for confirmation before opening a currency basket | true | Confirmation dialog before a basket BUY / SELL | |
| Display | Panel X / Y offset | 10 / 30 | Position of the panel on the chart (pixels) |
| Font size | 8 | Font size of the panel | |
| Refresh interval (ms) | 1000 | Refresh period, minimum 250. Keep 1000 or more with many symbols |
8. Important notes
- Use a hedging account. On a netting account each symbol holds one position: a SELL click reduces or reverses an existing BUY, and two baskets sharing a pair offset each other on that pair. The account type is shown in the header.
- Positions are opened without individual stop loss or take profit. Manage the risk with the basket take profit / stop loss or the CLOSE buttons.
- Floating P/L includes swap and the entry commission. A commission charged at exit is only applied when the position closes.
- Changing the chart timeframe or the inputs rebuilds the dashboard from scratch. Removing the EA deletes only its own chart objects; your drawings stay.
- Trading involves risk. Dashboard Basket is a market overview and trade management tool. It does not predict the market and does not guarantee profits.
9. Free demo version
Download Dashboard Basket Demo
- Download Dashboard Basket Demo.ex5 from the link above.
- In MetaTrader 5, click File > Open Data Folder, then open MQL5\Experts and copy the file there.
- In the Navigator, right-click Expert Advisors and click Refresh.
- Log in to a demo account and drag Dashboard Basket Demo onto an empty chart.
The full version is on the MQL5 Market.
10. Troubleshooting
| Message or symptom | Cause and solution |
|---|---|
| Alert "no symbol found. Check the symbol source, custom list and prefix / suffix." | No symbol of the chosen source exists at your broker. Check the prefix / suffix (look at the names in Market Watch) and the custom list |
| Fewer than 28 rows | Your broker does not offer some pairs, or they need a prefix / suffix. The Experts tab lists the skipped pairs |
| ADR shows "-", MA or candle cells stay grey | The price history is still loading. Wait a few seconds; open a chart of the symbol if it lasts |
| Cannot trade: Algo Trading is disabled in the terminal | Turn on the Algo Trading button in the toolbar |
| Cannot trade: 'Allow Algo Trading' is off in the EA settings | Open the EA properties (F7), Common tab, tick Allow Algo Trading |
| Cannot trade: a basket close is in progress | The basket TP / SL or CLOSE ALL is closing positions. Wait until the status shows "all positions closed" |
| ... lot 0.00 is below the minimum 0.01 | The "Lot per order" input is smaller than the broker minimum for that symbol |
| ... not enough free margin (need X) | Lower the lot or close positions |
| ... failed: 10018 ... (or another code) | The trade server refused the order or the close (10018 = market closed). The Experts log has the full message |
| Demo: "Dashboard Basket Demo runs on demo accounts only." | The demo was attached on a real account. Use a demo account, or buy the full version |
| Demo: "Dashboard Basket Demo expired on 2027.06.30. ..." | The demo period is over. The full version is on the MQL5 Market |


