Fully automated futures trading

Discussion in 'Journals' started by globalarbtrader, Feb 11, 2015.

  1. Elder

    Elder

    I can see the problem. However, and speaking as a non-expert, -ve correlation of returns to me does not necessarily mean -ve correlation of momentum. GAT is the expert so I shall wait to hear if has a view on this.
     
    #1521     Feb 21, 2018
  2. No expert, but this is the way I see it. The following should be obvious:

    Negative correlation is GREAT if you're running a long only strategy, especially if leveraged eg risk parity (Because... diversification.)
    Positive correlation is GREAT if you're running a spread or cointegration strategy.
    Near zero correlation is GREAT if you're running any kind of long/short timing strategy, which includes momentum plus carry (again diversification)
    High positive or high negative correlation is BAD If you're running any kind of long/short timing strategy, which includes momentum and to a lesser extent carry.
    Momentum cares about ABS(correlation) rather than Sign(correlation)

    We can't do much about the correlation, but if reasonably predictable can try and run strategies that suit it. It looks like the correlation between bonds and stocks is going from being pretty negative (great for risk parity, bad for trend following) to being close to zero or even positive. As long as the correlation isn't too high this will probably be a better environment for trend following, in as much as it will offer better diversification.

    Generally the correlation of a long/short timing strategy will be closer to zero than for the underlying assets, because slight differences in the price series will result in slightly different positions, and hence relatively large differences in return streams.

    GAT
     
    #1522     Feb 21, 2018
    Elder, djames and tradrjoe like this.
  3. I guess it depends on whether you're talking about their flagship program, which is the program the original performance link was to at ctaperformance.com, as it is the only program they've been running since 1997. I know that this program started trading long/short cash equities in 2010 because I have an investment with them and have their prospectus in front of me! Also, the program did have two down years since 1997, -5.4% in 2009 and -3.2% in 2012. They introduced a separate 'futures only' program in 2010 for those investors who wanted exposure to futures only and then tacked on their prior futures only track record to this...
    https://www.winton.com/programs/winton-diversified-program
     
    #1523     Feb 21, 2018
    tradrjoe likes this.
  4. traider

    traider

    How did you arrive at your weights?
    Is there a reason carry isn't more than 25%?
    How did you choose your instruments?
     
    #1524     Feb 21, 2018
  5. srinir

    srinir

    #1525     Feb 21, 2018
  6. Interesting article. Although I will admit that it is on the borderline of what I can comprehend.
    What I read elsewhere is that the USA seems to lead other regions/countries in the trend to increasing interest rates. In Europe it will take another 1~2 years before it becomes a topic. And in Japan will QE continue for quite some time longer. If your analysis, which is based on the USA, would be applicable to Europe and Japan, then another possibility could be to make some shift in regional allocation.
     
    #1526     Feb 21, 2018
  7. Elder

    Elder

    @isotope1 - for the sake of benchmarking, I was wondering if you might be kind enough to share, for your backtest, how much load you give a worker in the ProcessPool ? Say you have 20 years of data and 35 instruments. Is it 20 seconds to step forward each year (say in an expanding window), perform bootstraps in each window, and so on, and finally generate an out of sample equity curve? Also it would be interesting to know how many bootstrap runs you use? I am curious as I am getting some but not as much speed up. Thanks
     
    Last edited: Feb 23, 2018
    #1527     Feb 23, 2018
  8. isotope1

    isotope1

    I calculate the account curve for each instrument as a separate job for the pool. The 20 seconds is to calculate the equity curve for the entire portfolio for the whole of time, based on known weights.

    Bootstrapping also uses processpool, but it runs separately. This one is way slower (as scipy.optimize takes some time). Each sample is submitted as a separate job. It runs as many iterations as necessary to get stable values. Running a bootstrap for every instrument probably takes a couple of hours.
     
    #1528     Feb 23, 2018
    Elder likes this.
  9. Elder

    Elder

    Ok, its helpful to hear that it takes a bit longer if you include optimisation. I have also found scipy to be the main speed bottleneck. As regards bootstrapping the biggest speedup I got was from numba (almost nothing than from multiprocessing which I can only speculate is due to worker communication overhead of a large number of aggregate processes). In general, I find numba excellent as a fallback for such problems.

    Anyway thanks very much for clarifying, its much appreciated!
     
    #1529     Feb 23, 2018
  10. maciejz

    maciejz

    GAT,

    That's an awesome blog post. I haven't done much with the impact of interest rates yet, but I've started to think about other "conditioning variables" (volatility mostly at this point) and it's great to see how you approach the problem.

    Just to confirm my understanding, you use your two conditioning variables in a very simple way, a value lower than the mean value of the variable indicates one regime, and a value above the mean indicates another regime. Is my understanding correct?

    On the bootstrapping of the Sharpe Ratio distributions, do you simply take the equity curves during each regime and then draw some large number of samples with replacement and calculate the SR for each sample?

    Thanks for continuing to share your thoughts and expertise.

    --Maciej
     
    #1530     Feb 24, 2018