Fully automated futures trading

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

  1. Let me expand

    a) it's pretty obvious what kind of price movements will hurt a particular system. Carry and mean reversion dislike sharp volatility. Trend following hates range bound markets.

    b) I can't identify in advance that these bad periods are going to happen. So why worry about something you can't control?

    #651     Jan 28, 2017
  2. maciejz



    Thanks for posting the FundSeeder reference -- it's a nice site. I have several questions about your account on fundseeder though:
    1. It seems that the returns are understated for your account. This would also explain why the annualized volatility (according to fundseeder) is so low for your account. Is this a result of the NAS you specified ($1,866K) compared to your account size ($731K) ? Even adjusting for that, the volatility (according to fundseeder) is a little below your target. If this is the cause, why did you gear down your volatility on fundseeder -- is it because the benchmark has a specific vol target such as 10%?
    2. Are all the numbers (on FundSeeder) related to your account in USD? I believe that FundSeeder takes currency into account, so everything should be in USD, but I want to double check :)
    3. Is your fundseeder account showing the combination of your equity (plus hedge) as well as your futures system?

    One thing that has me puzzled is that my backtests show worse results than your results for about a 6 month period starting in June 2016 -- it is around the time when the SG CTA benchmark goes negative on the 6 mos rolling returns. Your results show a great June with 3.54% return, while my backtests show a 2.64% loss. Anyhow, I'm not looking for you to diagnose my problem, I'm just trying to think through possible causes of the difference in results: USD/GBP exchange rate (although I've been too lazy to test whether this would explain the difference), your equity (plus hedge) portfolio, different system parameters (mix of markets, weights, etc.).

    Just a little update from my end -- I'm in live trading for close to 2 months now. Overtrading -- downloading prices, evaluating signals, and executing orders multiple times per day -- caused my live equity to perform not nearly as well as my simulations for the same time period (December 2016). I've stopped that now :) -- I'm live trading exactly as in backtests -- once per day based on prior day closing prices. Once I've made that change, my live trading daily P&L matches simulated trading results (backtests) almost exactly (the difference is simply slippage which can be positive or negative). I'm going to add 9 additional markets in the coming week -- all markets are still USD based since I don't want to deal with currency stuff yet.

    As always, a big "Thank you" -- your work has been an invaluable reference and inspiration.

    #652     Jan 28, 2017
  3. Yes it's a result of a higher NAS. I chose this because the FS score penalises you for having large absolute drawdowns, irrespective of what your vol target is. This gets me down to a vol more typical of the CTA Industry.

    Depends on what you're looking at, the account is nominally in GBP and then fundseeder convert everything internally I believe.


    It's mainly going to be the result of Brexit which gave me a one off windfall from my equity plus hedge, although a higher allocation to carry may also be in there.

    Glad to hear it's going well..

    Rob / GAT
    #653     Jan 28, 2017
  4. joederp


    Rob et al,
    Looks like IB is now officially supporting Python, with their 9.73 release of the API. No section for it exists in the API ref guide yet, but looks like the scripts cover a lot of ground in terms of functions offered in other languages.
    #654     Jan 29, 2017
    algo_fool likes this.
  5. https://www.interactivebrokers.co.uk/en/index.php?f=5061&ns=T&nhf=T

    Great news. Thanks for this.

    #655     Jan 30, 2017
    AvantGarde likes this.
  6. There is some online reference guide available though: http://interactivebrokers.github.io/tws-api/#gsc.tab=0 . At the top of the screen you can select Python.
    #656     Jan 30, 2017
  7. Hi GAT,
    Can you explain the logic behind the assumption of paying mid spreads in transaction costs and not the more conservative (whole) bid/ask spread?
    #657     Feb 7, 2017
  8. Slippage is the difference between the mid price and what I actually pay / get.

    Assuming the price was 100 - 102 and a thick order book with plenty of volume:

    So on a buy I'd pay the offer 102 and have slippage of offer - mid 1 point

    If the price then moves to 119-121

    If I then sold I'd get the bid 119 and have slippage of mid - bid: 1 point

    Total for a buy and a sell is 2 points; total per trade is 1 point or half the bid-ask spread.

    #658     Feb 8, 2017
  9. traider


    Hi GAT,

    can you share with us more about writing algorithms to execute trades properly? I know you did write a simple execution algorithm for your own system.

    1) Breaking up large orders and executing over time
    2) When to use market vs limit orders
    3) References to academic research on execution
    4) Minimizing the risk of the algo running amok

    Thank you so much!
    #659     Feb 12, 2017
  10. I wrote a post on my own system:


    For (4) this might be interesting


    #660     Feb 12, 2017