Author

Topic: Need help making a crypto trader using machine learning. (Read 273 times)

newbie
Activity: 1
Merit: 0
Hi Keninishna,
i registered today an account on bitcointalk.org after reading your post on ZhengyaoJiang PGPortfolio. After my course on machine learning, I'm studying his approach and python code. My first goal is to improve my understanding on current code and fine tuning the hyper-parameters. After this step i would like to try to design a live connection to an exchange for sell or buy assets, respecting the built agent policy and continuing to improve-it.
I read much documents on real trading and I realized this a very complex task for coding, timing and liquidity issues but i think an improve could be obtained sharing ideas and knowledge. You seemed focused on PGPortfolio. Are you still?

Willy
hero member
Activity: 556
Merit: 500
I found this paper "A Deep Reinforcement Learning Framework for the Financial Portfolio Management Problem" https://arxiv.org/pdf/1706.10059.pdf

The original source code for the project can be found here https://github.com/ZhengyaoJiang/PGPortfolio

I know some python and have watched a course on machine learning on coursera. I can run the project and back tests show some impressive returns like 26 btc from 1btc over 2 years. The paper claims to have some 4 fold return in a month and a half. 4 fold return in hypothetical tests is great and all but I want to create a auto trader for poloniex. There are a couple things that need to be implemented and ironed out first.

  • The poloniex API just has public access to download price tracker data, should be easy enough to implement the private API to make trades and check balances as there is already code available online. The only other thing is implementing the trading strategy.
  • The math involved assumes there is no market slippage and does not take into account market moves with large amounts of money. This is a problem because the algorithm just calculates its own profit and uses that for training. So I need help feeding the portfolio value from poloniex directly back into the algorithm while its doing rolling training.
  • Supposedly rolling training works, but there is no live trading mode so that needs to be implemented. Rolling training will need to be modified to take in the actual portfolio value on poloniex.
  • I think the configured fee is set to 0.025% per trade (I could be wrong on this) I don't know if the algorithm accounts for lateral moves like say ETH to ZEC isn't a straight trade it would have to from ETH to BTC and then BTC to ZEC. it could be as simply just doubling the fee value.
  • The algorithm just picks the top 11 coins with the most trade volume to ensure liquidity and reduce market slippage. Coins come and go and I don't think there is anything in the code to handle investments in old coins.

I can set up a fork on github and start working on this and everyone else can contribute. I'm not a full time software developer though so I am still fairly newb to this. If we can get this to work though there are profits to be made for sure.
Jump to: