Quote from PocketChange:
Nice job Tom,
Your results seem to reflect a fairly consistent 2K a day profit across a folio of 10 instruments. What are the cash requirements to trade this particular folio? Can the algo be set to trade intraday going flat by session end? If not do you have any set maximum position size for the over night carrys?
This is the topic I would like to discuss in depth with you guys at ET. One method to determine cash requirements is to backtest against worst scenarios and look at the maximum global position.
For instance, I was mentioning the high volatile scenario be have experienced a few weeks ago. If we could assume that was a bad scenario, we could for instance get prepared to see a global max position of 60 contracts. Backtesting on worst case scenarios might indicate a bigger maximum position (it also depends on strategy parameters clearly). If we also assumed that, for instance, a conservative figure for margin requirements would be 3K, we could determine, following the above example, a max "initial cash reserve" of 180K. (But frankly, i would not even start with an amount, at least, double of that). But do we really need all that money in the account ? Most of the time only a small fraction of that is needed. Possibly, we could proceed with gradual "cash injection" when we see things are getting too volatile. After a while the bot might be self-funded. But I really like to hear ideas.
(Clearly the results shown here are under the assumption of an initial packet size = 1. If this is set bigger, profit and drawdown will vary proportionally. Strategy parameters can be calibrated, so that given a certain initial cash reserve, there is a high probability not to need more cash.)
Few questions regarding your folio approach relating to draw down and profit taking. Seems like your algo trades each instrument independently but use some type of rule to close out the folio.
The algo, in this case, is the same for all instruments (different parameters for each instrument could be specified, but I did not). However, the instruments do NOT trade independently. As I have anticipated in the previous post I have enforced some correlation rule which delayes new entries in a condition of volatility. This is because we want to use correlation in our favor, distributing the investments, and trying to avoid that all the instruments simultaneously enter the "investment" phase.
Another reason because they are not independent is the take profit rule I have mentioned in previous posts. This causes the "running away" instruments to be stopped, if there is a favorable condition at folio level. In other words, the use of stops is justified at a folio level and not on single trade (as was asked by kxvid).
If a single instrument position is being drawn down does the algo cut its loss by offsetting profits from other instruments.. ie. folio based rules? or does the algo add to the position and wait for it to profit?
Yes, exactly. It can be cut away if the folio allows that, or a more favorable condition can be waited for. In fact, you you take a closer look at the charts you will notice that there are instruments with negative "realized" (mostly eminis in this case), a clear sign that they have been stopped at a folio level.
Are the profit taking rules static or dynamic? does the algo adjust exits for each position based on the results of the folio... or does each instrument use hard and fast rules for taking profits.
The take profit is currently completely dynamic. The concept is that it can "take profit" or "consolidate" (which means shifting $'s from the "Unrealized" component of the PNL to the "Realized" component) when an "cycle of investments" can be considered ended.
When you add to a position are you adding exponentially or linearly? 1,2,4,8 etc. or 1,1,1,1? Do you add size to profitable positions... pyramid?
No adding exponentially would lead to ruin. Further positions require price moves much more than proportional.
Outside of using the basket of instruments to hedge the trading risk what specific scenarios cause the algo to either scale size or take losses?
Worst case scenario is all instruments highly correlated all engaging in "investments" simultaneously. This is an area where much research can be done and this algo can certainly be improved, as performances. I will be doing that in the near future (besides devising new algorithms, as usual).
Interesting approach.. Is this fully automated or a combination of discretionary and automated trading?
Full automated, with no need of trader intervention. Clearly, the trader can decide when to close all and restart a trading session (for instance might choose to start up after a period of high volatility). But, in theory, it could run forever. In practice, will not at least because the charts will become "cluttered" (though the bot has a way also to avoid that).
Another area where the trader can intervene is how to make the rollover (I will show this later on). (The bot provides an automatic rollover facility.)
Tom