Trading with automation (with IB)

Discussion in 'Journals' started by fullautotrading, Sep 8, 2015.

  1. Mkt it's currently going down a bit, so the price of ES, YM, NQ, NKD slowly returning within the existing trading "corridors". We are a -5.12% underwater at the moment, but with a good "potential" (G-L is shooting up to 300K). At the same time we have a good opportunity to load on volatility ETFs (VXX, UVXY, etc) so we can create the desired hedging action against the mkt drift. CL and especially NG have been going down a lot and added up to our drawdown. Since we still have plenty of capital (current maint. margin is about 430K), it's a good occasion to load up on the inverse ETFs (SCO, DGAZ, ...) to ride the decay. In the meantime I have also rolled over ZW.

    PNL_37.png
     
    Last edited: Dec 11, 2015
    #81     Dec 11, 2015
  2. New week. Last week the mkt has been going down a bit (which for us would mean some DD recovery), but commodities too have been going down (NG, CL, SI) worsening our DD. We are currently -7% underwater, with however a good "potential" for long term profit. We have in fact built a good position with not much investment due to a good deal of hedging action. Current maint. margin is about 353K. At the same time I am slowly loading up on the inverse ETFs a long term position, just in case the mkt restarts pulling along its long term drift.

    PNL_38.png

    Friday I was a bit busy and actually overlooked the expiration of ZL contract. So it was liquidated by the broker:

    ZL_Liquidation.png

    Therefore this morning I just re-synced the position by adding the "virtual orders" on the 6 layers I had:

    ZL_resync.png

    and then made the "information transfer" to the new contract, and finally transformed the rollover fills into "players":

    ZL_AfterRollover.png

    Note that the rollover orders are quite spaced away due to contango (in this case, since we were short it acted "favorably").

    Note also that in the IB report, the closing price is reported as 0.3108, while the price which are being streamed by the broker have a "magnifier" (=100) applied to them. So the price we use for the sync is 31.08.
     
    #82     Dec 14, 2015
  3. Today it's surely time to rollover NQ, so I have "transferred" the trading information of the 6 active layers on NQZ5 to the new contract NQH6:

    NQ_Rollover.png

    The "global picture" is a good load on commodities, caused by the recent fall of NG and CL:

    PNL_39.png

    I have been loading up (manual long term positions) on DGAZ too in order to recover some NG contango and also ride the ETF decay. UVXY, which we have been loading up during the temporary decline of the mkt shows now a nice profit while the mkt indexes are temporarily going up, so it appears that riding the decay of this instrument can be quite effective (just as, I imagine, it can be effective to rip off the customers who dare use long for "hedging" purposes):

    UVXY_1.png
     
    #83     Dec 17, 2015
  4. Starting a new week. We are on day 104-th of our trading test, with about 5.3K gone in commissions. DD is slowly being "reabsorbed", since the instrument ranges are not currently increasing further, and the "fluctuations" are hence taking over. We are still a bit "underwater" (-0.10%) but with a good "potential" for long term results. Most of the $$$ is currently "invested" in commodities (CL, NG, SCO, DGAZ):

    PNL_40.png

    I am closing when possible the NQ and YM layers which are in profit, because, as said before, I intend to terminate these instruments (which essentially are mere bad "replicas" of other better ones we have in the folio).
     
    Last edited: Dec 21, 2015
    #84     Dec 21, 2015
  5. Today we have been finally fluctuating in positive-PNL territory (currently we are about 12K up):

    PNL_41.png

    Riding the volatility ETFs drift was also a good idea and, thus, we hedged nicely the DD caused by NQ and YM initial layers.
    I have decided to close UVXY and VXX: no need to be too greedy, and we might even be able to make another ride soon.

    Clearly, we are waiting for the "investment" in crude oil and gas to pay back (and the whole investment has been completely covered by the trading activity, which indicates the importance of capturing the price fluctuations, in addition to ride the longer term movements).
     
    Last edited: Dec 22, 2015
    #85     Dec 22, 2015
  6. Looks like we got our Christmas gift anyway, as today the PNL has risen to 58.8K:

    PNL_42.png

    Actually, according to the IB API our PNL is currently $66,262.90, but we know my method to compute it is more "realistic" :) (as I also include spread and commissions to close.)

    We have been trading so far for 106 days, executed 2,077 orders, commissions: about $5.5K, current PNL $58.8K, current maint margin: $258K, max maint. margin ever seen: $533K, min PNL seen, about 8% of our initial capital (or 22% of the max maint. margin).
     
    Last edited: Dec 23, 2015
    #86     Dec 23, 2015
  7. So we have arrived to Christmas eve 2015 (107 days trading) and we are up 74.2K (or 82,568.29 according to the broker computations), with 5,523,62 gone in commissions:

    IB_Account.png

    Still, we have a "potential" for profits, as commodities may still have way to go:

    PNL_43.png
     
    Last edited: Dec 24, 2015
    #87     Dec 24, 2015
  8. This morning I have rolled over the natural gas to the next contract NGH6, to avoid the early liquidation from the broker ("Physical Delivery Rules") and the need to check the trading report to re-sync the broker fills. We had 9 layers and I have transferred the "trading information" to 9 new corresponding layers (of course being long overall, the contango is working "against" us):

    NG_4.png
     
    #88     Dec 28, 2015
  9. Yesterday I noticed a conceptual issue thanks to the NG rollover ("information transfer"). It actually costed us about 25K in missed profits, but anyway it was very useful to settle once for all this conceptual matter. Let see what is this about.

    Assume we have layer, say NG or whatever instrument, and that the layer looks like this:

    RolloverSchema.png

    Now it becomes critical what we use to recreate the position. Lately I took the habit to inject players to recreate the position. Now, I can clearly see this is wrong from a conceptual standpoint. The problem is that if we inject buy a player to recreate the position, which is actually representative of orders made at a much higher price, it can be closed almost immediately because it can easily go in profit at the first retracement, so we are left only with the sell orders used to close the position, and this is actually equivalent to destroy the entire game on that layer by placing a stop at a very low price.

    Yesterday, I wasn't following the game, but when I returned in the evening I just realized how wrong was that, so I re injected out of game orders to correct the situation (we had already lost over 25K of missed move at that point, since NG was shooting up).

    Anyway, never matter, it is important that we have finally found the proper way to do the rollover:

    1- Close order (both player or out-of-game orders are fine, or virtual orders if the position was liquidated by the broker)
    2- Re-open order: an out-of-game order must be used

    So keep that in mind when rolling over.

    When closing, instead, it seems to me that is indifferent to either use a player or an out-of-game order. I would leave that to the fund manager preference. At the moment, I think it's preferable to use a player (as it would automatically recover the contango at the first chance, with an overload of the position).

    (Clearly, for instruments in backwardation, similar considerations apply.)
     
    Last edited: Dec 29, 2015
    #89     Dec 29, 2015
  10. Even though the rollover mishap, today our PNL touched 115K, while we are currently up 102K (110,354.47 according to IB):

    PNL_44.png

    I could probably close DGAZ at this point as it retraced quite a bit, and did "its job". I think I will take some risk leaving it open a few more days (decay on this stuff is anyway quite strong). For the moment, I will just flatten it, in order to reduce our overnight risk, in case I will "resume" it tomorrow.
     
    Last edited: Dec 29, 2015
    #90     Dec 29, 2015