Interview with trader James
Hello, could you introduce yourself? What is your profession?
My name is James Knoesen. I live in Auckland, New Zealand. I’ve been a Business Analyst for the last 14 years with a heavy focus on Technology and Commercial/Financial Analysis.
I hope to move on from this and be a full time algo trader in the next 2 to 3 years and build wealth beyond this.
How did you start with algo-trading?
I was working with a life coach and he kept talking about Ripple before the 2017 Crypto bull run. At the time it was $0.20 and when it started sky rocketing before it hit $3.50, I wanted to get in and make some money.
It seemed like easy money at the time. Put on a trade and buy a Lambo right? I finally got into trading after the bull run (it took me ages to get onto an exchange and buy some BTC because exchanges were flooded with new applicants), but I eventually got in and started trading.
I initially started trading and did well and I thought it was easy and decided to go full time, but it turned out that it wasn’t easy. Not at all!
After my initial success, I had a string of losses and this eroded my confidence severely and I started doubting myself at every turn and I ended up losing quite a lot of money and had to go back to work.
However, I enjoyed the process, I enjoyed the challenge and I enjoyed the communities I had become a part of and I knew that if I stuck with it and learned to perfect the art and craft of trading and how to be a successful trader, I would ultimately succeed.
I started doing better at my discretionary trading and started making money because I focused heavily on trading psychology and less on technical stuff.
However, even with my success, because discretionary trading requires a lot of screen time, I would get tired on top of my other responsibilities (work, family etc.) and I would start making bad decisions and lose all the money I’d gained and end up back where I started, completely burnt out and have to stop trading for a while to get my energy back. This happened a few times.
My initial plan was to get good at trading, then learn how to code and build trading bots based on my experience, but after I burnt out a few times and with someone introducing me to MT4 EAs, I decided that maybe I should explore algo-trading instead because of my time constraints and resulting emotional struggles that affected my trading.
I did a few courses on Udemy for building bots, bought a black-box EA on MQL Markets, bought some dedicated server power and before I knew it, I was running the genetic algorithm for optimising settings on my blackbox EA on 5 servers with 100 MT4 windows open and scripts collecting results that I was putting into an SQL database for analysis.
How long it took to be successful, and what was the breaking point?
I had someone tell me about Strategy Quant and I contacted the team for more information. One of the team, Tomas Matejka, was kind enough to share a 25 video course for an older version of Strategy Quant with me.
I watched every video and the course content blew my mind when I realised just how important thorough robustness testing was with building strategies.
The course really helped me understand why I was seeing the poor results from my black-box EA testing, results and optimisation analysis and just how much I was lacking with my process!
I also wasn’t all that happy with the “black box” aspect of market bought EAs. I wanted full transparency and my own source code with all of my EAs.
I subsequently got a trial license with Strategy Quant and converted to a full license. I initially used the default workflow from the courses and built 2 portfolios that are still in testing but are profitable.
What do you like the most on algo-trading?
The freedom it gives me to be away from the computer and not have to trade at odd market hours
The emotional freedom
The capacity to run hundreds of strategies automatically, 24/7/365
The ability to build a robust risk management system because I can build, test, deploy and manage/ replace strategies to minimise my exposure
The challenge and analysis side of building the ultimate portfolio
The future potential of building a successful hedge fund.
Could you tell us more about the workflow which you are using for creating and selecting the best strategies?
Long or Short only strategies as markets behave differently in either direction
Build from Sept 30 2013 to latest in 2020 with 80% IS and 20% OOS
I also ALWAYS build using a higher spread that I’ve monitored through my broker e.g. I build with 2 pips for EURUSD when my broker average during my trading window (under trading options) is 0.7 pips.
- I use IceFX SpreadMonitor in MT4 to monitor and record broker spreads, which I import into my own database
- There is also this website, which is extremely useful: https://www1.oanda.com/forex-trading/markets/recent
- Otherwise I can analyse tick data
These are 28 FX Pairs on H1 Timeframe
Once I have 100 long and 100 short strategies for each pair I run these robustness tests:
- Monte Carlo – Retest – Randomise Price History. This is to test for sensitivity with broker vs. broker trading conditions
- Monte Carlo – Retest – Randomise Parameters (100 simulations)
- Monte Carlo – Retest – Randomise Parameters (500 simulations)
- Monte Carlo – Retest – Randomise Parameters (1000 simulations)
- Strategy Parameters Permutation (5000 optimisations) with data from 2007 to 2020
- Walk Forward Matrix (10000 optimisations with precision = selected timeframe) with data from 2007 to 2020
- Manually choose best results
- Walk Forward Matrix (20000 optimisations with precision = 1 minute) with data from 2007 to 2020
MC Price pass criteria
MC Parameters Pass Criteria
SPP Pass Conditions
WFM (selected timeframe)
WFM (selected timeframe)
WFM (1 minute precision) – with same pass criteria as above
I then manually choose best results (best matrix result for each strategy)
I add this to the notes field in Strategy Quant e.g. R6 30P
I load all of the Walk Forward Matrix strategies that I picked above into Quant Analyzer, where I can break each walk forward test down into a single result and pick the best result based on my notes field above and discard the rest
I have custom snippets / scripts in QA4 to help me split these out and cleanse the names
I run all of the strategies through the Portfolio Master to get the best strategies with a correlation of <= 0.4 for Profit / Loss by MONTH
I save the information from the bets strategies from Portfolio Master into excel and have custom VBA scripts that help me copy the original files and rename the destination files based on my results e.g. AUDUSDH1 WFM100 1.10.100.sqx will become AUDUSDH1 WFM100 1.10.100 R4 20P.sqx
- This naming convention tells me:
- I built the strategy for AUDUSD
- M5 is my timeframe
- It has a walk forward matrix included
- I used Fixed Amount of $100 to build and retest the strategy
- Run 4 with 20% out of sample is my best result
I import the destination files back into SQX
I manually open each strategy and
- Pick the WF result from the grid e.g. Run 4 and 20% OOS
- Click on “apply params to strategy” for the future result
- I want to script this desperately as this is a pain and can lead to mistakes!
Once I’ve done this for every strategy, I save the files as SQX and MQ4 files
- The naming convention for the MQL files will be the same e.g. AUDUSDM5 WFM1000 1.10.100 R4 20P.MQ4
I deploy these strategies into an incubation demo trading account
If a strategy hits its drawdown limit based on Monte Carlo in Quant Analyzer testing (described in the question below) I will re-optimise or remove and replace
- If a strategy fails in a trading account quickly, it’s a remove and replace
- If it fails after a period of time close to the recommended re-optimisation period for the WFM run then I will re-optimise and re-deploy
- If a re-optimised strategy fails again for any reason I will replace it
What is your philosophy of creating an optimal portfolio?
A reasonable number of strategies across a reasonable number of assets – 15 to 20 FX pairs (majors, minors and potentially some exotics), Gold and 3 or 4 Indices. I will look to include futures and crypto later and build a very large portfolio of strategies in the future with a team to help me manage this and automate as many aspects as possible of my algo-trading e.g. Hedge Fund
Run more strategies with lower risk for each e.g. It is better to run 20 strategies with a $100 Fixed Amount of Risk than running 2 strategies with $1,000 of fixed risk.
- This way if a strategy fails because it hits it’s drawdown limit it doesn’t have as big an impact on your account and can easily be replaced by newly generated strategies
If your account makes profits, add more strategies e.g. If you have a $10,000 account and can manage 20 strategies with $100 Fixed Risk Amount, if you make $2,000 of profit and now have a $12,000 account, add 4 more strategies and run 24 strategies
- This has limits from a portfolio management perspective and at some point increasing risk for each strategy will be better e.g. with a 50k or 100k account with $200 of fixed risk per strategy
- This also allows you to branch out into more markets e.g. expand from FX and indices into Futures and Crypto
ALWAYS manage risk. Calculate you absolute highest possible margin requirement (most trades in a day from QA portfolio)
Know AND understand what you’re trading and the risk involved.
- For example, with my broker, trading DAX is NOT a good idea.
- I can trade as little as 0.01 lots, but my broker contract size is 25.
- DAX base currency is Euro and my account is in NZD. EURNZD at the time of writing is 1.7239 and DAX at the time of writing is €13,213 = NZ$22,777.
- 25 contracts x $22,777 = $569,447
- 01 lots = $569,447 x 0.01 = $5,694 minimum trade size
- Based on my settings above where my max SL can be 10x ATR1000 = €720, this is a movement of 5.4%, which would be a loss of NZ$310, which is above my acceptable risk limit of $100 per strategy
- There are other indices I can trade that don’t have this problem e.g. NIKKEI or DOW
Are you using for strategies parameters recommended by optimization or you use a different way?
I use recommended parameters from Walk Forward Matrix as above
Every portfolio sometimes suffers from drawdown. What is your approach to overcome it and maintain confidence in your robots?
Is there any source of knowledge which you would like to recommend to other traders?
- John Demartini – The Values Factor
- Read this and apply this before doing anything else
- This will help you decide if trading and/or algo trading is really for you because if you aren’t naturally motivated to spend huge amounts of time learning the art and craft of trading, then go do something else or you will become another statistic
- Strategy Quant training videos / course
- These are incredibly useful and should be watched multiple times
- I would also HIGHLY recommend that this course be freely made available to the general public. They are exceptional advertising for Strategy Quant and my experience of the original 25 videos Tomas Matejka shared with me was why I bought my SQ license and why I’ve experimented with and used SQX so heavily over the last year since I bought my license as I perfect my algo-trading mission
- Anything by Mark Douglas – this man is a legend of trading psychology
- This course by Trader Dante: https://trader-dante.com/module-landing-page/
- This is his own specific strategy, which he teaches people to follow, but it’s the way he explains it that’s so valuable. He gives amazing insight into how the FX market works and why the markets move the way they do and how it relates to the big institutions
- These Anton Kreil videos:
- Babypips school of Pipsology: https://www.babypips.com/learn/forex
- This set of videos by Kevin Davey: http://www.playbackloop.com/playlists/UUjTZtWVBchDTJuxy_7GjySQ
- No Nonsense Forex – there’s a website and tons of free content on Youtube
- This document (38 steps to becoming a great trader)
- Michael Parness: Rule the Freakin Markets
Do you have any tips about what to avoid or be aware of in algo-trading?
- Don’t launch anything into live trading until you are 110% certain your workflows are creating great strategies
- Demo trade, demo trade and demo trade some more
- This will help you test and iron out weaknesses in your approach
- THIS IS A BIG ONE: If you have psychological issues with money and feeling worthy of money or are very scared of losing any money, opening and testing on a reasonable number of demo accounts with varying amounts of balances will psychologically get you used to seeing the ups and downs and over time you will become more and more comfortable with the idea of making money automatically and you will also get used to the idea of periods of drawdown happening.I would also recommend you open demo accounts with larger balances that you are uncomfortable with, but not unrealistic balances. For example, I initially felt uncomfortable with an account balance of 100k and watching my account swing by up to 10k during drawdown periods because 10k is a lot of money to me. Watching the 100k account swing up and down and gradually make headway (sitting at 116k now) psychologically gets me used to the idea that I can be more comfortable with larger swings and helps me feel like the next level is not so scary.
- Demo trading gives you the freedom to test wild ideas, which may ultimately fail, but the ideas and results you get are invaluable to your workflows
- I tested a 5m workflow where it was build –> best equity curve –> deploy (NO robustness testing) and I deployed over 150 strategies just to see what would happen.
- The account is in huge loss
- This is quite different to when I ran THE EXACT same experiment on the 4H timeframe where I did build –> best equity curve –> deploy with 96 strategies and this portfolio is in profit
- This tells me that I am less likely to lose money with less robustness testing on higher timeframes
- I have to test on a much larger number of years with a higher timeframe, so my non-robustness tested strategies see a lot more of the market and this tells me that if I build on more market data, my strategies should be better
- This also tells me that the noise on lower timeframes really does make it much harder for lower timeframe strategies to perform, so it is safer to always work with higher timeframes and aim for more stable profits
- If you lose a lot of money demo trading at least you learned without losing real money!
- PAY FOR GOOD COMPUTERS!
- If you want to make money trading, don’t skimp on your computing costs
- Get a good strategy building computer
- Get a good trading server: Hetzner provide extremely cost effective dedicated servers that are cheaper than most VPSs and much, much more powerful
Would you like to share some recommendation to other algo-developers, what to focus on, etc.?
I HIGHLY recommend a spread monitor to monitor your broker spreads over time. Save this data and put it in Power BI or some other visualisation tool to help you build understand what happens with your broker spreads at various times of the day.
DON’T OPEN AND CLOSE TRADES AT ROLLOVER and if you have trades that will be open at rollover, make sure they are higher timeframe trades with larger stops
Look after yourself:
- You can’t expect to do well with anything if you don’t look after yourself.
- Work on yourself. Keep fit. Meditate. Sleep.
- Don’t waste time on crap that doesn’t benefit your life and don’t waste time on crappy people either.
- Manage your life. Keep your house clean. Keep on top of your finances.
- Have fun!
- Test, test and test. Then when you’re done testing, test some more and keep testing.
- Learn, learn and learn. When you’re done learning, learn some more and keep learning.
- Share ideas. Write articles. Join communities. Perfect your ideas. Document everything. Build good systems.
- Automate as much of your workflow as you can because more human intervention wastes time and leads to mistakes and errors in your workflows that you have to “debug”.
- For example, learn how to write snippets and automation scrips to manage your files
- Use good naming conventions for your files
- Always have a way of documenting ideas handy. If you have a thought or an idea, capture it somehow (notepad by your desk, in your phone, on your computer etc.).
- Keep a more formal record of your ideas e.g. A journal – I use OneNote
- Keep a list of tasks you need to complete or follow up on. You’ll get lost or distracted if you don’t.
- BACK EVERYTHING UP. I have backups of my SQX folder, my QA4 folder and MOST IMPORTANTLY my strategy files. I use OneDrive myself, but there are plenty of other options available
Ask for help. ALWAYS ask for help. There are no dumb questions. Ever!