zipline-live / zipline

Zipline-Live, a Pythonic Algorithmic Trading Library
http://www.zipline-live.io/
Apache License 2.0
397 stars 65 forks source link

Robinhood integration #43

Open starforever opened 7 years ago

starforever commented 7 years ago

Dear Zipline Maintainers,

Is there any plan to support live trading on Robinhood? Any ideas on the difficulty of implementing this on top of the current code base?

Sincerely, Peichao

tibkiss commented 7 years ago

Hi Peichao,

Robinhood is a logical next step as brokerage support for us, but as of now no-one has volunteered to pick this work item up.

I cannot assess the difficulty of integration as I haven't seen the RH API yet. All that needs to be done is a class which implements Broker abstract class's methods: https://github.com/zipline-live/zipline/blob/master/zipline/gens/brokers/broker.py

You can take a look how we're implementing those for IB in here: https://github.com/zipline-live/zipline/blob/master/zipline/gens/brokers/ib_broker.py

bdowling commented 7 years ago

I've been poking at the API and tweaking the module over here https://github.com/Jamonek/Robinhood that should make this effort fairly straightforward..

I will likely take a stab at this as I've been wanting this even before quantopian pulled out the welcome mat on us. They had enough outages in live trading and general website availability that I figured I would want more control and redundancies when my algo is running.

tibkiss commented 7 years ago

@bdowling : Good catch! Feel free to assign this issue to yourself if you start working on it. Thanks for your contribution!

madderle commented 6 years ago

@bdowling have you worked on integrating Robinhood yet?

madderle commented 6 years ago

@tibkiss can you elaborate more on if a new rh_broker.py file is created, how does it get instantiated?

tibkiss commented 6 years ago

@madderle: It is instantiated here: https://github.com/zipline-live/zipline/blob/master/zipline/__main__.py#L287

Please note that @rigoorozco has get this very close to completion: https://github.com/zipline-live/zipline/pull/79 Unfortunately the underlying lib needs further massaging.

Feel free to join our slack channel (available at contacts page in https://zipline-live.io) for more quick turnaround.

bdowling commented 6 years ago

I was doing some work on the Robinhood module before circling back to this. I also tried to look at #79, but it appears @rigoorozco has abandoned that PR and removed his commits entirely. Would be nice to collaborate on this if you already have something @rigoorozco ...

rigoorozco commented 6 years ago

@bdowling there is now a zipline-live fork for the Robinhood API made by Jamonek. I made a pull request to with some changes that @tibkiss requested, which still need to be reviewed. I am working on adding the Robinhood broker class with the modified Robinhood API. I should have them done soon

arnav-gudibande commented 6 years ago

@rigoorozco I'm interested in implementing this feature and happy to help. What is the status of rh_broker and is it available anywhere yet?

rigoorozco commented 6 years ago

It still needs some work. I have a fork on my account with the additions I’ve made. I'd love to get someone else's eyes on it

rigoorozco commented 6 years ago

@arnav-gudibande all these changes use my fork of the Robinhood API