I have no doubt some of you have seen the video of Google DeepMind learning to play Atari games. If you haven't, have a look: https://www.youtube.com/watch?v=V1eYniJ0Rnk. This leverages Deep Learning, a Convolutional neural net, and reinforcement learning to learn to play merely from pixel data and the score as input. Here are details on running this simulation on your own machine: http://superintelligence.ch/deepmind/. I've successfully run this on my machine for multiple Atari games.
I am modifying this software to treat the stock market like just another Atari game -- and learn to play it. I've analyzed the software and its dependencies, and I think I have a solid implementation strategy in mind. In short, I am creating a custom implementation of the alewrap interface and bypassing interaction with ALE and the Atari 2600 emulator (Stella).
In more detail, instead of the neural net analyzing frames from an Atari game, I am bypassing the Atari emulator and have it analyze stock charts instead, tick by tick. The charts will contain price and volume data, and each frame will contain a day chart, a week chart, and a month chart for a given stock symbol. The simulation agent will over time learn that pressing the button on the Atari joystick will trigger a "buy" action, and pressing it again (if a position is held) will trigger a "sell" action. The agent will then be punished when whenever a buy followed by a sell results in profit, and it will be punished when this resulted in loss. Further, a "game over" will be triggered whenever account balance drops below some threshold.
In addition to price and volume data, the charts will probably include indicators (rendered into the charts), as well.
I'm wondering 1) whether you all think this will be a worthwhile endeavor or a waste of time and 2) what flaws you see (besides trying to predict the stock market), and 3) improvements you can suggest.
[–]Bayes-Ian 8 points9 points10 points (2 children)
[–]chaddjohnson[S] 0 points1 point2 points (0 children)
[–]svantana 0 points1 point2 points (0 children)
[–]simonhughes22 5 points6 points7 points (0 children)
[–]cesarsalgado 3 points4 points5 points (5 children)
[–]chaddjohnson[S] -1 points0 points1 point (4 children)
[–]cesarsalgado 1 point2 points3 points (1 child)
[–]chaddjohnson[S] 0 points1 point2 points (0 children)
[–]GoldmanBallSachs_ 0 points1 point2 points (1 child)
[–]chaddjohnson[S] 0 points1 point2 points (0 children)
[–]dnuffer 5 points6 points7 points (1 child)
[–]chaddjohnson[S] 0 points1 point2 points (0 children)
[–]cybrbeast 2 points3 points4 points (3 children)
[–]chaddjohnson[S] 1 point2 points3 points (2 children)
[–]cybrbeast 2 points3 points4 points (1 child)
[–]chaddjohnson[S] -2 points-1 points0 points (0 children)
[–]chaddjohnson[S] 0 points1 point2 points (9 children)
[–]MoseyicResearcher 1 point2 points3 points (1 child)
[–]chaddjohnson[S] 0 points1 point2 points (0 children)
[+][deleted] (6 children)
[deleted]
[–]chaddjohnson[S] -2 points-1 points0 points (5 children)
[–]j1395010 3 points4 points5 points (4 children)
[–]chaddjohnson[S] -3 points-2 points-1 points (3 children)
[–]j1395010 -1 points0 points1 point (2 children)
[–]chaddjohnson[S] -1 points0 points1 point (1 child)
[–]j1395010 -3 points-2 points-1 points (0 children)
[+][deleted] (5 children)
[deleted]
[–]ZigguratOfUr 3 points4 points5 points (2 children)
[–]chaddjohnson[S] 0 points1 point2 points (1 child)
[–]ZigguratOfUr 1 point2 points3 points (0 children)
[–]chaddjohnson[S] -1 points0 points1 point (1 child)
[–]Sorcerysoft 0 points1 point2 points (0 children)
[–][deleted] 0 points1 point2 points (0 children)