Create Your Own Automated Stock Trading Robot In EXCEL!
4.0 (269 ratings)
Course Ratings are calculated from individual students’ ratings and a variety of other signals, like age of rating and reliability, to ensure that they reflect course quality fairly and accurately.
1,968 students enrolled

Create Your Own Automated Stock Trading Robot In EXCEL!

Learn how to use Visual Basic in Excel to automate your trading!
4.0 (269 ratings)
Course Ratings are calculated from individual students’ ratings and a variety of other signals, like age of rating and reliability, to ensure that they reflect course quality fairly and accurately.
1,968 students enrolled
Created by Peter Titus
Last updated 10/2019
English [Auto]
Current price: $104.99 Original price: $149.99 Discount: 30% off
5 hours left at this price!
30-Day Money-Back Guarantee
This course includes
  • 4.5 hours on-demand video
  • 7 articles
  • 5 downloadable resources
  • Full lifetime access
  • Access on mobile and TV
  • Certificate of Completion
Training 5 or more people?

Get your team access to 4,000+ top Udemy courses anytime, anywhere.

Try Udemy for Business
What you'll learn
  • Be able to trade and generate extra income even while you're at work or away from the computer
  • Understand the basics of the Interactive Brokers Excel API
  • Learn how to build automation through sub procedures in Visual Basic
  • Be able to automate any spreadsheet task with VBA
  • Learn how to import data and do backtesting in Excel
  • Download your own copy of Ranger 1.0
  • Use Ranger1.0 to automate your own trading right away
  • Understand the code in Ranger 1.0 and be able to customize it to fit your own ideas
  • Add your own functions and algorithms to Ranger1.0
  • Build YOUR OWN automated trading system in Excel from scratch
  • You should already be familiar with Excel
  • Trading experience is useful, but not required
  • Computer, internet connection, Excel 2010 or newer, Microsoft Windows
  • You will need $10,000 to open a margin account and $5,000 to open an IRA account with Interactive brokers.

In this course you will learn how to build trading automation in Excel, the most popular spreadsheet software on the market. In Excel, there are no limits to what you can build! You are limited only by your imagination! The course is built around learning Visual Basic for applications (VBA) and we'll be examining a simplified version of the system I built for trading called Ranger1.0. We'll use this system as an example to show you how to build your own automation. Every student will be able to download a copy of Ranger1.0 for their own use. By the end of the course you will understand the code that runs Ranger1.0 and be able to customize it to fit your ideas. You will also be able to use what you've learned to build your own automated system from the ground up, if that's what you choose to do.

The focus of this course is on trading stocks. It is possible to trade futures, currencies, options, and bonds through Ranger1.0, but examples on how to trade these are not covered in detail. However, by the end of this course you will have enough knowledge in Visual Basic to be able to create your own custom automation to trade whatever you want however you want!

The sky is the limit! With excel you really can build just about anything you can imagine. This course will get you started using Visual Basic, even if you've never written any code before. You will learn how to automate the order life cycle, how to build timers, play sounds, record live data, do backtesting, and even how to build a decision making AI!

Finally, I will guide you through everything you need to know to set up an account with Interactive Brokers, how to set up the Excel API, and how to trade using a simulated "Paper" trading account. An Interactive Brokers account is required to receive live streaming data and to send orders, but even if you do not have an account, I will show you how to get historical data for excel that you can do backtesting on right away!

Who this course is for:
  • Anyone interested in learning the basics of automated trading in Excel
  • Anyone looking for ways to add automation to their trading routine
  • Anyone who wants to build an automated trading system in Excel
Course content
Expand all 46 lectures 04:45:28
+ Introduction to Automated Trading
5 lectures 13:43

Here we talk about what we want in an automated trading system and go over what Ranger1.0 is and what it does.

Preview 07:14

This is a live demo showing how the automated setup is activated and how the system handles the market open. Then I send a trade through my simulated trading account followed by an exit order. We also talk briefly about the live data recorder and the Log Data function.

Preview 04:51
Legal Stuff - Disclaimer
My Best Ideas

Ranger1.0 is an ideal system for trading breakouts from support and resistance ranges! If you are unfamiliar with the concepts of support, resistance, and breakouts, here are some web resources to get you acquainted.

Resources for those unfamiliar with support/resistance and breakouts
+ Using Visual Basic for Applications (VBA)
4 lectures 33:30

I show you how to open VBA and how to navigate the interface. Then I show you how to easily use and define variables and how to write sub procedures.

Visual Basic for Applications (VBA) basics

We go over how to write "if" statements, then how to add "and" and "or" to these statements to perform some simple example functions.

If and or statements

I show you how to record a macro and use code from it in your sub. We talk about how to write code to simply reference a cell by a row and a column number. I also show you how easy it is to generate a "yes - no" dialogue box.

Macros, cells, and dialogue boxes

Here we build a sample loop using the GoTo function and a counter.

+ Ranger 1.0 functionality
26 lectures 02:59:53

Download Ranger1.0 excel file here

Download Ranger1.0 here!
If you get the following error: Compile Error: Cannot Find Project or Library

I show you how to build a timer and where timers are used in Ranger1.0 as well as how to make a simple clock that ticks every second.

How to build a timer

Here we talk about how easy it is to schedule a task (or run any sub at any set time) using the application.ontime function.

How to schedule a task at a specific time

We go over how the alarm works, and how to play sounds through VBA. (sounds must be .wav files)

How to build an alarm and play sounds

I show you how the "clear worksheet" sub works and how to clear ranges of cells and change cell colors.

Clearing cells and ranges

When building an automated trading system, you can use the Auto_Open sub to run anything as soon as the workbook opens, and use the Worksheet_Calculate sub to run anything every time the worksheet calculates (such as every time a price changes)

Auto_Open and Worksheet_Calculate subs

Here we go over the various features of the Excel API.

Introduction to the Interactive Brokers Excel API

I show you how to request live market data in excel, using the Excel API and how to automate this task.

How to request live market data automatically

I go through how to set up the worksheets to get ready for trading manually, then I show you how to automate this entire process.

How to automate your daily setup tasks

Here we go over how to send orders manually through the Excel by entering the symbol and the trade data into the "Conditional Orders" worksheet.

How to send orders manually through Excel

Here we talk about why we need to add "island" as the primary exchange for certain nasdaq stocks and how to automatically detect a setup error.

Checking for set up errors automatically

I show you how the system can be designed to generate a trade that requires your final approval before being sent, and also how to send all trades automatically. We also go over how to tell if the order was "Submitted" or "Filled" and at what price and for how many shares.

How to design your system to run in automatic or manual mode

Here we go over how each stage of the order cycle is managed and how we keep track of which stage each trade is in.

Managing the order life cycle

Here we take a look at how the system checks for trades and stopouts, the code it uses to trigger orders, and how it can be set to send them automatically.

How to trigger orders and send them automatically

I show you the calculation I use (and how to customize it) to calculate the number of shares to buy so that you risk the same amount on every trade whether you are trading something with a wide (volatile) range, or something with a narrow range.

Smart position sizing

Here we go over how gains are calculated after we exit each trade, and how the smart position sizing calculation is used in calculating our "real" percentage gain or loss.

How gains are calculated (smart position sizing continued)

We go over the PTpaste sub and how it auto-inserts our price targets after a buy and stop price are entered.

How to insert price targets automatically

Here we go over the code that handles our exit order (take profits order)

Price targets

Here we talk about our stop and timeout code

How to automate stops

This lecture is on how to easily prevent subs (especially those that run multiple times per second) from conflicting with the Interactive Brokers subs that request market data or send orders.

Conflicting subs: how to prevent them

I show you how the "Force Exit" button puts the text "Timeout" into the nearest trade cell so you can quickly exit a trade manually if you want.

Manual Position Exit (Force Exit Button)

Here we go over how to close your open positions at a set time near the end of the day. Especially useful if you're day trading.

How to automatically close positions near the end of the day

Sometimes you may encounter a situation where you need to start the system from an "open position" state. This could be due to Interactive Brokers cancelling your order or if you entered a position manually from TWS or some other special situation. Here I show you how to make sure the system is set up properly to go forward from an "open position" state.

Overnight positions and special situations

I show you how the system logs data when you're done trading and pastes your gains or losses on the "Log" worksheet.

How to automatically log trading data

Here we go over how the system records live market data and how you can customize it.

How to record live data tick by tick
+ Extras
9 lectures 57:03

In this lecture I show you how to import historical data (intraday and yearly) using interactive brokers. Then I show you other sources of market data on the web you may find useful.

How to import data from Interactive Brokers or other sources

This lecture is about how to do backtesting in Excel. If you are doing a lot of backtesting, especially if you are using "standard" technical indicators, Excel is probably not the best software platform out there, but the advantage of Excel is you can backtest anything you can build an algorithm for. I built a sample backtester to show you how to do it and help you get started. The sample rules we tried here are already profitable on yahoo and apple. You can further optimize this system with your own ideas!

How to do backtesting in Excel

There are an enormous number of Excel workbook functions and you can use ANY of them in your own automated trading system. If you want the standard technical indicators too, there are add-ins you can get to bring those into excel as well!

Create your algorithm, an introduction to Excel workbook functions

I show you how to build a decision making AI that makes decisions the way a human does. We go over three different types of data inputs, and how transform them into numbers an AI can use to make a decision- as well as how to "weight" each factor based on how important it is.

How to build a decision making AI that thinks like a human

Here we go over how to step through your code line by line using the F8 command. I show you how to force a sub to run by setting up a sample situation and how to disable certain lines from running by putting a ' mark in front of them. Don't forget to re-enable these lines of code if you want then to run again in a live situation!

How to debug your code line by line

Here I show you some of the most useful tricks I've learned when configuring Interactive Brokers and the best way to get technical support. I've also attached a huge list of resources for additional learning about the Trader Work Station and the Excel API. Be sure to click on the "View Resources" button!

Setting up Interactive Brokers for the first time

A warm thank you from me for taking this course as well as a discussion on how to continue your journey!

Where should you go from here?
Need My Help Building Custom Automation?

Congratulations to all who have completed this course! You now have the power and knowledge to build your own automated trading system in Excel!

Wrap up and thank you
+ Bonus
2 lectures 01:18
75% OFF coupon for: The Big Volatility Short
A Perfect Strategy For Options Income