ejtraderIQ
ejtraderIQ copied to clipboard
Best IQ option API for digital and turbo for trading and history
IQoption API
ToDo
- [x] Account Balance
- [x] trade buy and sell "Digital & Turbo"
- [x] Check Win
- [x] check open Markets
- [x] remaning time
- [x] real time quote
- [x] ohlc dataframe history
- [x] payout
- [x] get server time
- [x] get powerbar - market depth
MHI Martingale Bot Example
You can find the bot under the examples directory in our repository here.
Installation
Tested on python 3.7 to 3.9
pip install ejtraderIQ -U
Or install from source
git clone https://github.com/ejtraderLabs/ejtraderIQ
cd ejtraderIQ
python setup.py install
Import librarys
from ejtraderIQ import IQOption
Login to IQ Options
# account type DEMO OR REAL
api = IQOption('email','passowrd','DEMO')
symbol = "EURUSD"
timeframe= "M1"
Real time quote
Subscribe quote stream
api.subscribe(symbol,timeframe)
symbols quote
quote = api.quote()
print(quote)
# Output
open high low close volume
date
2022-08-22 22:39:00 0.994245 0.994415 0.994215 0.994365 120
Unsubscribe quote stream
api.unsubscribe(symbol,timeframe)
# Output
"Unsubscribed from EURUSD"
Symbols History Dataframe
candles = 1000 # max history 1000 periods
history = api.history(symbol,timeframe,candles)
print(quote)
# Output
open high low close volume
date
2022-08-17 12:20:00 1.016235 1.016565 1.015925 1.016005 1225
2022-08-17 12:25:00 1.016015 1.016265 1.015585 1.016195 947
2022-08-17 12:30:00 1.016015 1.016905 1.014535 1.014635 3280
2022-08-17 12:35:00 1.014635 1.015415 1.014605 1.015315 1646
2022-08-17 12:40:00 1.015305 1.016015 1.015305 1.015985 1685
... ... ... ... ... ...
2022-08-22 23:15:00 0.993955 0.994035 0.993435 0.993475 779
2022-08-22 23:20:00 0.993475 0.993635 0.993365 0.993405 547
2022-08-22 23:25:00 0.993405 0.993585 0.993335 0.993455 577
2022-08-22 23:30:00 0.993475 0.993495 0.993305 0.993435 519
2022-08-22 23:35:00 0.993415 0.993655 0.993375 0.993635 527
[1000 rows x 5 columns]
Trade Position
volume = 1 # position size $1
# Buy Digital
api.buy(volume,symbol,timeframe)
# Buy turbo
api.buy(volume,symbol,timeframe,turbo=True)
# Sell Digital
api.sell(volume,symbol,timeframe)
# Sell turbo
api.sell(volume,symbol,timeframe,turbo=True)
Trade & Account Fuctions
check Payout
payout = api.payout(symbol)
print(("Payout: {:.2f}%".format(payout)))
Check balance
balance = api.balance()
print(f'Balance : {balance}')
Remaning tim to trade
expire = api.remaning(timeframe)
print(f'Remaning : {expire}')
Market depth
# start streaming
api.powerbar_start(symbol)
# get live data SELL side %
api.powerbar_get(symbol)
# get all history from the time start streaming
api.powerbar_get_all()
# stop streaming
api.powerbar_stop(symbol)
Server time
st = api.server_time()
st.year
st.day
st.hour
st.minute
st.second
Check Win
api.checkwin(id)
# example check win Digital
id = api.buy(volume,symbol,timeframe)
win = api.checkwin(id)
if win > 0:
print(("WIN"+'\n'))
elif win < 0:
print(("LOSS"+'\n'))
else:
print(('Tied '+'\n'))
# example check win Turbo
id = api.buy(volume,symbol,timeframe,turbo=True)
win = api.checkwin(id,turbo=True)
if win > 0:
print(("WIN"+'\n'))
elif win < 0:
print(("LOSS"+'\n'))
else:
print(('Tied '+'\n'))
Check markets state
markets = api.isOpen()
print(markets)
# Output
Asset Type Status
0 USDZAR-OTC binary close
1 EURUSD binary close
2 GBPJPY-OTC binary close
3 BTCUSD binary close
4 USDCHF binary close
.. ... ... ...
371 BNBUSD-L crypto open
372 VETUSD-L crypto open
373 ETCUSD crypto open
374 DOGEUSD-L crypto open
375 ETCUSD-L crypto open
[376 rows x 3 columns]