
What will be in this course?
Risk Disclamer
Thank you for asking questions!
Learn from yesterday, live for today, hope for tomorrow.
The important thing is not to stop questioning.
- Albert Einstein
Few golden rules about questions while e-learning:
Ask questions - they help to learn, they may help to provoke new ideas, they may inspire others...
There are no stupid questions
There is no harm in answering questions from other students
It's good to use search if similar question was already asked but there is nothing wrong to eventually add duplicate
Better to ask more simple questions rather than one but very complex
Ask question even if there is a difficulty or frustration about something
It can also be a comment, suggestion or just a quote from someone else that may be relevant
video created after building the whole series... not a simple one but should be an overview)
Two recommended setups:
PC Windows 7(10)
Dedicated PC Windows in Local Network with Remote Desktop
VPS (out of scope)
PC Windows 10
Dedicated PC Windows in Local Network with Remote Desktop
Practically minimum requirements to reproduce:
8Gb RAM
2 core CPU
28 Gb Harddisk
Lecture focuses on describing that hardware must auto-restart after power failure
Getting the intuition about Environmental Variables
Setting EV in Windows and checking result in cmd
Setting up EV using a script
Learn to build a simple Windows batch backup program that uses user environment variables, like user profile, to copy text files from the downloads folder to OneDrive using Robocopy.
... about using EV's for this series of courses
In this section we will review few simple programs that could be useful on our computer
Explore the command line in Windows, learning essential commands like dir, cd, and mkdir to automate tasks, troubleshoot environment variables, and run programs from a prompt.
Notepad ++ is quite a useful text editor. Developers are even claiming that it is using much less computer resources than other Text editors!
usually this is nice for:
Quickly explore large datasets
Inspect or copy code
Attempt to open some unknown file…
robocopy could be used to automate copy tasks:
move, copy, operations
options to exclude old files and more
Setup user Administrator rights
Example of setting up Windows Remote Desktop Connection software
Very generic explanation about Java and it's use for deep learning capabilities
Video featuring installation of open - source java edition on Windows
Getting to know about Windows Defender Firewall...
useful tip explaining how to find location of the Windows Startup folder
This chapter is created mostly for students who have no prior knowledge about Version Control. This means that more experienced Students could probably skip this section.
Students are invited to follow this chapter by reproducing steps shown on the video tutorials
Version Control software is designed to track changes over time and secure programmers could organize their work efficiently.
git software was created more than 30 years ago and could be used from any computer system. For the purpose of this course we are not going to use this program via 'CLI' or 'Command Line Interface' but rather just operate this program using modern 'GUI' or 'Graphical User Interface'. For example we can use modern software like 'Git Desktop' or 'R-Studio' that will use git behind the scene
Lecture will show how to install Git Desktop for managing Repositories
Mention about other Version Control Systems that are exist
In this tutorial we will create new repository using Git Desktop
Remember that Best practice is not to explain what was changed but rather why it was changed!
Some files and folders could be present inside repository but be outside of the Version Control, typically:
files that are not meant to be public (environmental variables, passwords)
large files like videos
compiled software
files that could not be decoded as a text
There are few advantages to have github.com account to be able to publish your work on GitHub.com:
Backup your code
Use code from several devices
Share your work to others e.g. to increase your visibility, hiring strategy, etc
Automate software testing (this is more advanced features, but feel free to study this separately using search term 'Continuous Integration' or 'Github Actions'
Option to keep your code either Private or Public (both things are nowadays free)
This process is local computer centered:
push - process of moving changes from local computer to the GitHub.com
pull - process of moving changes from the GitHub.com to the local computer
a nice tip to increase ease of collaboration:
sending a link with changes on the commit
use Git Desktop:
define changes that needs to be discarded
right click and discard changes...
use Git Desktop:
got to history tab
click on revert commit
creating branches is very easy, it can be done either on GitHub or using Git Desktop
Pull request - process of joining code from development branch into the main or master branch
Deleting branches should take place both on GitHub.com and on local computer
This lecture shows how to restore repository state at any given point in time by creating a branch from that state
Resolve conflicts in pull requests by simulating merges, identify conflict areas, and manually edit and commit changes to keep the correct code on main and development branches.
Quick recap on Git terms:
Fork - a process of copying code from someone else's repository to your own
Clone - a process of creation of copy of code from the cloud version control repository to the local version control repository
Example of getting a code and pushing that to multiple locations
Lecture explains that GitHub Desktop allows to 'reassign' the repository to your personal GitHub account
Using History Tab to compare changes across branches
Lecture explains how to bring some changes from one branch and 'merge' them to another branch
Learn how to delete a repository from your local computer and from the cloud, using the settings danger zone to archive or permanently delete after confirmation.
Install the trading terminal from your broker’s page, connect your accounts to the Method Trader, and review history center, strategy tester, and the distinction between test and prediction terminals.
Retail Trading becomes more complicated. Read this article to learn more about leverage restrictions, FIFO rule and restrictions for US Residents...
Install the trading terminal, enable portable mode, and log into a real or demo account, following broker download steps and setting up multiple portable terminals.
Lecture describes:
Master the MT4 terminal by navigating accounts, indicators, and expert advisers, saving EA inputs and templates, and enabling live trading to prevent freezes and missed opportunities.
Manage the history center and run strategy tester backtests in a trading terminal, including downloading data for forex majors and EURUSD, and reviewing expert advisor results and equity charts.
In the link below, you can find some Keyboard Shortcuts that may come in handy.
https://www.metatrader4.com/en/trading-platform/help/overview/fast_nav
Section dedicated to R Software for Statistical Computing and Graphics
We will use R for multiple purposes!
Just in case, a quick video explaining the main data science pipeline:
Data Input
Algorithm
Output (Decision)
In this series we will use:
Rscript.exe - to automate R scripts
Rgui.exe - to update R
Rstudio.exe - to create R project and develop R programs
Create R Project in existing or new Directory
Create new R script. Perhaps too basic but just in case...
Coding live to create a function in R.
Golden rule - create a function once you need to copy / paste code 2-3 times
Learn how to install R packages using the packages menu or the install.packages function, including handling dependencies, restarting the session, and installing from the repository that hosts many packages.
h2o package will be used for deep learning:
efficient computation directly from R
while it may be a bit lacking flexibility however it is still very functional and easy to learn
Introduction of the R package 'lazytrade'
Using R - Studio capabilities to create RSA key (private and public) and store them in to the `.ssh` folder
Showcase of procedure to follow in R to:
Create a Vault
Create a User
Add a Secret
Decrypt a Secret
Automating R scripts:
Automatic user credentials decryption
Using R to setup or delete tasks
Purpose of this lecture is to show how to update R installation version
explaining the simplest idea that allows us to learn data science and tackle algo-trading problem:
information
analysis
decision
Lecture to explain all the elements of our strategy listed in 1 pager:
Elements of local Computing Environment
Code flows
Information flows
Keep that 'as is' or develop/research for yourself
Reviewing building blocks of 'Intelligent Decision Support System'
how many terminals?
4 in case of active development and testing
2 in case of just reproducing provided content
Describing how Decision Support System will help us to learn Data Science
Possibility to develop your personal iDSS:
Have one Repository containing all or several 'ready-to-use' elements
Modify existing elements
Create custom elements
Automatic re-start after power shutdown
Automatic login with options
Automatic login after network issues
Securing Passwords
Handling updates
Set Windows 10 to sign in automatically using a local account, by configuring signing options to never require a password for a trainee trading environment.
How to generate password for MT4 platform
Detailed description about how to clone code needed to reliably start terminals
Video with a practical demonstration about how to create environmental variables
Students are welcome to setup their own initialization files using the account credentials and information from broker
This lecture will practically illustrate:
how to customize AutoLaunch command script
how to place this script to the windows Start-Up folder
how to test that this script works
Demonstrated how to write log information at the moment of computer re-start
Demonstration how to restart PC using Windows Task Scheduler
Test to failure: power outage...
Few simple things may help to add more robustness:
cleaning dust
delete un-used files,
update software
replace passwords,
etc
In this Course you should be able to do now:
Get your Hardware set up in fail safe mode
Have your Trading Terminals up and running
Get install R and Github Desktop softwares
Have in place fail safe software mechanisms
Use few new skills like version control, environmental variables, windows support softwares, etc, etc!
Your home trading station should be ready to go!
Please support this work by using provided coupons!
"Luck is a preparation to Opportunity" -- Seneca
About the Lazy Trading Courses:
This series of courses is designed to to combine fascinating experience of Algorithmic Trading and at the same time to learn Computer and Data Science! Particular focus is made on building Decision Support System that can help to automate a lot of boring processes related to Trading and also learn Data Science. Several algorithms will be built by performing basic data cycle 'data input-data manipulation - analysis -output'. Provided examples throughout all 7 courses will show how to build very comprehensive system capable to automatically evolve without much manual input.
About this Course: Set up your Trading Environment
This course will cover setting up personal Home Trading Environment using Windows 10 Operating System. At the end of this course we will have a Trading Environment installed and active on the Home Computer. This trading environment will be a basis of a modular system which will be completed during the whole series of courses. We will cover the following topics:
Choosing a hardware (Windows PC)
Learning about basic administrative tools in Windows 10
Install and prepare needed software including Meta Trader 4 Platform
Establish Version Control Tools for Trading Strategies and tools
Outline the Bigger Strategy that aims to automate decisions of the Trader
Set up Development, Test and Production Trading Terminals
Establish Decision Support System using R statistical software and package 'lazytrade'
Making Trading Environment more robust to external factors
"What is that ONE thing very special about this course?"
-- Setting up the computer to be ready 24/7!
This project is containing several courses focused to help you managing your Automated Trading Systems:
Set up your Home Trading Environment
Set up your Trading Strategy Robot
Set up your automated Trading Journal
Statistical Automated Trading Control
Reading News and Sentiment Analysis
Using Artificial Intelligence to detect market status
Building an AI trading system
IMPORTANT: all courses will have a 'quick to deploy' sections as well as sections containing theoretical explanations.
What will you learn apart of trading:
While completing these courses you will learn much more rather than just trading by using provided examples:
Learn and practice to use Decision Support System
Be organized and systematic using Version Control and Automated Statistical Analysis
Learn using R to read, manipulate data and perform Machine Learning including Deep Learning
Learn and practice Data Visualization
Learn sentiment analysis and web scrapping
Learn Shiny to deploy any data project in hours
Get productivity hacks
Learn to automate your tasks and scheduling them
Get expandable examples of MQL4 and R code
What these courses are not:
These courses will not teach and explain specific programming concepts in details
These courses are not meant to teach basics of Data Science or Trading
There is no guarantee on bug free programming
Disclaimer:
Trading is a risk. This course must not be intended as a financial advice or service. Past results are not guaranteed for the future. Significant time investment may be required to reproduce proposed methods and concepts