Financial internship.

This position is ideal for someone looking to gain exposure to quantitative “quant” trading.  Waystone Capital is seeking an Intern with knowledge of the financial markets, python (or PHP) development skills, and aspiring to become a data scientist.   The Intern will work on projects that provide broad exposure to quant trading and the hedge fund trade.  This is an internship and an understanding of the financial markets is required.

Responsibilities

  1. Assist with the build out of the firm’s back-test environment;
  2. Analyze large sums of back test data and run numerous linear regression models as requested by the Partner / Lead Developer;
  3. Working with the Partner / Lead Developer to analyze and onboard new asset to the firm’s algorithm trading platform, and thereafter optimizing the algorithm for each new asset class. 
  4. Work with the team to explore using the algorithm with public securities.

Minimum Requirements

  1. Finance background.
  2. Python or PHP coding experience is the primary requirement for this position. 
  3. Ability to work with others including peer code review and focusing on project deadlines and goals.
  4. Ability to work confidently and passionately until the desired outcome is achieved.
  5. Solid verbal and written communication skills.
  6. At times the intern will work with no guidance and will have to solve the problems on their own; the applicant must be an independent thinker. 
  7. The internship shall be remote.

Education and Experience

  1. Preferably working towards a Bachelor in Finance or Business Administration.
  2. Experience with developing in Python and other object-oriented programming languages.

Industry

  1. Investment Management 


Algorithm – Financial Trading FAQ

I get a lot of questions about Financial Trading algos, building black boxes, which is the best trading API, the list goes on. Not to sound to pretentious, but I try to help people, even when I possible, but I don’t always have time. So I’m just post some of the questions here in random order.

what is the preferred language for algorithmic trading? I wanted to use Java but I am not sure if that is the best language.

I used to use PHP. Now I use Python. I think Python is a good reasonable solution. If you are on Wall Street doing High Frequency trading you would probably use C# or C++ as it is supposedly the fastest.


Also, have you heard of finnhub.io and alpaca? If yes, which one in your opinion has a better API? I trade Futures, stocks and options. I don’t think either of those can do what I need.


Do you build trading algorithms for futures, stocks, options?

Based on my blog post I think the answer would be yes.

Hey, I read your blog on which api is the best and I have been doing research on TD Ameritrade for 2 days now and I have not made much progress. I am new to this and also was wondering If Interactive brokers is free to use for stocks and options?

You can start paper trading, this would allow you access to API paper trading account without putting money into the account. I think you have to $2000k to get really started. From my recollection, (but not perfect) but you can open an account, with no money and use the API and paper trading account. When you are ready to get started, I think 2000k is the min and they charge $10 service fee every month.

I would not recommend TD ameritrade and I think you have validated with your research. IB is for the most part free, well documented, python SDK and plenty of support groups. (Stocks, Options, Futures)

I need to up date this but here is starting point… https://github.com/chadhumphrey/stock_options_api

Hi I read a comment in which you mentioned that you wrote your own python code for options trading. That is currently my goal. I am very new to programming and am seeking some help in setting up my own backtesting environment. Would you mind helping me a little? I have access to historical stock data for as well as historical options data. All my options strategies are based on the underlying price and time. My stock data for one symbol is in one CSV file, while I have hundreds of CSV file each for a different option strike with different strike prices. How can I translate my simple option strategies into a python backtesting environment? For example, once XXXX reaches $XXX, buy a call that is +XX dollars ITM that expires in XX days?
I’ve been fairly successful in stock,options and futures trading and have done manual backtests looking at historical charts and such but python backtesting will bring me to a whole new level at a much faster rate.
Any tips or suggestions will be really appreciated.

I have written 3 algos (options, stocks, futures) For stock and futures I do use backtesting data. As for options I’m far to lazy and cheap to find option historical data. So I have developed my own strategy and write my code. Then I just paper test it on Interactive Brokers. Basically, forward testings and since my options algo can find trades in thousands of stocks I feel like I’m getting some good data to analyze. http://thebennyshow.us-east-1.elasticbeanstalk.com/spreads It’s still a work in progress, but this algo ran while I was at my day job. I would argue that with options you can save a lot of time just forward testing. Hope that helps…
not sure if you saw this as well… https://www.strategic-options.com/insight/2020/05/17/update-2020-the-best-and-worst-stock-futures-and-option-trading-apis/
Sorry I can’t write your algorithm for you, but will happy to do so if you want to pay me. 🙂

Many years ago I could have gone the NinjaTrader route, but I was to cheap. So I learned to code. Now I don’t have any problems that I can’t fix. 😉

Hello,
Interested in developing algorithms that will ingest data/analyze and make trades with options. Are these services something you provide?
Regards…….

Update 2020: The Best and Worst Stock, Futures and Option Trading APIs

My original post is still here, I get a lot questions, so I thought I would update with my current findings.

When picking an API the $64,000 question is  does Charles Schwab (TD Ameritrade) or Morgan Stanley (Etrade) really want to deal with building an out API for their customers once the mergers happen? Meaning is there enough revenue generated from API trading to keep 10 annoying coders with at least 2 dev ops bros who believe they know everything and of course an annoying project manager.  I personally believe these firms kind of see the API as dead weight, with only a few customers and the trend is more getting day traders like Robinhood has?  Keep in mind brokerages generally don’t have the trade fees they used to have.

Td Ameritrade

The TD Ameritrade API is courtesy not a guaranteed feature. (This was told to me by a customer service rep) They don’t necessarily provide support if you send them a question at [email protected] If it’s an easy question they might respond, if it’s a difficult one then they won’t. Reddit / stackoverflow is too fond of TD API. Otherwise their documentation generally is terrible. I currently only use TD API for live option quotes, because I like they can give the entire option chain so I can analyze it on “my  local”. It generally is the worst API that I have ever used. Since it’s more of a courtesy I I  On the flip side I Think or Swim is awesome.

Etrade API

I have poked around the new eTrade API, it appear to be very easy to use. I think they are using standard REST API methods etc. Meaning they are probably using a framework such as api-platform to build it. From what little I can see it seems like it is rather too easy to use and well documented.

Interactive Brokers

Interactive Brokers is what I trade options and futures with, their code has a learning curve, it is not terribly nice and sometimes you just have to wonder about serious WTF. Once you get past that and consider it is really the only game in town, it works just fine. I’m trading futures 24 hours a day, with no problems. IB really focuses on their API and has a dedicated staff, support etc.

etc…

I have not had time to test out Alpaca. I don’t get paid to write these reviews (I wish I did) So since I’m a practitioner, I don’t have an incentive to test out Alpaca or any other API at this time. Although IB is a pain in the butt, it’s working just fine for me.

I ran across this website the other day… Any wants to join forces or pay to front run Robinhood, shoot me an email.  This is some low hanging fruit.

Simple guide to build TWS API on AWS EC2 instance

Currently, I’m running 2 different Interactive Brokers Trader Work Station (TWS), my own propriety python trading algorithm on an AWS EC2 instance. This is very simple instructions to get you one started, it is not the cure all.

  1. Build an AWS EC2 instance / 18.04 Ubuntu
  2. SSH into the instance
  3. Insert the following code as required

Cover the basics:

Sudo mkdir code && 
cd code && 
sudo apt-get update -y &&
sudo apt-get clean -y &&
sudo apt-get autoremove -y && 
sudo apt-get install mysql-server -y && 
sudo apt-get update -y &&
sudo apt install python3-pip -y && pip3 install pandas matplotlib seaborn plotly pymysql sklearn 

The are two ways to VNC into your EC2 instance. The RealVNC method is little more complicated and it is an enterprise solution.

  1. https://help.realvnc.com/hc/en-us/articles/360003474572-How-do-I-get-started-with-VNC-Connect-on-Linux-
  2. xhost +local:Name_of_your_computer
  3. sudo apt install ./VNC-Server-6.6.0-Linux-x64.deb
  4. tar -xzf vncsetup-helper.tar.gz
  5. sudo ./vncsetup.sh
  6. sudo reboot

If you want a simple VNC method follow this bloggers instructions.

Interactive Brokers

  1. follow instructions: http://interactivebrokers.github.io/
  2. sudu unzip twsapi_macunix.979.01.zip -d /home/user/
  3. cd IBJts/source/pythonclient/
  4. sudo apt-get install python3-setuptools && sudo python3 setup.py install
  5. Download TWS https://www.interactivebrokers.com/en/index.php?f=16040 follow instructions on the screen. (if you want to use IB gateway, which is not as sexy but works fine you can get it here)
  6. git clone your repo

The Best and Worst Stock and Option Trading APIs

Update: 2020 The Best and Worst Stock, Futures and Option Trading APIs

In my quest to program and build my own trading system, I have discovered a lot of conflicting information on the “Internets” about trading APIs and stock and option price quotes.  In the past, I posted on HN news about some of my findings, only to get some great new insights. One thing I can’t find is a simple location for all trading APIs and I have stumble along some rabbit holes when dealing with the APIs, trying to see what works and what is no longer supported. With that said, I will will be launching a General information Git Repository, to hopefully provide links to SDK for trading API and price quote APIs, Etc. I will obviously do pull requests, but my opinions and finding on certain trading systems will be detailed below and on this site.

Continue reading “The Best and Worst Stock and Option Trading APIs”

How to Scrape and Parse Stock Earnings Reports

For years I looked for a simple way to get earnings reports from Wall St. It seems they would change their earning reports on a regular basis and the dates would be inconsistent. Then one day when I wasn’t paying attention, BAM. Earnings report and the stock would take off or crash on the numbers and I would be left holding the bag or missed the boat. You get the point.

Continue reading “How to Scrape and Parse Stock Earnings Reports”