Renko chart creator.
from renko import Renko
...
# Create new renko instance. Give brick size and list of close prices as parameters
rnk = Renko(1000, close)
rnk.create_renko()
print(rnk.bricks)
...
# The output will be like:
[
{'type': 'first', 'open': 10336.87, 'close': 10336.87}
{'type': 'up', 'open': 10336.87, 'close': 11084.87}
{'type': 'up', 'open': 11084.87, 'close': 11832.87}
{'type': 'up', 'open': 11832.87, 'close': 12580.87}
{'type': 'up', 'open': 12580.87, 'close': 13328.87}
{'type': 'up', 'open': 13328.87, 'close': 14076.87}
{'type': 'up', 'open': 14076.87, 'close': 14824.87}
{'type': 'up', 'open': 14824.87, 'close': 15572.87}
{'type': 'up', 'open': 15572.87, 'close': 16320.87, 'low': 14818.3}
{'type': 'up', 'open': 16320.87, 'close': 17068.87}
{'type': 'up', 'open': 17068.87, 'close': 17816.87}
{'type': 'up', 'open': 17816.87, 'close': 18564.87}
{'type': 'up', 'open': 18564.87, 'close': 19312.87, 'low': 17139.52}
{'type': 'up', 'open': 19312.87, 'close': 20060.87, 'low': 18036.53}
{'type': 'up', 'open': 20060.87, 'close': 20808.87}
...
...
...
{'type': 'up', 'open': 48484.87, 'close': 49232.87}
{'type': 'up', 'open': 49232.87, 'close': 49980.87}
{'type': 'up', 'open': 49980.87, 'close': 50728.87}
{'type': 'down', 'open': 49980.87, 'close': 49232.87, 'high': 50820.0}
{'type': 'down', 'open': 49232.87, 'close': 48484.87}
{'type': 'down', 'open': 48484.87, 'close': 47736.87}
{'type': 'down', 'open': 47736.87, 'close': 46988.87}
{'type': 'down', 'open': 46988.87, 'close': 46240.87}
{'type': 'down', 'open': 46240.87, 'close': 45492.87, 'high': 47722.65}
{'type': 'down', 'open': 45492.87, 'close': 44744.87}
{'type': 'down', 'open': 44744.87, 'close': 43996.87}
{'type': 'down', 'open': 43996.87, 'close': 43248.87}
{'type': 'down', 'open': 43248.87, 'close': 42500.87}
{'type': 'down', 'open': 42500.87, 'close': 41752.87}
{'type': 'up', 'open': 42500.87, 'close': 43248.87, 'low': 41679.74}
{'type': 'down', 'open': 42500.87, 'close': 41752.87}
{'type': 'down', 'open': 41752.87, 'close': 41004.87}
{'type': 'down', 'open': 41004.87, 'close': 40256.87}
]
from renko import Renko
...
# If you use it live in your strategies, pass the current price to check_new_price() function.
# If new price change is big enough to create a new birck or bricks,
# the bricks list will be updated accordingly.
rnk = Renko(1000, close)
rnk.create_renko()
print(rnk.bricks)
...
rnk.check_new_price(100000)
print("Bricks after new price added-------------")
print(rnk.bricks)
from renko import Renko
...
# You can plot the bricks as follows.
rnk = Renko(1000, close)
rnk.create_renko()
rnk.draw_chart()
...
Run the following to install:
pip install renko