Synced with GitHub ยท updated today

Free MT4 & MT5 expert advisors

1,977 free, open-source expert advisors for MetaTrader 4 and 5, each linked to its source code on GitHub.

New EAs by RSS
195 EAs match Clear filters

SynerPro EA

by t2an1s
1 stars

SynerPro EA is a MetaTrader 5 robot designed for managing prop firm challenges. It implements the Synergy Strategy, utilizing Heikin Ashi market bias and session-based filters to execute trades. The system features a master-slave communication architecture via shared files for coordinating between instances. Risk manag

MT5 Trading robot Trend following
Updated 5 weeks ago None stated GitHub repository of SynerPro EA

Quantum Alpha MT5 ONNX

by yole-shop-oficial
1 stars

This expert advisor for MetaTrader 5 combines traditional quantitative strategies with machine learning via the ONNX runtime. It features multiple trading modes including Order Blocks, market structure analysis, and a hybrid AI strategy using neural network predictions trained in PyTorch. The system incorporates compre

MT5 Trading robot SMC / ICT / price actionAI / machine learningTrend following High risk
Updated 5 weeks ago None stated GitHub repository of Quantum Alpha MT5 ONNX
1 stars

This expert advisor for MetaTrader 5 implements a technical strategy combining MACD, Stochastic Oscillator, and Parabolic SAR indicators. Designed primarily for the five-minute timeframe, it enters trades based on momentum and trend alignment. The system features robust risk controls, including stop loss and take profi

MT5 Trading robot Indicator crossoverTrend followingMean reversion

US30 Systematic EA

by raihaan0308-png
1 stars

This expert advisor implements an automated trend-following strategy for the US30 index on the MetaTrader 5 platform. It identifies entries using a combination of dual Exponential Moving Averages for trend direction, RSI for momentum filtering, and specific candle patterns. Risk is managed through a percentage-based lo

MT5 Trading robot Trend followingIndicator crossover
Updated 5 weeks ago None stated GitHub repository of US30 Systematic EA

EMA Cross EA

by momomosun
1 stars

This Expert Advisor for MetaTrader 5 implements a trend-following strategy based on the crossover of 15-period and 60-period Exponential Moving Averages. It employs a continuous reversal logic to maintain market presence, switching between long and short positions as trends shift. Risk management includes ATR-based dyn

MT5 Trading robot Trend followingIndicator crossover
Updated 6 weeks ago MIT GitHub repository of EMA Cross EA

Smart Trader 7CAS

by andersonclement
1 stars

Smart Trader 7CAS is an automated trading robot for MetaTrader 5 designed specifically for commodities including Gold, Silver, and Oil. It implements seven distinct trading modules or scenarios covering trend following, scalping, range trading, breakouts, Smart Money Concepts, reversals, and Fibonacci levels. The syste

MT5 Trading robot Multi-strategySMC / ICT / price actionTrend following High risk
Updated 6 weeks ago None stated GitHub repository of Smart Trader 7CAS
1 stars

This MetaTrader 5 collection provides five Expert Advisors focused on Ichimoku Chikou-Kijun crossovers. The repository includes basic alert tools and automated robots that execute trades based on lagging span movements relative to the base line. Advanced variants incorporate ADX and DI filters, Kumo cloud confluence, a

MT5 Collection Indicator crossoverTrend following

Ichimoku Strategy Bot

by Mrben509
1 stars

This MetaTrader 5 expert advisor utilizes the Ichimoku Kinko Hyo indicator system integrated with a machine learning boosting model to execute trades. It analyzes technical factors including RSI, ATR, Z-scores, and price slopes to determine a success probability before opening positions. The robot features built-in ris

MT5 Trading robot Trend followingAI / machine learning
Updated 6 weeks ago None stated GitHub repository of Ichimoku Strategy Bot

Shake EA

by ziadoul25
1 stars

This trend-following expert advisor for MetaTrader 5 implements the SHAKE strategy to trade Bitcoin and Gold. It identifies entries by analyzing the alignment of three moving averages across three distinct timeframes, typically M1, M5, and M15. Positions are opened only when the fast, medium, and slow averages are sequ

MT5 Trading robot Trend followingIndicator crossover
Updated 6 weeks ago None stated GitHub repository of Shake EA
1 stars

This automated trading system for MetaTrader 5 utilizes machine learning models via the ONNX runtime to forecast currency trends. It implements an ensemble approach, combining predictions from Logistic Regression, Support Vector Machines, Random Forest, and XGBoost. The system operates in two primary modes: technical i

MT5 Trading robot AI / machine learningNewsTrend following

JBM EMA Gold Scalper

by goesbams
1 stars

JBM EMA Gold Scalper is an automated trading system for MetaTrader 5 designed specifically for gold on the one-minute timeframe. It utilizes an exponential moving average ribbon consisting of four periods to identify trend alignment and enters trades on price retracements. The expert advisor includes several filters, s

MT5 Trading robot ScalpingTrend following
Updated 6 weeks ago None stated GitHub repository of JBM EMA Gold Scalper

AI XAU M1 Scalper

by shedrigarish
1 stars

This MetaTrader 5 expert advisor is designed for scalping XAU/USD on the one-minute timeframe. It utilizes a multi-indicator approach combined with Smart Money Concepts, including order blocks, fair value gaps, and liquidity sweeps. The robot calculates a confidence score for entries using EMA trend analysis, RSI, and

MT5 Trading robot ScalpingSMC / ICT / price actionTrend following
Updated 7 weeks ago None stated GitHub repository of AI XAU M1 Scalper

Panda Engine EA

by gian101310
1 stars

Panda Engine EA is a multi-strategy robot for MetaTrader 5 that incorporates four distinct trading modules: BB, Intra, Pullback, and Intra Master. It executes trades based on technical structures, swing points, and a confluence scoring system. The expert advisor includes an exposure guard to manage risk by limiting tot

MT5 Collection Multi-strategyTrend followingMean reversion
Updated 7 weeks ago None stated GitHub repository of Panda Engine EA

Break EA

by vitizelamabuza-ops
1 stars

Break EA is a multi-symbol trend-following robot for MetaTrader 5. It identifies market entries using a combination of EMA 50, MACD crossovers, and RSI filters, while ADX monitors trend strength. The advisor includes advanced trade management features such as ATR-based stop loss and take profit, trailing stops, break-e

MT5 Trading robot Trend followingIndicator crossover
Updated 7 weeks ago None stated GitHub repository of Break EA

Garxy Fenx Lite

by VelSepia
1 stars

Garxy Fenx Lite is a trading framework for MetaTrader 5 that uses a multi-engine architecture to analyze market conditions and execute trades. The robot evaluates volatility, trend, and range data to calculate confidence scores for strategy and risk before opening positions. It manages trades using either fixed point t

MT5 Trading robot Trend followingMean reversionMulti-strategy
Updated 7 weeks ago None stated GitHub repository of Garxy Fenx Lite
1 stars

This automated expert advisor for MetaTrader 4 and 5 trades forex using a multi-timeframe technical strategy. It identifies H1 trends with moving averages and Ichimoku clouds while timing M5 entries via MACD and RSI convergence. The system incorporates robust risk controls including equity-based lot sizing, daily loss

MT4MT5 Trading robot Trend followingIndicator crossoverMulti-strategy High risk
Updated 7 weeks ago None stated GitHub repository of EA PM Portfolio Management

MTF Confluence Trend

by aretephi
1 stars

MTF Confluence Trend is a MetaTrader 5 expert advisor designed for trend-following across multiple timeframes. It initiates trades when the local Supertrend indicator aligns with a higher timeframe trend, further filtered by ADX strength and optional volume conditions. The robot includes risk management features such a

MT5 Trading robot Trend followingMulti-strategy
Updated 8 weeks ago None stated GitHub repository of MTF Confluence Trend

XAUUSD MTF Scalper AI Mode

by umarhusain075-hub
1 stars

This MetaTrader 5 expert advisor is a multi-timeframe scalping robot optimized for gold trading. It utilizes a higher-timeframe bias filter combined with lower-timeframe entry triggers based on a weighted scoring system. The strategy integrates Exponential Moving Averages, ADX for trend strength, Stochastic RSI, and VW

MT5 Trading robot Trend followingScalpingMulti-strategy
Updated 2 months ago None stated GitHub repository of XAUUSD MTF Scalper AI Mode

Bullish Continuation MT5

by andrewkorot
1 stars

This MetaTrader 5 expert advisor executes a long-only bullish continuation strategy. It identifies trade entries by combining specific candlestick patterns, such as bullish engulfing and harami, with trend-following filters. For a buy order to trigger, the price must close above both the 50 and 200 exponential moving a

MT5 Trading robot Trend followingIndicator crossover
Updated 2 months ago None stated GitHub repository of Bullish Continuation MT5
1 stars

This collection for MetaTrader 5 provides a diverse range of algorithmic trading strategies and utility scripts. The featured Precision Sniper EA utilizes indicator resonance, combining EMA, RSI, and ATR for entry signals. It incorporates sophisticated risk controls including three-stage partial profit taking, structur

MT5 Collection Trend followingBreakoutMulti-strategy
Updated 2 months ago None stated GitHub repository of Precision Sniper EA Library

Smart SL

by tthanhvu002sgu
1 stars

Smart SL is a MetaTrader 5 risk management tool that calculates optimal exit levels using a multi-factor scoring system. It evaluates market structure via swing detection, ATR-based volatility, and multi-timeframe confluence. The tool offers three modes: real, virtual, and a hybrid setup with safety offsets. It include

MT5 Collection Trend followingBreakoutMean reversion
Updated 2 months ago None stated GitHub repository of Smart SL

Gold Liquidity Scalper

by amirmohamadkazemi0933
1 stars

This MetaTrader 4 expert advisor is designed for XAUUSD scalping on the M1 timeframe. It switches logic based on market regimes: in trending markets, it follows the higher timeframe direction using EMA reversals and breakout entries, while in ranging markets, it executes trades based on liquidity sweeps at price extrem

MT4 Trading robot ScalpingSMC / ICT / price actionTrend following
Updated 2 months ago None stated GitHub repository of Gold Liquidity Scalper

Elite Specialist V11

by mafabatho0470-code
1 stars

This MetaTrader 5 expert advisor automates an institutional-style breakout-retest strategy. It identifies structural high and low points within a defined lookback window and waits for a breakout followed by a confirmed pullback to the broken level. The EA utilizes a 50 and 200 EMA trend filter and ADX for momentum veri

MT5 Trading robot BreakoutTrend followingSMC / ICT / price action
Updated 2 months ago None stated GitHub repository of Elite Specialist V11

Phoelix Receiver EA

by Phoelix-Platforms
1 stars

The Phoelix Receiver EA is an automated execution bridge for MetaTrader 5 that translates signals from TradingView into live market positions via a Telegram API pipeline. It functions as a low-latency connector, polling a specific Telegram channel for trade instructions including entry, exit, and lot sizing. The adviso

MT5 Copier & bridge Trend following
1 stars

This MetaTrader 5 expert advisor implements a volatility-driven grid strategy primarily focused on Gold. It populates a range of buy-stop and sell-stop limit orders at specified intervals around the market price. The system transitions into a trend-following mode once multiple orders are triggered in one direction, app

MT5 Trading robot GridBreakoutTrend following High risk
Updated 2 months ago None stated GitHub repository of Volatility Grid Bot

XM Gold AI Trader

by fuquan728-lang
1 stars

XM Gold AI Trader is an automated expert advisor for MetaTrader 5 that leverages a Python-based backend powered by DeepSeek AI. The system processes market data using indicators such as RSI, MACD, and Bollinger Bands to generate signals, which are transmitted via WebSocket or TCP sockets. It includes robust risk contro

MT5 Collection AI / machine learningTrend followingMean reversion High risk
Updated 2 months ago None stated GitHub repository of XM Gold AI Trader

Acteck QA5

by Evgeniy-makdak
1 stars

Acteck QA5 is an analytical tool for MetaTrader 5 that performs quantitative analysis on historical price movements to identify trend segments and potential reversal zones. It utilizes a user-defined volatility filter in pips to categorize waves and calculates the mathematical probability of price exhaustion based on h

MT5 Utility Trend followingMean reversion
Updated 2 months ago None stated GitHub repository of Acteck QA5
1 stars

This MetaTrader 5 repository hosts a collection of over 90 expert advisors generated by StrategyQuant X. The robots are designed for the M15 timeframe across diverse markets including forex majors, gold, and oil. Entry signals are derived from technical indicators like Ichimoku, VWAP, and Moving Averages. Each EA featu

MT5 Collection Trend followingIndicator crossoverMartingale High risk
Updated 2 months ago None stated GitHub repository of Quant V1 Strategy Collection
1 stars

This MetaTrader 5 expert advisor executes trades based on daily classic pivot points combined with the engulfing candlestick pattern on the M15 timeframe. It employs a 200-period Exponential Moving Average as a trend filter to refine entries. Risk management includes a martingale lot scaling system that increases posit

MT5 Trading robot Trend followingMartingale High risk
Updated 2 months ago None stated GitHub repository of Pivot Points Engulfing EA

PASR Modular

by sakuninfinix-svg
1 stars

PASR Modular is a MetaTrader 5 expert advisor designed for automated trading using a modular framework. It employs technical indicators like ATR for dynamic stop losses and take profits, alongside ADX for trend filtering. The system integrates machine learning components for trade inference and multi-timeframe analysis

MT5 Trading robot AI / machine learningTrend followingMulti-strategy
Updated 2 months ago None stated GitHub repository of PASR Modular

Gann Bot

by avangardistic
1 stars

This automated expert advisor for MetaTrader 5 executes trades based on Gann Box analysis, identifying entries at dynamic support and resistance levels. It features advanced risk controls including hard stop loss, take profit, and a trailing stop. The EA provides four capital management modes: fixed lot size, risk perc

MT5 Trading robot Mean reversionTrend followingMartingale High risk
Updated 2 months ago None stated GitHub repository of Gann Bot

XAU Confluence EA

by sapsyhere01-max
1 stars

XAU Confluence EA is an automated trading robot for MetaTrader 5, specifically tailored for the gold market. The system executes trades based on a triple-confluence strategy that integrates an exponential moving average ribbon for trend direction, Donchian Channel breakouts with volume confirmation, and a proxy-CVD ind

MT5 Trading robot Trend followingBreakoutIndicator crossover
Updated 2 months ago None stated GitHub repository of XAU Confluence EA

SP2L

by farsosta-jpg
1 stars

This MetaTrader 5 expert advisor executes trades based on price action and momentum patterns, specifically identifying strong candles relative to their recent average range. The logic incorporates Fair Value Gap (FVG) detection and moving averages to filter entries. It includes automated risk management with percentage

MT5 Trading robot SMC / ICT / price actionTrend following
Updated 3 months ago None stated GitHub repository of SP2L
1 stars

This repository contains a collection of ten trend-following Expert Advisors for the MetaTrader 5 platform. Each robot implements a different technical strategy, utilizing indicators such as Bollinger Bands and moving averages with various smoothing methods like ParMA and SMMA. The EAs identify entry points based on ov

MT5 Collection Trend followingIndicator crossover

Ustec Trend Runner

by RicardoBarato
1 stars

This MetaTrader 5 Expert Advisor is a research-oriented tool designed for systematic trading of USTEC/Nasdaq CFDs. It employs a trend-following logic using Exponential Moving Average crossovers and ADX filters to identify entries on the M5 timeframe during specific trading sessions. Risk is managed through ATR-based dy

MT5 Trading robot Trend followingIndicator crossover
Updated 3 months ago Custom licence GitHub repository of Ustec Trend Runner

Gold Scalper Bot

by bigthreeatone
1 stars

This MetaTrader 5 expert advisor is designed for aggressive trading on XAUUSD, focusing on the 5-minute and 15-minute timeframes. It utilizes Fibonacci retracements and swing high/low breakouts to identify entries across three selectable modes: scalp, swing, and trend following. The system manages up to three positions

MT5 Trading robot ScalpingBreakoutTrend following High risk
Updated 3 months ago None stated GitHub repository of Gold Scalper Bot

Smart Trader Forex

by joseph8848
1 stars

Smart Trader Forex is an automated expert advisor for MetaTrader 5 that employs dual strategies for trend following and mean-reversion scalping. It monitors over 15 currency pairs simultaneously using a multi-symbol scanner and a signal quality filter. Risk management includes ATR-based stop losses, trailing stops, and

MT5 Trading robot Trend followingScalpingMean reversion

Options Trading Moving Average

by SankarSrinivasan1
1 stars

This MetaTrader 4 expert advisor implements a foundational trend-following strategy based on a 20-period Exponential Moving Average. It enters long positions when the market price trades above the average and short positions when it trades below. The code is designed as a template for users of the book Options Trading

MT4 Trading robot Indicator crossoverTrend following

Danichelson Expert Advisors

by DanichelsonHD
1 stars

This MetaTrader 5 collection features automated strategies including breakout, mean reversion, and gap-based systems. The primary breakout advisor utilizes a multi-factor weighting system to score potential trades based on ADX strength, ATR expansion, impulse candle size, and higher timeframe EMA alignment. Risk contro

MT5 Collection BreakoutMean reversionTrend following
Updated 3 months ago None stated GitHub repository of Danichelson Expert Advisors

Zbbot

by zbgerman
1 stars

This Expert Advisor for MetaTrader 5 implements trading logic based on Smart Money Concepts, specifically the ICT 2022 mentorship model. It automatically identifies market structures such as Fair Value Gaps, fractals, and rejection blocks across multiple timeframes to locate entries. The system includes a time-based fi

MT5 Trading robot SMC / ICT / price actionTrend followingMartingale High risk
Updated 3 months ago None stated GitHub repository of Zbbot

H4 EMA Pullback Next Level

by Mohamed-Kathree
1 stars

This Expert Advisor for MetaTrader 5 implements a trend-following strategy on the H4 timeframe by identifying pullbacks to the 50-period Exponential Moving Average. It utilizes the 200 EMA to define the primary trend and the 21 EMA to confirm momentum recovery after a pullback. The EA enters trades based on price rejec

MT5 Trading robot Trend followingMean reversion
Updated 3 months ago None stated GitHub repository of H4 EMA Pullback Next Level

Grid Retest

by khamminasomchanmavong
1 stars

This MetaTrader 5 expert advisor implements a grid-based trading strategy combined with an EMA trend filter. It enters positions based on price relation to a 50-period Exponential Moving Average. If a trend reverses while a basket is active, the EA initiates a dual-mode recovery by opening a new basket in the opposing

MT5 Trading robot GridTrend followingHedging High risk
Updated 3 months ago None stated GitHub repository of Grid Retest

MT5 AutoEA

by Asura-lab
1 stars

MT5 AutoEA is a multi-strategy trading robot for MetaTrader 5 that utilizes an ensemble approach to market participation. It incorporates over twenty modular strategies, including trend following, mean reversion, and breakouts, which can be toggled individually. The EA supports two execution modes: a portfolio mode for

MT5 Trading robot Multi-strategyTrend followingMean reversion
Updated 3 months ago None stated GitHub repository of MT5 AutoEA

Gartal Inc

by bsAmirHeydar
1 stars

Gartal Inc is a modular trading automation framework and strategy development template for MetaTrader 4. It provides a structured environment for testing various entry and exit logic, including Fair Value Gaps, moving average crossovers, and Donchian channels. The repository focuses on backtesting workflows, featuring

MT4 Framework & template SMC / ICT / price actionIndicator crossoverTrend following
Updated 3 months ago None stated GitHub repository of Gartal Inc

MoneyMaker EA Collection

by akshayboora342-cell
1 stars

This MetaTrader 5 collection features the Prime Quantum AI expert advisor alongside a Python-based FastAPI dashboard for strategy management. The primary robot utilizes a hybrid logic, combining traditional indicators like ADX and the Bill Williams Alligator with external artificial intelligence models for market analy

MT5 Collection AI / machine learningTrend followingGrid High risk
Updated 3 months ago Apache-2.0 GitHub repository of MoneyMaker EA Collection

Nasdaq Trading Bot Collection

by alejandrolunas7
1 stars

This repository features two MetaTrader 5 expert advisors specifically designed for Nasdaq indices. The first strategy utilizes a mean reversion approach based on the RSI-2 indicator on daily charts to identify oversold entries within a broader uptrend. The second strategy is a trend-following system for the M15 timefr

MT5 Collection Mean reversionTrend followingIndicator crossover
Updated 3 months ago None stated GitHub repository of Nasdaq Trading Bot Collection

Renko Trader

by Valenteeno
1 stars

This MetaTrader 5 expert advisor executes trades based on Renko chart patterns. It features an internal calculation engine that supports both fixed point-based brick sizes and dynamic ATR-based sizing. The system includes visual on-chart drawing of Renko bricks to provide a custom price perspective. Trade management is

MT5 Trading robot Trend followingBreakout
Updated 3 months ago Custom licence GitHub repository of Renko Trader

Advanced KT Trader

by Valenteeno
1 stars

Advanced KT Trader is a price action robot for MetaTrader 5 that specializes in trading the Kangaroo Tail candlestick pattern. It employs a sophisticated scoring system to filter entries based on tail-to-body ratios and candle positioning. The strategy integrates support and resistance zone confluence alongside 200 EMA

MT5 Trading robot SMC / ICT / price actionMean reversionTrend following
Updated 3 months ago Custom licence GitHub repository of Advanced KT Trader

Learn how to use expert advisors

Free, plain-English guides: find an EA, install it, set it up, test it and run it safely.

  1. 1Types of EAsRobots, trade managers, copiers and risk tools, and what each is for.
  2. 2Using this librarySearch, filters, badges and what our checks do and do not mean.
  3. 3Install an EA in MT4 or MT5Data folder, compile, attach to a chart and switch on algo trading.
  4. 4EA settings explainedLot size, stop-loss, magic number, max spread and trading hours.
  5. 5Backtest in the Strategy TesterModelling, spread, the report and the over-fitting trap.
  6. 6Choose a safe EAA checklist for the code, the logic, the evidence and the fit.
  7. 7Run an EA 24/7VPS, forward testing on demo and going live small.
  8. 8Open-source EAs on GitHubLicences, compiling in MetaEditor and editing inputs safely.
  9. 9Forex robots: an honest guideWhat automation can and cannot do for you.

About the EA Library

The ForexR EA Library collects open-source expert advisors for MetaTrader 4 and MetaTrader 5 that are published on GitHub. Each entry links to the original repository, so you always get the author's latest code, issues and licence straight from the source. Star counts, last updates and licences are synced from GitHub every day, and new repositories are added every week.

Every repository is checked automatically before it is listed: it must contain readable MQL source code for a real expert advisor, and repositories that ship executables, hide downloads behind archive passwords or show signs of bought stars are left out. The summaries and tags are written automatically from each repository's README and code. They describe what an EA does; they are not a recommendation, and nothing here is tested or endorsed by ForexR.

Trading with expert advisors is risky. Backtest any EA and run it on a demo account before you trust it with real money. CFDs and leveraged forex are complex instruments with a high risk of losing money rapidly.

EA Library FAQ

What is an expert advisor (EA)?

An expert advisor is a program that runs inside MetaTrader 4 or MetaTrader 5. It can open and close trades on its own, manage trades you opened (trailing stops, break-even, partial closes), protect the account, or connect MetaTrader to other tools such as Telegram or Python. EAs are written in MQL4 (MT4) or MQL5 (MT5).

Are the EAs in this library free?

Yes. Every EA listed here is published on GitHub with its source code, so you can read, download and compile it at no cost. Check each repository's licence before reusing the code in your own projects: some EAs state no licence at all.

Are these EAs safe to use?

ForexR lists only repositories with readable MQL source code and never hosts files. Repositories that ship executables, ask you to disable antivirus, hide downloads behind passwords or show signs of bought stars are left out automatically. That does not make any EA profitable or bug-free: read the code, backtest it in the Strategy Tester and run it on a demo account first.

How do I install an EA in MT4 or MT5?

Download the source from GitHub, open MetaTrader, choose File, then Open Data Folder, and copy the .mq4 (MT4) or .mq5 (MT5) file into MQL4/Experts or MQL5/Experts. Open it in MetaEditor and press Compile, then drag the EA from the Navigator onto a chart and allow algorithmic trading.

How does ForexR choose which EAs to list?

A crawler searches GitHub every week for MetaTrader repositories, reads their code and keeps those that contain a real expert advisor and pass the safety checks. Stars, updates and licences are refreshed from GitHub every day. Summaries are written automatically from each repository's README and code, so treat them as a guide and check the source.

What do "High risk", grid and martingale mean?

A grid EA opens a ladder of orders at fixed distances; a martingale EA increases the lot size after losses. Both can show smooth equity curves for a long time and then lose a large part of the account in one strong trend. EAs that use either are marked High risk, and you can hide them with the "Hide grid and martingale" filter.

Run EAs with a broker that supports MT4 and MT5

Compare regulated brokers by platform, spreads, minimum deposit and leverage.

Compare brokers