How can i bring this system to the next level

Discussion in 'Professional Trading' started by Dekor, Jul 16, 2017.

  1. Dekor

    Dekor

    All entry's are based on the previous bar close.
    So lets say the previous up bar close was 152'10, now the current market ask is 152'11, so a limit buy order will be placed at market ask 152'11. So as long as price didn't move higher i will get filled at 152'11. If the market jumps 5 ticks in one go, the order still will be at 152'11 and not 152'16.
     
    #21     Jul 16, 2017
  2. In your simulated testing how are your fills being assumed on your limit orders? I wrote a system that performed beautifully in a simulated environment with a win rate in the mid 70% range, average winner 50% larger than average loser etc but the simulated environment gave me a fill when price touched my limit. Real world I missed a lot of entries and exits with real money and it threw the whole system off.

    What I have found for automated scalping is the system is only half the battle. Execution is the other half.
     
    #22     Jul 16, 2017
  3. Dekor

    Dekor

    A large part of the results are live tested.
    Partial fills are no problem since the limit orders are placed at the current market bid/ask so i get filled immediately unless the market moved past my entry price.
     
    Last edited: Jul 16, 2017
    #23     Jul 16, 2017
  4. Dekor

    Dekor

    I must add that it could happen that the current ask or bid is not large enough to completely fill my position but then the remaining contracts will be first in line to get filled at the new current bid/ask.
    If this doesn't happen the system adjusts its limit profit orders to the size that got filled.
    However this is unlikely to happen since ZB has quite some depth in the book, definitely with smaller contract sizes.
     
    #24     Jul 16, 2017
  5. wintergasp

    wintergasp

    Right, thanks for explaining me what limit orders are...

    A) when you're not filled, you will lose P&L and you will always not be filled in winning trades and be filled on losing trades (as losing trades go through your price).

    B) if you're in the market and your take profit or stop loss is not hit, (or rather, it's hit but your limit order then never gets filled), you can end up losing much more than your simulation, so you need to have a hard market stop.

    At the end of the day, limit orders are not free, there is a cost in terms of trades missed and losses badly exited... you might not see that cost straight away as you might have been lucky on your fills so far.
     
    #25     Jul 16, 2017
  6. Since N / sqrt(N) = sqrt(N). the above equation simplifies to this:

    Sharpe(annualized) = sqrt(251) * (average_daily_return) / (stdev(daily_returns))
     
    #26     Jul 16, 2017
  7. Dekor

    Dekor

    You are welcome :D
    Of course a simulation or forward test can never factor in al these scenario's 100%.
    During the live testing however results where extremely close to the simulation, so how things will go from here, that is anyone's guess. At least results look very promising and that is what it is all about for me, nobody can tell what will happen in the future.
     
    #27     Jul 16, 2017
  8. Dekor

    Dekor

    Using this calculation i get the same result, 14.79.
     
    #28     Jul 16, 2017
  9. Yep, the profit per trade is razor thin, and is vulnerable to the slightest slippage and execution inefficiencies. The other thing that the OP did not disclose was the commission assumptions. With less than 1 tick profit per trade, this could easily be wiped out by round-turn commissions.
     
    #29     Jul 16, 2017
  10. If you post the return figures for each of the 257 trades, we'll verify the Sharpe ratio. Actually, the daily returns for the last 10 months would be more convenient.
     
    #30     Jul 16, 2017