Advice for aspiring algo-traders

I see no mention about discretionary content.
Do you allow for that yourself or do you prefer 100% mechanical?
Running 100% mechanical will likely give poorer results imo.

discretionary has lots of dangers, main missing a trade. Algo never misses a trade, no emotions. We are 100 automated.
 
Agree with you on the second point.

I do run 100% mechanical and this is a lifestyle choice. Couple of hours after market close I receive automated report which I look at, habitually, at some point before I go to bed. It contains slippage + model vs live comparison and no $ or PL figures to keep it emotionless. Can go on vacation and have everything running, keep building my tech business during a day, rock climb and keep looking for a wife.

End of the week I look at PL and trailing 3m models / live performance. That is where I will use my discretion - turning strategy off/on and adjusting % allocations.

I would love to see an experienced and profitable discretionary trader doing a post similar to mine.

Val

what happens when tech issue takes place and you rock climbing? Example, you place a trade and stop does not get submitted. My motto is fully automated does not mean unattended.
 
My motto is fully automated does not mean unattended.
That depends a bit on where you place the boundary between attended and unattended. In my case the software handles all trading by itself (thus is unattended), but I do receive overviews of the trades done and whether those filled or not. Of course do I read those overviews. Does that mean that my system is attended? I don't think so, as reading this doesn't even take one minute.
 
That depends a bit on where you place the boundary between attended and unattended. In my case the software handles all trading by itself (thus is unattended), but I do receive overviews of the trades done and whether those filled or not. Of course do I read those overviews. Does that mean that my system is attended? I don't think so, as reading this doesn't even take one minute.

unattended means you set and forget. What happens when you loose market data, stop loss does not get set, stop loss gets set in incorrect spot, you get overfilled on exit, cable to data center gets cut (my favourite one) and etc???? This is what I mean. I coded for all of the above, it did take some time :D
 
My background was in real-time distributed systems, so I applied the same general ideas to trading systems. You always code pessimistically (assume any external resource is potentially not available or has the potential to become a random number generator), you orthogonalize all your state and if anything unexpected happens you fail as fast as possible. Even after running these systems for years, new stuff pops up.

You can do a lot of valuable debugging by having the ability to 'replay' a days data though your system, which is why I mentioned the importance of transparency between live & back-testing. All this stuff does take time, and some amount of programming talent.

I'm asleep when the market opens, so I don't have much choice but to be 'unattended' in that period. I wake up about midday EST. If anything fails I get an alarm on my phone. Which is always a joy as I know I'll be hand closing 10s of positions which are probably in the red.
 
This is what I mean. I coded for all of the above, it did take some time
So did I: made an overview of all possible things that (likely) could go wrong. Corrective measures are taken and/or I receive a warning message by email. Over the years some events popped up which I had not considered in advance. Those were taken care of after the fact. By now I hardly ever have to touch the software code.
 
So did I: made an overview of all possible things that (likely) could go wrong. Corrective measures are taken and/or I receive a warning message by email. Over the years some events popped up which I had not considered in advance. Those were taken care of after the fact. By now I hardly ever have to touch the software code.
Email might be too late. I coded sms. Same here we rarely get involved.
 
discretionary has lots of dangers, main missing a trade. Algo never misses a trade, no emotions. We are 100 automated.
Just debating. If you never miss a trade and win rate is not sooper dooper, then you have higher transaction fees also.
 
Rob, you should publish your list. I'm sure people will appreciate it.

#2 is the most controversial it seems. I did write my own too and there was a value in it, but also a good deal of distraction. Perhaps I should combine it with "80% spent on your strategy development, 10% on experiments, 10% on automation". Ultimately, don't get into a trap of spending most time creating software vs a strategy.

#7 - understood, considering your background. For someone who is just starting out, do you feel it is a good idea to go head to head with the best guys in the industry working hyper-liquid instruments?

This has been an interesting thread, albeit it seems to have got a bit sidetracked down the alley of robust trading system design (still interesting!).

Your list is excellent, although personally I'd include more of an emphasis on avoiding too much leverage and too much fitting.

Let me deal with #7 first. I think the easiest win in systematic trading is basically capturing risk premia that a discretionary trader is uncomfortable with. And although it's true that there are probably a little more premia in illiquid markets, there's still plenty of juice across liquid markets. In fact it's probably safer, until you are very comfortable with your execution, to stick to highly liquid markets. Indeed in my own system I deliberately avoid markets which are highly illiquid.

It depends on the time of trading you are doing; if you are trying to capture a liquidity premium through some kind of mean reversion or market making strategy, arguably illiquidity is a major source of income as well as giving you plenty of downside risk. If you are trading at the sort of time scale I am trading at, then illiquidity is just a pain as it makes the execution riskier without any clear benefit (the distinction is that the execution for me is a way to get into the trade, but for a shorter term / market maker type it is the trade). That also means I place less emphasis on #23 live executions matching the model: I don't even look at this.

For #2 I think there are a number of issues with the 'off the shelf' systems. The main ones that come to mind are a lack of flexibility (although the scripting languages they provide might be theoretically Turing complete, it is tortorous to do certain things, like for example continous rather than binary trading if the system thinks only in terms of discrete trades; or they lack data to do things like calculate a futures carry signal), and making it far too easy to overfit a model.

I'd say an off the shelf system would be fine for someone who is happy using a fairly simple discrete system that fits into the neat box provided by the scripting language; something like a simple weighted average of momentum rules for example, which hasn't been fitted beyond the bare minimum. Of course such a system could equally be run in Excel, but that wouldn't give you the automated execution.

GAT
 
Back
Top