Fully automated futures trading

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

  1. corsair

    corsair

    I feel your pain... I keep a chart on my desk of a certain trend following funds live performance from the mid 70s to the present time with all the drawdowns highlighted just to remind me what reality looks like. It must have been brutal to live through even though it wins in the end.
     
    #4461     Mar 3, 2025
    Kernfusion likes this.
  2. corsair

    corsair

    For now - I am going to the use the total SR cost from here (thanks Rob!): https://github.com/robcarver17/reports/blob/master/Costs_report as a guide. From the stuff I currently intend to trade - basically this tells me to be wary of Coal & Steel.
     
    #4462     Mar 3, 2025
    danw likes this.
  3. #4464     Mar 4, 2025
    corsair, newbunch and danw like this.
  4. @globalarbtrader Hi Rob, in AFTS, while backadjusting futures prices, what if the multiplier keeps changing frequently, first we have to adjust all previous expiries to the current multiplier.
    All prices multiplied by old multiplier/current multiplier, and then proceed with the difference method?
     
    #4465     Mar 4, 2025
  5. I avoid the contracts that change multiplier; but if I didn't then I'd just put the current multiplier in as a fixed number and then change it periodically in my config file (this is how AHL used to do it incidentally).

    This means your historic position sizes in your backtest will be 'wrong'. You shouldn't care about this.

    Rob
     
    #4466     Mar 4, 2025
  6. I shouldn't care about the historic position sizes being wrong?
    You mean this only right?
    Well, in the contracts I am allowed to trade legally almost all had their multipliers change throughout history with the aim of fixing the notional size for a long period of time, until the exchange decided to increase the notional size.

    What I have currently done is
    Let's say the futures contract multiplier for March 2025 monthly is 25.
    And for expired contracts it is 50,100,200,etc.
    So I multiply the prices of 50 lot size by 50/25.
    So I multiply the prices of 100 lot size by 100/25.
    So I multiply the prices of 200 lot size by 200/25.
    And then move ahead with the difference method of backadjusting.
    In this case my historical position sizes will not be correct. So what are my alternatives?

    but if I didn't then I'd just put the current multiplier in as a fixed number and then change it periodically in my config file. Can you please explain this with an example please?
     
    #4467     Mar 4, 2025
  7. No you don't do any of this. You don't multiply any prices by anything when backadjusting. I have no idea why you would do this? I have never said anywhere you should do this.

    You shouldn't care about historic position sizes in a backtest. You will get the correct p&l 'as if' the contract size was fixed. Your position series will be wrong given that contract sizes changed, but why should you care? In fact if it's just a backtest you could put any old number in there for your contract size.

    It's only when the backtester is used to generate live positions that the contract size needs to be correct. At which point you make sure you are using the most up to date value.

    Rob
     
    #4468     Mar 4, 2025
  8. Thank you Sir.
     
    #4469     Mar 4, 2025
  9. Kernfusion

    Kernfusion

    However, what's encouraging is this rough IB account graph, the blue line is S&P500 and the green one is my futures account since Feb 2020, of course it doesn't prove that the next time it'll do the same thing, but so far when stocks went down in a major way the system was doing the opposite:
    upload_2025-3-4_11-5-44.png
     
    #4470     Mar 4, 2025
    corsair likes this.