Git Product home page Git Product logo

iqoption-bot's Introduction

iqoption-bot [beta]

vendabaixo

iqoption bot is a simple ml realtime in training using LogisticRegression

it use bollinger bands to determinate if buy or sell

This code is initially based on Saulo Catharino's code

thanks for iqoption api to Lu-Yi-Hsun

thanks for this renko library and this brick size Optimization

NOTE:

  • it not buy or sell on iqoption yet you must pay attencion to chart and do it manually
  • Do tests on test account
  • Give a star if it helps you

Summary

Contribute with Community

Do fork
do your changes
do pull request with an explanation to be easy to understand why and what you have changed
Be happy !!!

Please send me suggestions ... feedbacks are welcome

PYTHON VERSION

I'm using anaconda with python 3.7

How to start

I'm using anaconda with python 3 to reduce time installing things

conda create -n myenviqoption
conda activate myenviqoption
pip install -r requirements.txt
pip install -U git+git://github.com/Lu-Yi-Hsun/iqoptionapi.git

rename userdata-sample.py to userdata.py

than:

python main.py -a EURUSD
Or
python main.py -a USDJPY -i 15 -f '-015'
-a : It is the asset you wanna trade
-i : the interval you wanna use [1,5,10,15,30,60,120,300,600,900,1800,3600,7200,14400,28800,43200,86400,604800,2592000,'all']
-f : file sufix name

You can also use renko to better analyse tendence

python historicalrenko.py -a USDJPY -i 15

# or streaming
## this second command is under test and it may generate wrong stream

python streamrenko.py -a USDJPY -i 15

chart examples

vendabaixo

discover for assets

just change the number to identify which asset is

https://iqoption.com/traderoom/asset/1244?type=crypto&noAlternative=1

Save in database

To save iqoption data to rethinkdb:

  • install rethinkdb
  • create database called 'iqoption'
  • create table 'candles'
  • run fallowing code:
python rethinkdb.py -a EURUSD -i 5

TODO

  • Graphical interface web or desktop
  • Test other models
    • logistic regression with lbfgs
    • test different parameter to SVC
    • way to classify moviments
  • Optimize training with error function
  • Create backtest to improve tests
  • Use clean code to improve code
  • analise backtrader
  • Add function to load trained model
  • create public database to store historical data( It will need donation to server manteinance )
  • Create pipeline to deploy in a server
  • unit tests

Tips

when spread is big and asset has small changes it doesn't compensate to start bull or sell

spread < 0,30 change 0.08 %

Best strategy: buy once when there are signals and if there is many signals close just do one one buy with profit 1%

It is high risk to use just in tranament account

if you have any strategy let us know in an issue with prefix: [STRATEGY]

IMPORTANT: Don't be naivy, don't use it in real account

Support this project

I'll be really happy if you support this project.

Contribute here

It will be used to:

  • create server to historical data
  • improve code
  • create web interface
  • develop new features

DATA

New test open 3 terminals

python assets.py -a USDJPY -i 5
python assets.py -a USDJPY -i 15 -f '-015'
python assets.py -a USDJPY -i 30 -f '-30'
python assets.py -a USDJPY -i 60 -f '-60'

when boilinger hit at same time buy/sell in at least 2 charts

good spread is less then 0.020

take a profit 1%

iqoption-bot's People

Contributors

rrfaria avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.