How to Install and Use IaTraderPro Bot

Follow the step-by-step guide below to get the bot running on your Quotex account in less than 10 minutes.

Works on Quotex and IQ Option, on both demo and real accounts, through community APIs (pyquotex and iqoptionapi) with no affiliation to either broker. Deriv also works, through its official Options API; Olymp Trade has basic support. The steps below use Quotex as the example.

1. System Requirements

Before you start, make sure you have everything:

Windows (10 or 11)
Python 3.12+
Modern browser
Quotex account (free)

2. Install Python

Go to python.org/downloads and download the latest version (3.12 or higher).

IMPORTANT: during installation, check "Add Python to PATH". Without this, the bot won't work.

To verify the installation, open Command Prompt (CMD) and type:

C:\> python --version # Should return: Python 3.12.x (or higher)

3. Extract the Bot

After receiving the file IaTraderProBot.zip via email:

  1. Extract the ZIP to a simple folder, no accents or spaces. Example: C:\IaTraderProBot
  2. Inside the folder you will see: bot.py, painel.py, config_bot.ini, instalar.bat, iniciar_painel.bat, and more.

4. Install Dependencies (first time only)

Double-click instalar.bat and wait. It will:

  1. Create a Python virtual environment (.venv)
  2. Install all required libraries (Streamlit, pandas, httpx, websockets, etc.)
  3. Configure Streamlit (skip email registration)

When "Installation completed successfully!" appears, you're ready.

5. Launch the Panel

Double-click iniciar_painel.bat. The web panel will open automatically in your browser at http://localhost:8501.

6. Configure the Bot

In the Streamlit panel (sidebar), configure:

6.1 β€” Quotex Login

  1. Enter your Quotex email and password
  2. Click "Save login"

On IQ Option the bot also runs on demo and real accounts; connection details are on the IQ Option API page. The panel labels are in Portuguese, so the original label is shown in brackets below.

6.2 β€” General Settings

  1. Account type (Tipo de conta): demo (default) or real
  2. Pairs/Assets (Pares/Ativos): choose up to 3 pairs (e.g. EURUSD_otc, GBPUSD_otc, XAUUSD_otc). Prefer real, non-OTC pairs: in the site's study no strategy beat ~50% on OTC.
  3. Period (PerΓ­odo): timeframe in seconds (60 = 1 minute)
  4. Stake: a fixed amount (e.g. 5) or a percentage of the balance (e.g. 1%)
  5. Minimum payout (Payout mΓ­nimo): the bot only trades an asset whose payout is above this value (default: 80%)

6.3 β€” Risk Management

  1. Pause after X losses (Pausar apΓ³s X perdas): after X losses in a row the bot takes a break (cooldown)
  2. Cooldown: length of the break in minutes (default: 15)
  3. Martingale: yes/no. If enabled, you set the multiplier (default: 2.2x) and the maximum number of martingale steps
  4. Daily stop loss (Stop Loss diΓ‘rio): the maximum loss for the day; the bot stops when it is reached
  5. Daily stop win (Stop Win diΓ‘rio): the profit target at which the bot stops for the day
  6. Max trades: maximum number of trades per session

What martingale really costs: with a stake of 5, multiplier 2.2 and a maximum of 2 steps, one sequence bets 5 β†’ 11 β†’ 24.2. If all three lose, that single signal costs 40.2 β€” more than 8 times the base stake. Martingale does not change the probability of winning, it only makes the bets bigger (full analysis). Start with it off (nao).

7. Operate

  1. Click "Save configuration"
  2. At the top of the page, click "Iniciar" (Start)
  3. Check "Auto refresh" to watch the bot trading live
  4. The dashboard shows: balance, PnL, win rate, trades, chart, asset status

You can pause at any time, change settings and restart without closing the panel.

How to read your demo results

Running "a few days on demo" is not about how many trades you won today. Every payout has a minimum win rate below which you lose money in the long run: break-even win rate = 1 / (1 + payout).

PayoutBreak-even win rate
70%58.8%
80%55.6%
85%54.1%
90%52.6%

Average result per trade, as a fraction of the stake = p Γ— payout βˆ’ (1 βˆ’ p), where p is your win rate. Example with an 85% payout, a stake of 5 and 100 trades:

  • 57% win rate: 0.57 Γ— 0.85 βˆ’ 0.43 = +0.0545 per unit staked β†’ about +27 over 100 trades.
  • 50% win rate (what OTC pairs gave in the site's study): 0.425 βˆ’ 0.50 = βˆ’0.075 β†’ about βˆ’37.5.
  • 48% win rate (typical of trend strategies on M1): 0.408 βˆ’ 0.52 = βˆ’0.112 β†’ about βˆ’56.

Do not draw conclusions before at least 150 trades β€” the site's study discards smaller samples too. Compare your win rate with the break-even for your payout, and only consider a small real stake if it stays above that line. No bot guarantees profit. Full demo routine: demo account guide.

8. Operation Modes

The bot has two modes for deciding when to trade:

🎯 Individual Mode individual

The first strategy that fires a signal trades. Fast and aggressive.

Checks each enabled strategy in order. If the first one (e.g. Strong Trend) finds a signal, it trades immediately without checking the others.

πŸ—³οΈ Majority Mode maioria

Only trades when the majority of strategies agree on the same direction. More conservative.

Every enabled strategy "votes" (CALL or PUT). The bot only trades if the votes reach the minimum (default: half + 1). E.g. 5 active strategies β†’ at least 3 must agree.

Majority mode only helps when the voting strategies measure different things. In the site's 13-strategy study, CCI, Z-Score and Stochastic reversal mostly said the same thing as Bollinger β€” three such votes are really one opinion counted three times.

9. The 13 Strategies β€” How They Work and How to Adjust

Each strategy analyzes asset candles and decides between CALL (up), PUT (down) or no signal. All parameters below are adjustable from the panel. In config_bot.ini a strategy is listed by its code name (the tag on each card). Before enabling anything, read the test results at the end of this section: five of these strategies lost money on M1 in the site's study.

1. Strong Trend tendencia_forte

Identifies trends with 3 aligned exponential moving averages + RSI + ADX.

CALL: fast EMA > mid EMA > slow EMA, price above the slow EMA, ADX > minimum, price touched the fast EMA (pullback), bullish candle, RSI rising between 45–75.
PUT: fast EMA < mid EMA < slow EMA, price below, strong ADX, touch of the fast EMA, bearish candle, RSI falling between 25–55.
Adjustable parameters:
ema_fast = fast EMA (default: 9, range: 2–60)
ema_mid = mid EMA (default: 21, range: 3–100)
ema_slow = slow EMA (default: 50, range: 5–200)

2. Pullback pullback

Trades the price pullback toward the fast average inside a trend.

CALL: fast EMA > slow EMA, price above the slow EMA, strong ADX, price touched the fast EMA, bullish candle, RSI rising between 40–75.
PUT: fast EMA < slow EMA, price below, strong ADX, touch of the fast EMA, bearish candle, RSI falling between 25–60.
Parameters:
ema_fast = fast EMA (default: 9)
ema_slow = slow EMA (default: 21)

3. RSI + Moving Averages rsimm

Simple moving average crossover confirmed by RSI.

CALL: fast SMA crosses above the slow SMA (golden cross) + RSI > 50.
PUT: fast SMA crosses below the slow SMA (death cross) + RSI < 50.
Parameters:
sma_fast = fast SMA (default: 9)
sma_slow = slow SMA (default: 21)

4. Triple Confirmation tripla

EMAs + RSI + Stochastic β€” three confirmations before a signal.

CALL: Price > fast EMA > slow EMA, RSI > 50, Stochastic %K crosses above %D with %D < 30 (oversold zone).
PUT: Price < fast EMA < slow EMA, RSI < 50, %K crosses below %D with %D > 70 (overbought zone).
Parameters:
ema_fast = fast EMA (default: 20)
ema_slow = slow EMA (default: 50)
rsi = RSI period (default: 7)

5. MACD Cross macd

Classic crossover of the MACD line and its signal line.

CALL: MACD line crosses above the signal line (bullish momentum).
PUT: MACD line crosses below the signal line (bearish momentum).
Parameters:
fast = fast MACD (default: 12)
slow = slow MACD (default: 26)
signal = signal line (default: 9)

6. Bollinger + RSI bollinger

Trades at the edges of the Bollinger Bands with RSI confirmation.

CALL: Price touches or breaks the lower band + RSI below the buy level (oversold).
PUT: Price touches or breaks the upper band + RSI above the sell level (overbought).
Parameters:
period = period (default: 20)
mult = standard deviations (default: 2.0, range: 1.0–4.0)
rsi_buy = buy when RSI is below (default: 35)
rsi_sell = sell when RSI is above (default: 65)

7. SuperTrend + MACD supertrend

SuperTrend flip confirmed by the MACD histogram.

CALL: SuperTrend flips from bearish to bullish (resistance becomes support) + positive MACD histogram.
PUT: SuperTrend flips from bullish to bearish + negative MACD histogram.
Parameters:
atr = ATR period (default: 10, range: 2–50)
factor = multiplier (default: 3.0, range: 1.0–6.0)

8. Ichimoku ichimoku

Tenkan/Kijun crossover from the Ichimoku Kinko Hyo system, confirmed by the cloud.

CALL: Tenkan crosses above Kijun + price above both Spans (above the cloud).
PUT: Tenkan crosses below Kijun + price below both Spans (below the cloud).
Parameters:
tenkan = Tenkan/conversion line (default: 9, range: 2–60)
kijun = Kijun/base line (default: 26, range: 5–120)
span_b = Senkou Span B (default: 52, range: 10–200)

9. RSI Reversal rsi_rev

Trades reversals from the RSI extreme zones (overbought/oversold).

CALL: RSI crosses below the oversold level (e.g. drops below 30 β†’ upward reversal expected).
PUT: RSI crosses above the overbought level (e.g. rises above 70 β†’ downward reversal expected).
Parameters:
rsi = RSI period (default: 14, range: 2–50)
oversold = oversold level (default: 30, range: 5–45)
overbought = overbought level (default: 70, range: 55–95)

10. Double Reversal reversao_dupla

Bollinger + RSI with a stricter trigger: it only enters when two independent signals agree on the same closed candle.

CALL: the candle closes below the lower Bollinger band (20-period mean βˆ’ 2 standard deviations) and RSI(14), which was below 30, crosses back above 30 on that same candle.
PUT: the candle closes above the upper band and RSI(14), which was above 70, crosses back below 70.
How to enable: tick it in the panel or add reversao_dupla to estrategias. The difference from card 6 is the RSI turn: an RSI of 22 that keeps falling is not a signal. Worked example and per-pair numbers: Double Reversal strategy.

11. Exhaustion + Band exaustao_bb

Fades an explosive candle that ends outside the band β€” the climax of a burst of orders.

CALL: on the same closed candle: range β‰₯ 2Γ— the previous ATR(14), body β‰₯ 60% of the range, and a bearish candle closing below the lower Bollinger band.
PUT: the same three conditions with a bullish candle closing above the upper band.
How to enable: tick it in the panel or add exaustao_bb to estrategias. It fires on different candles from Double Reversal, so the two complement each other. Details: Exhaustion + Band strategy.

12. CCI Reversal

Mean-reversion bet with the Commodity Channel Index: when CCI reaches an extreme, the bot bets on price returning toward its average.

CALL: CCI at the low extreme (price stretched below its average).
PUT: CCI at the high extreme (price stretched above its average).
Settings: switched on and adjusted in the panel; this guide does not document a separate config_bot.ini key for it. In the study it mostly repeated what Bollinger already says.

13. Z-Score

Measures how many standard deviations the close is from its moving average and treats a large deviation as a stretch likely to revert.

CALL: strongly negative Z-Score (close far below the average).
PUT: strongly positive Z-Score (close far above the average).
Settings: switched on and adjusted in the panel; no separate config_bot.ini key is documented here. Same family as Bollinger and CCI, so it adds little as an extra vote next to them.

Which strategies to enable β€” what the site's tests found

The site tested all 13 strategies on 45+ days of real M1 candles (8 forex pairs, Deriv data feed), split into train, test and a "fresh" window that no tuning ever saw, keeping only results with n β‰₯ 150 signals. Out-of-sample results:

StrategyOut-of-sample win rateVerdict / how to use it
Double Reversal (reversao_dupla)~57–61%Approved β€” best in the catalog
Exhaustion + Band (exaustao_bb)~57–59%Approved β€” fires on different candles from Double Reversal
RSI Reversal (rsi_rev)~52–55%Borderline β€” auxiliary vote only
CCI Reversal / Z-Score (and Stochastic reversal)~52–56%Redundant with Bollinger β€” same idea
Bollinger + RSI / RSI + MA / Triple Confirmation~51–55%Weak on their own
Strong Trend / Pullback / MACD Cross / SuperTrend / Ichimoku~46–49%Failed on M1 β€” they lose money

Honest recommendation for the default 60-second period (M1):

  • Leave the five failed strategies off on M1: Strong Trend, Pullback, MACD Cross, SuperTrend and Ichimoku measured ~46–49%, below break-even at any payout. The 1-minute real-forex chart tends to revert to the mean during market hours, which is exactly what trend rules bet against.
  • Start from the two approved ones: estrategias = reversao_dupla,exaustao_bb in individual mode. Because they fire on different candles, running both roughly doubles the number of signals without lowering accuracy.
  • Use RSI Reversal, CCI Reversal and Z-Score only as extra votes in majority mode β€” never as the only trigger.
  • Avoid OTC pairs: on _otc pairs nothing beat ~50% (is OTC random?).
  • Prefer a 2-candle expiry: on Exhaustion + Band it measured 60.8% vs 57.5% with 1 candle β€” about 3 percentage points for free.
  • Pick the hours: the edge concentrated between 09:00–10:59 and 18:00–23:59 (UTCβˆ’3); Friday was the worst day (hours study). USD/JPY and GBP/JPY kept their edge in the fresh window (details).

Nothing came close to 70% (why), and even 57–61% only pays when it sits above the break-even for your payout β€” 55.6% at 80%. Full methodology: tested strategies.

10. Customize with AI (ChatGPT, Claude, etc.)

The code is pure open-source Python. You can use any AI to create new strategies or modify existing ones. Example prompts:

# Example 1: Add a new strategy "I want to add a strategy based on Stochastic + Volume. When %K crosses above %D in the 20 zone and volume is above average, enter CALL. Here is the bot.py code." # Example 2: Change parameters "Change the bollinger strategy to use period 30 instead of 20, and buy RSI below 25 instead of 35." # Example 3: New filter "Add a time filter to bot.py: only trade from 09:00 to 17:00 UTC. Outside those hours the bot should wait." # Example 4: Risk management "Change the bot to stop trading an asset once it has 3 losses in a row, and only resume the next day."

Copy the contents of bot.py (or a part of it), paste it into ChatGPT/Claude and describe the change in plain language. The AI returns the modified code. You don't need to know how to code, but take two precautions: keep a copy of the original bot.py before replacing it, and always run modified code on demo first. A rule written by an AI is a new, untested strategy β€” judge it with the same break-even and 150-trade yardstick as any other.

11. File Structure

IaTraderProBot/ β”œβ”€β”€ bot.py # Bot engine β€” strategies + Quotex connection β”œβ”€β”€ painel.py # Streamlit web panel (visual interface) β”œβ”€β”€ config_bot.ini # Settings (edit in the panel or in Notepad) β”œβ”€β”€ instalar.bat # Install script (run the first time) β”œβ”€β”€ iniciar_painel.bat # Starts the panel in the browser β”œβ”€β”€ buscar_ativos.py # Fetches the live asset list from Quotex β”œβ”€β”€ requirements.txt # Python dependencies β”œβ”€β”€ logo.svg # Bot logo β”œβ”€β”€ .streamlit/ # Streamlit visual settings └── pyquotex/ # Quotex connection library (unofficial API)

The bot also ships with simular_csv.py, a backtest script that runs a strategy over candles stored in a CSV file and reports how it would have done on that past data. It is the way to repeat the site's study on your own pairs before risking anything.

12. Reference: config_bot.ini

All settings are saved in this file. You can edit from the panel or directly in Notepad:

; IaTraderPro Bot settings [bot] conta = demo ; demo or real pares = EURUSD_otc ; up to 3, comma-separated periodo = 60 ; timeframe in seconds stake_tipo = fixo ; fixo (fixed) or percent stake_pct = 1.0 ; % of balance (if stake_tipo = percent) stake_fixo = 5 ; fixed amount (if stake_tipo = fixo) estrategias = tendencia_forte,pullback ; enabled strategies params = {} ; parameters (JSON, editable in the panel) modo = individual ; individual or maioria (majority) maioria_min = 0 ; 0 = automatic (half + 1) payout_min = 80 ; minimum payout % to trade adx_min = 25 ; minimum ADX for Strong Trend and Pullback pausar_apos_perdas = 0 ; 0 = disabled cooldown_min = 15 ; pause length in minutes martingale = nao ; sim (yes) or nao (no) martingale_max = 2 ; maximum martingale steps martingale_fator = 2.2 ; multiplier max_trades = 5000 ; trade limit stop_loss_dia = ; e.g. -50 (empty = no limit) stop_win_dia = ; e.g. 100 (empty = no limit)

Three things to change before using this example file as-is:

  • pares = EURUSD_otc only shows the format. OTC measured ~50% in the study, so write real pairs instead.
  • estrategias = tendencia_forte,pullback lists two strategies that failed the M1 test (~46–49%). A reversal-based example: estrategias = reversao_dupla,exaustao_bb.
  • An empty stop_loss_dia means no daily loss limit at all. Fill it in even on demo (e.g. -50) so you practise the same discipline you will need on a real account.

13. Daily Target Plan β€” built-in bankroll management

Beyond simple stop loss/win, the bot ships a level-based daily target system (unique to IaTraderPro): you set a base stake (e.g. $50) and a step (e.g. +$10). At level 1 the bot trades $50 and stops for the day after winning 3x the stake ($150) or losing 5x. It only levels up on days that hit the target β€” a losing day repeats the level. A level cap (e.g. 10) bounds your maximum risk.

LevelStake (base 50, step +10)Daily target (3x)Daily stop (5x)
150150250
260180300
590270450
10 (cap)140420700

The table makes the risk visible: at level 10 one bad day can cost 700, so choose the base stake and the level cap so that this amount stays a small fraction of your balance.

In simulations on real data, target 3x with stop 5x was the most consistent of 25 tested configurations. Being honest: bankroll management is discipline, not statistical edge β€” it controls how much you risk, not the signal's accuracy. Enable it in the panel's "Risk" tab.

14. Troubleshooting

ProblemLikely causeWhat to do
python --version in CMD says "'python' is not recognized…""Add Python to PATH" was not ticked during installationRun the Python installer again, tick that option, then open a new CMD window
instalar.bat stops with an errorSpaces or accented characters in the folder path, or the internet dropped during the installMove the folder to a simple path such as C:\IaTraderProBot and run it again
The panel does not open in the browserThe browser did not open by itself, or the CMD window was closedRun iniciar_painel.bat again and open http://localhost:8501 yourself
The bot is running but no trades happenAsset payout below payout_min; not enough votes in majority mode; cooldown activeCheck the asset status in the panel. Reversal strategies do not fire every minute β€” long waits are normal
Login failsWrong e-mail/password, or the broker changed its site (unofficial API)Log in to the broker directly in the browser first; then download the latest bot version
The bot stopped by itself mid-daystop_loss_dia, stop_win_dia, max_trades or the daily target was reachedThat is by design. Raising the limit and restarting the same day is the mistake those limits exist to prevent

Checklist before a real account

  • At least 150 demo trades, with a win rate above the break-even for your payout.
  • Real (non-OTC) pairs, and none of the strategies that failed the M1 test enabled.
  • stop_loss_dia filled in and martingale off (or you know the full loss of one martingale sequence).
  • The daily stop at your highest daily-target level is a small share of your balance.
  • You have checked the rules where you live: binary options legality by country.

See also: Quotex API in Python Β· IQ Option API Β· Deriv bot Β· FAQ

Warning: This bot uses unofficial APIs. Binary options involve high risk of loss. Always start on DEMO. No strategy guarantees profit. Real account use is at your own risk.

🎁 Get the free trading bot (Quotex, Deriv & IQ Option API)

Open-source bot + ready API code. Edit it by chatting with ChatGPT/Claude β€” no coding. Free, no spam.