Long-scalping equity options against time decay and market drift

Discussion in 'Journals' started by fullautotrading, Jan 31, 2022.

Thread Status:
Not open for further replies.
  1. Several people have asked me why PUTs, and not also CALLs, in this case of ES trading. The main reasons are: market drift, circuit breakers. "Unilateral" exposure where the worst-case scenario is clear and the possibility to easily switch across different greeks makes the difference between sleepless nights and "acceptable" risk. Worst case scenario would be holding a long position on an extremely low market (50%-70% down). Is this really so bad? First of all, note that one can even decide whether or not and when to be assigned, because of the continuous "information transfer" we can make. Second, with enough funds, you can "ride back" inverting to a long-constrained scalping/hedging game performed on the future itself. Or, alternatively, just "invert" your game passing to scalping (covered) call options, until you give back all your position at a much higher price. And you can imagine the results. At this point, even the worst-case scenario can be a great opportunity.

    What are the main features that mostly contribute to making this procedure profitable with acceptable drawdown or low risk?

    What makes the dd more acceptable is the fact that we can choose the amount of "sensitivity" (and volatility) we prefer by selecting the desired target instrument, among the entire option matrix. We can go gradually. And a highly optimized scalping/hedging game performed using "player superposition", helps a lot to bring down drawdown (where "player" here means essentially an order equipped with and following effective automation rules.). The decay and the drift also work constantly in our favour, through the continuous rollovers.

    As to profitability, it's essentially the combination of the hedging action of buy orders triggered by mkt corrections, and the recovery mechanism of the stop/hedging orders attained through the "information transfer" across layers. This allows us to track easily the layers that need to recover from too "damaging" hedging orders. In fact, one can take only a relatively small amount of hedging (or stop orders) in any strategy, without destroying any possibility of long term profit.

    This works and there is essentially only one way to make it fail: taking too much risk relative to available funds. For now, I am mostly keeping the margins at a level they generally take about half of the available funds (with possible temporary "overload" when some far-away option layer is very close to expiry.)
     
    Last edited: Apr 21, 2022
    #71     Apr 21, 2022
  2. In the last two days we have seen a sharp correction with ES down by several % points (last seen: 4251.25/75):

    https://www.bloomberg.com/news/arti...ing-as-half-point-fed-hikes-loom-markets-wrap

    upload_2022-4-23_17-26-56.png

    ES FUT 20220617 GLOBEX 50 E-mini S&P 500 [ESM2, 477836957, mult: 50]

    (horizontal lines here signify 1%)

    This of course caused a similar sharp drawdown, where clearly we are "loading up" for future profit (giving back more than half of profits):

    upload_2022-4-23_17-28-54.png

    Particularly "unlucky" has been the "destiny" of the option:

    ES FOP 20220422 4260 P GLOBEX 50 E-mini S&P 500 [EW4J2 P4260, 550288549, mult: 50]

    which was happily arriving at its last day with a nice profit of about 3K, and, instead, had to give all back. Due to the ES fall, it was also going to ITM so I preferred to "transfer" to another layer:

    Transfer: ES FOP 20220422 4260 P GLOBEX 50 → ES FOP 20220429 3900 P GLOBEX 50

    to avoid liquidation and stay in sync with the account:

    upload_2022-4-23_17-33-11.png

    now it looks like this:

    upload_2022-4-23_17-36-44.png

    ("disconnected" as IB doing "scheduled maintenance").

    [Probably, as a rule of some common sense, when a layer is positive and the price is getting close to the strike, it could be probably a good idea to close before the day of expiration. Maybe a lesson for next time? ]

    The sharpest DD (almost 9K) was on the closest option:

    upload_2022-4-23_17-47-4.png

    Here you can clearly see how much more sensitive the options are when "closer", and, therefore, in case one is risk-averse, it is better to keep "far away" (as decay works anyway). Clearly, as one gets close, there is more scalping activity (as you can see from the several hedging buy orders) and more potential (future) profit.
     
    #72     Apr 23, 2022
  3. Today ES recovered a little bit. Not much but the relatively small move was sufficient to get back to 38K after the DD we experienced before the weekend (the magic of "decay" :)

    upload_2022-4-26_0-10-52.png
    ES FUT 20220617 GLOBEX 50 E-mini S&P 500 [ESM2, 477836957, mult: 50]

    overall situation:

    upload_2022-4-26_0-11-22.png

    In particular, we can look at what happened to the layer which would have gone ITM with a low if we had not "transferred":

    upload_2022-4-26_0-12-26.png

    ES FOP 20220429 4080 P GLOBEX 50 E-mini S&P 500 [EWJ2 P4080, 524262149, mult: 50]
    (Transfer: ES FOP 20220502 3945 P GLOBEX 50 → ES FOP 20220429 4080 P GLOBEX 50)

    Here one can appreciate the power of this mechanism of "information transfer". A naive trader would have just taken the loss. We don't. And transform it into a profit. That's the essence of what we are doing here.
     
    #73     Apr 25, 2022
  4. Yesterday has been really wild with a sharp fall of ES. Now recovering:

    upload_2022-4-28_10-54-42.png

    See that we can make $$$ even in a falling market (with enough funds obviously).
    My PNL yesterday was practically all over the place, fluctuating wildly up and down.
    Currently bounced to around 47.9K.

    upload_2022-4-28_11-6-31.png

    The layer we "saved" from going ITM, in particular, was pretty wild:

    upload_2022-4-28_10-56-58.png

    ES FOP 20220502 3945 P GLOBEX 50 → ES FOP 20220429 4080 P GLOBEX 50

    Now it has reached 15.4K alone (largest single pnl on a layer), due to all the crazy scalping/hedging activity, after a sharp DD. (Expiring in almost 2 days).
     
    #74     Apr 28, 2022
  5. Today we got another big spike, after the fall of Friday:

    upload_2022-5-2_23-16-25.png

    enough to make the PNL jump again to 53.4K (almost 92 days elapsed now, 2M funds):

    upload_2022-5-2_23-17-25.png

    All the options 29 Apr 22 have now expired in profit. Particularly, the one we saved at the last moment, closed with a record profit of 17.6K (so more "risk" more profit):

    upload_2022-5-2_23-22-45.png
    ES FOP 20220429 4080 P GLOBEX 50 E-mini S&P 500 [EWJ2 P4080, 524262149, mult: 50]

    I have several layers expiring in 16 and 18 days, still working. The one looking worse is this one, which anyways has done a good job hedging and grabbing upward moves:

    upload_2022-5-2_23-24-52.png

    During the week I have been working quite hard on several visual (and speed) improvements to the platform. And I am pretty happy with the result (still testing hard on other machines, before putting it in production).
     
    #75     May 2, 2022
  6. Today ES retraced a bit:

    upload_2022-5-3_23-55-20.png

    The options are pretty quick to react, immediately recovering all the DD: the PNL jumped to 65.8K:

    upload_2022-5-4_0-13-2.png


    The typical behaviour of these instruments is that they do spike sharply when there is a market correction, but as soon as the price pauses or retraces, soon they give all back. For this reason, moderate volatility helps increase profits with the automated scalping/hedging action.

    Let's look at what happened to the layer that yesterday we called the "worse" one:

    upload_2022-5-4_0-4-14.png

    ES FOP 20220520 3460 P GLOBEX 50 E-mini S&P 500 [EW3K2 P3460, 529587863, mult: 50]

    suddenly it doesn't look so bad anymore :)

    And I have also shut it down (green dot), because was getting too close and risky and was taking more than half funds in margins (1.3M). Now just 900K.
    (I am probably missing some of the profits, but it's better to stick to the plan.)
     
    Last edited: May 3, 2022
    #76     May 3, 2022
  7. Significant spike up today, with the consequent joy of our options.

    upload_2022-5-5_0-49-47.png

    Profit skyrocketing to a new highwater mark of 73K, settling now to 72K.

    upload_2022-5-5_0-48-5.png

    I had to actually close several layers because the bot start hammering with new short entries all the way down, and margins raised momentarily to 1.5M. Now back to 990K.

    With the occasion of the platform update, this evening, while following the action on several machines, I also added a cute and simple little visual (colour-coded) gauge (top right of screenshot) to keep better under control of the margins usage, and also to somehow remark that this is the most crucial aspect of this trading approach.

    upload_2022-5-5_0-55-21.png

    But, I still need to find some time to test thoroughly the update, after the massive restyling and revision.
     
    Last edited: May 4, 2022
    #77     May 4, 2022
    dorietrading likes this.
  8. In order to "color code" ranges of percentage, for both the labels and gauge, I coded a simple quick class which associates colors and percentage ranges and provides both the association and the brush with the right color, for any current value:

    upload_2022-5-5_9-36-58.png

    Clearly, we can fine-tune later these values and "signal" colours to our liking and practical experience.

    Code:
    
    public class SignalBrush
    {
        public class Percentage_BrushPair
        {
            public Percentage_BrushPair(float PercentageRange, Brush Brush)
            {
                this.PercentageRange = PercentageRange;
                Brush_Signal = Brush;
            }
            public float PercentageRange;
            public Brush Brush_Signal;
        }
    
        public List<Percentage_BrushPair> PercentageRangesAndBrushes = new List<Percentage_BrushPair>();
    
        public SignalBrush(float[] Percentuali_FundsUsed, Brush[] Pennelli_FundsUsed)
        {
            // store once for all the provided custom association percentage range / color
    
            for (int h = 0, loopTo = Percentuali_FundsUsed.Count() - 1; h <= loopTo; h++)
    
                PercentageRangesAndBrushes.Add(new Percentage_BrushPair(Percentuali_FundsUsed[h], Pennelli_FundsUsed[h]));
        }
    
        public Brush Brush(double ValueToColorCode)
        {
            float SogliaDinamica = 0f;
    
            for (int h = 0, loopTo = PercentageRangesAndBrushes.Count - 2; h <= loopTo; h++)
            {
                var pb_pair = PercentageRangesAndBrushes[h];
    
                if (ValueToColorCode <= pb_pair.PercentageRange)
                {
                    return pb_pair.Brush_Signal;
                }
    
                SogliaDinamica += pb_pair.PercentageRange;
            }
    
            // assuming at least one element in custom list
    
            return PercentageRangesAndBrushes[PercentageRangesAndBrushes.Count - 1].Brush_Signal;
        }
    }
    
    

    which one would simply instantiate (for example):

    Code:
    
    public SignalBrush SignalBrush_UsedFunds = new SignalBrush(new[] { 50, 10, 10, 10, 10, 10 },
                                                               new[] { Brushes.Chartreuse,
                                                                       Brushes.YellowGreen,
                                                                       Brushes.Yellow,
                                                                       Brushes.Coral,
                                                                       Brushes.OrangeRed,
                                                                       Brushes.Red });
    

    and use wherever needed (as in the instantiation of the little gauge object):

    Code:
    
    SmallGauge = new SmallGauge(SignalBrush_UsedFunds, center, size, ... whatever ...);
    
    

    This way one can later easily change the percentage ranges and colours at will in just one place and it will reflect everywhere, for easy maintenance (in fact it will change both the color code association with values and also the "structure" and label within the gauge itself, as the "SignalBrush" object is passed as a constructor parameter and also used for the drawing of the little gauge).
     
    Last edited: May 5, 2022
    #78     May 5, 2022
  9. I admire all the work you have done!
    Do you trade this with real money or do you use a demo account?

    Max margin was 1.3M, profit 73K so you made around 5.5%?
     
    #79     May 5, 2022
    fullautotrading likes this.
  10. Thank you dorietrading.

    That result (73K) in the periodic public paper trading illustration is referred to as a period of 94 days (2M funds). One would normally use half of the available funds (that is the purpose of the "little gauge"), with temporary "overload" on special occasions. This approach is expected to yield around 10-13% per year, keeping generally acceptable risk (clearly, more or less: it can vary a lot depending on several factors and risk taken).

    In all the experiences I have done (in the last 2 decades) from what I can see, this approach with ES options is by far the most liked by traders decently funded. (And I have tried many approaches.)

    I trade this real money and actually, it is not only me, but now I have now a number of (suitably funded) investors (some of them much larger than myself) who I have equipped with the algorithmic platform. [Actually, lately, I have been literally bombarded with new requests, and most of my spare time just goes cycling over their machines to follow and assist them. But it's an enriching experience because I also get much from the continuous interaction and their questions or doubts.]

    [I have also the idea to extend this to commodities (scalping suitable strangles in that case). But that, obviously, would be a game for really very few, very large investors.]

    As you correctly noted, keeping risk under control is a big and crucial part of the "game". And sometimes even experience is not enough to avoid greed or impatience. But one has to make a disciplined effort ... and some little visual remainder can also be useful, especially when one is taken by many other things of life.
     
    Last edited: May 5, 2022
    #80     May 5, 2022
Thread Status:
Not open for further replies.