here's my latest project i'm working on. it's called Premia and it's going to have the ability to trade stocks and crypto using tdameritrade and coinbase pro accounts respectively. i could potentially implement other brokerage api's since the data processing is abstracted. these are just the services i use. i plan on implementing a series of "trading algorithms" and portfolio allocation techniques to address certain trading and investment styles. (generating alpha, chasing gamma, lowering vol, risk parity, etc)
so far, it's fairly early on in development. i have the ability to view account details, look at quotes for instruments, option chains for assets, some basic ordering functionality, but it's still very very alpha and not ready for practical deployment in a portfolio.
recently i got a websocket client set up for streaming live quotes through tdameritrade using boost.beast in a multi-threaded asynchronous implementation. i'm still ironing out the bugs but i'll likely end up using the same design pattern for a coinbase pro websocket session. there's just some slight differences between the response types from tdameritrade which has my websocket client bias towards that login process.
here are some screenshots and here's the
source code

