Nav: (Display/Hide) - Home - About the Author / this page

Current Projects: Americana Engine (Game Engine Development)

Thursday, January 21, 2016

Robinhood Stock Trading


Still waiting, but no longer.

After hearing about Robinhood on a Reddit post in /r/investing back in December that allows you to trade stocks without commissions, I decide to sign up for it at the start of the year in order to get into more diversified stock trading without having to pay a lot from commissions.

What appears to be an easy entrance instead may turn out to be a high barrier to entry. Despite the official FAQ stating approval can take up to five business days, it was at least two weeks after signing up and stuck with an 'account pending' (with the buy button on stocks visible but disabled) before allowing me to proceed. It doesn't appear to be limited to myself, though, as a post shows.

I was eventually approved and was able to start trading at the beginning of February. Initially, trading was an issue as my tablet died and I didn't have a smartphone* available to get on; however I was later able to do so via an Android emulator (such as Bluestacks).

I obtained API access later that year and built my own program to execute trades when away from a mobile device and to focus on implementing the things I wanted to see. As of August 2016 over half of my trades are done off-app.

I opened an account on another brokerage generally as a backup, which got approved quickly, so I'll keep that one mainly for some other trades (such as leaps and options) and for other things RH does not yet support.

Would like to see:

  • Updates the GUI based on actual current time, not the time on the Android device
  • Show max shares to buy on order window instead of tap
  • Buy up to X stocks over a period of time during the day below a set price
  • Tap / confirm = quick market order (in the official app to a certain extent)
  • Toggle line indicators on placed orders and/or breakeven points
  • Notify at certain price (other than +/- 10%)
  • Quick Stock Lists (useful if watching a lot of stocks)
  • Trailing stops
  • IOC, FOK, or pegged orders

Notes:

  • The time between stock price updates is 5 seconds (and 15 during the order entry window). It takes at least 10 to buy or sell shares.
  • Place any market orders made off trading hours as day orders so you don't get unexpected trades; market orders have a 5% collar and they're not 'immediate or cancel' (at least at the time of writing) so they won't trigger if the stock difference between closing and next day's opening is too high (ex. NUGT Feb 11, 2016, +20.7% increase from previous close), but they aren't cancelled either, so the queued order might trigger unexpectedly at some point in the future if the stock slumps. You also cannot tell what price the market order was made at (nor does the email) should it still remain active so you'll need to write it down somewhere.
  • It seems like Twitter mentions to @AskRobinhood or through other social media channels are more likely to go through than standard emails if there is no reply from the latter.
  • After account approval, it is strongly recommended you delete all messages related to any information you attached and sent to them via email, particularly since they now exist as web links and not attachments.
  • You are more likely to get High Volatility Protection warnings when you start a day with a low amount of cash and your portfolio mainly consists of high volatility and/or penny stocks.

Saturday, January 9, 2016

Americana Engine - Into 2016


"Glad to see it's still alive and kicking."

For months I have considered on exiting the game development market; I have previously made future plans on the basis that after my departure from AD, the game was well on its way with a new Kickstarter and a beta out at the end of 2015, with my efforts gone uncredited and my game engine completely unnoticed since its switch over to Unity.

It appears this was not the case, however, and I have chosen to resume production after looking through this month's statistics.

My career as a software developer may very well depend on completion of the game engine (as well as an optional game) and released for others to see; as many companies take working projects into their hiring considerations, I have determined that it is my responsibility to bring usable quality updates on a timely basis if I want even a remote chance at getting hired.

Upcoming in 2016: (not a complete list)

  • Porting to HTML5 - to make it more accessible to web and mobile devices, and also to serve as a means for others to present small demos without requiring the base game.
  • Possible open-source release on GitHub
  • Customizable GUI (what kind of information you can get, however, will be limited)
  • Project Website adjustments

Tuesday, January 5, 2016

Superhuman, Chess Pieces, and Binary Code

The first performance of the Jan 4 premiere of Superhuman has Zoe Wheeler reciting from memory the sequence of 60 chess pieces (30 white, 30 black). Only there are two types of pieces to memorize: a King (White) and Queen (Black). A 0 or a 1. Binary Code.

Although there are over 1 trillion combinations (more like 118 quadrillion) that figure need not apply here.

Memorizing 60 1's and 0's might be a difficult task, but there are ways to cut down on the memorization significantly.

There are various methods of memorizing groups of binary code, including hexadecimal (grouping four 1/0s together to get 0-9, a-f), and base64 (grouping six 1/0s together to produce a letter or a number). I use the latter since I can memorize a string of 10 letters/numbers easier than other options.

Base 64 Summary:

A set of six 0 and 1's (64 possible combinations) are grouped together to form a single letter or number (A-Z, a-z, 0-9). Two more characters are used for the binary values of 63 and 64 since the total number of letters and numbers = 26+26+10 = 62. There aren't a string of seven black/white pieces in a row, so they can be skipped for the purposes of memorizing this.

Solving:

The order the pieces are laid out are as follows (Treating a white piece as a 1, with the piece closest to her as the first):

100101 001001 010010 001001 010100 111010 110110 001010 111001 101101

This can be encoded to base 64 as follows:

37 9 18 9 24 58 54 10 57 45
kIRIT 51J4s

Now it's a matter of memorizing this string, converting it back to binary, and reciting it... in front of a live audience.