trendmanagement / Tmqr-framework-2

3 stars 0 forks source link

A number of difficult questions. #65

Open nikolas-joyce opened 6 years ago

nikolas-joyce commented 6 years ago

trying to demonstrate the degree to which moves in a down channel are muted compared to moves in up channel condition. I have been working with the idea of using a .80 delta hedge for out of trend moves and .20 delta hedge for in trend moves.

i am also trying to establish if there is a way to target a ATR budget of each long/ short strategy plus the respective hedge legs. here is the example. image

here is a orange long alpha on CL a ATR sensitive, keltner risk reversal hedge in blue targeting $1000 of delta in the notebook below. https://10.0.1.2:8889/notebooks/Kelt_Risk_Reversals/SmartEXO-RiskReversal-CL-KeltnerChannel%20%2B%20delta%20multiplier.ipynb

https://10.0.1.2:8889/notebooks/alphas/Alpha%20V1%20Risk%20Reversal%20Hedge-CL-Multi%20V2%20Indexes.ipynb

when we target $1000 as the ATR for 1 delta we get a realized ATR for the cumulative (alpha plus hedge leg ) of $300-400. can anyone see a way to map the required dollarATR to the fixed fractional positions size like 2-3% of capital?

image

additionally we seem to be getting deltas for the dynamic hedge leg that seen to be larger than we would expect.

here is the example of the deltas . image

we would expect the green bar plus the pink to not ever be more than 0 or less than 1

there seem to be some times where the net delta is negative. i cannot explain this based on the delta multiplier function.

i have made a campaign made of these 2 components that allows us to view the payoff diagram for the periods that have odd deltas here.

https://10.0.1.2:8888/notebooks/campaign_management/Campaign_Bidirectional_CL_ContFut_DSP%20for%20production_Sept5_w_enhancement-Copy%20ofr%20git%20.ipynb

image

To emphasize the goal is to alter the realized ATR of a set of alpha plus hedge to match some risk budget. Can we take a good futures alpha a get a version of it that targets x$ of realized ATR to the total portfolio plus increases the exposure to the futures signal when in phase and mutes the signal when out of phase? thx

alexveden commented 6 years ago

a ATR sensitive, keltner risk reversal hedge in blue targeting $1000 of delta in the notebook below. https://10.0.1.2:8889/notebooks/Kelt_Risk_Reversals/SmartEXO-RiskReversal-CL-KeltnerChannel%20%2B%20delta%20multiplier.ipynb

I'm trying to understand the ATR logic and little bit concerned right now.

There the code snippet:

       tick_value = 10 * 100
        target_risk= 500

        atr = ATR(ohlc.h, ohlc.l, ohlc.c, 10)
        dollar_atr = atr * tick_value

       ....    'delta_multiplier': dollar_atr / target_risk

Later in position management part:

 # Open the position when keltner channel is down
            pos.add_transaction(dt, opt_chain.find(dt, min(0.99, 0.50*logic_df['delta_multiplier']), 'P', how='delta'), 1.0)
            pos.add_transaction(dt, opt_chain.find(dt, min(0.99, 0.30*logic_df['delta_multiplier']), 'C', how='delta'), -1.0)

Later the strategy.run() output: print('Delta multiplier', logic_df['delta_multiplier'])

Delta multiplier 1.96910574272 Delta multiplier 2.07419516845

I would say this algorithm has issues in delta multiplier calculations, I think the following is correct:


       #  Flip delta and    target_risk
       ....    'delta_multiplier': target_risk / dollar_atr

Later in position management part:

 # Open the position when keltner channel is down
            pos.add_transaction(dt, opt_chain.find(dt,  logic_df['delta_multiplier'], 'P', how='delta'), 1.0)

Solution: Let the $ATR(10 days) = $3000 Let the Target Risk = $500

In other words, to get targeted risk for the position we need to open $500/$3000=0.166 contracts of the underlying futures. In fact, this is your target delta!

Using the current formula in the notebook the target delta becomes, $3000/$500*0.5 = 3 -> then min(0.99, 3.0) -> 0.99

nikolas-joyce commented 6 years ago

So the futures will have a delta of 1 and the required hedge will have a delta of -.84 to get the total delta of .16, correct? Will this result in a realized dollar atr for the futures plus the hedge of around $500? How can we prove this?

alexveden commented 6 years ago

So the futures will have a delta of 1 and the required hedge will have a delta of -.84 to get the total delta of .16, correct?

I'd say that I'm asking another question: which delta / size should be opened to maintain volatility of the position around $500.

Or I understood something wrong?

nikolas-joyce commented 6 years ago

You are correct what position to open to maintain a certain dollar value of a delta.

Sent from my iPhone

On Oct 12, 2017, at 10:20 AM, alexveden notifications@github.com<mailto:notifications@github.com> wrote:

So the futures will have a delta of 1 and the required hedge will have a delta of -.84 to get the total delta of .16, correct? I'd say that I'm asking another question: which delta / size should be opened to maintain volatility of the position around $500.

Or I understood something wrong?

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHubhttps://github.com/trendmanagement/Tmqr-framework-2/issues/65#issuecomment-336206461, or mute the threadhttps://github.com/notifications/unsubscribe-auth/ARobLFblpVj5zpuLjkwbgj1i3tXenEPRks5srkpjgaJpZM4P0vJ5.

nikolas-joyce commented 6 years ago

i wanted to share some images to see if they could help focus this conversation. these are meant to represent the realized dollar ATR of the campaigns for a number of products. first the ES

image average $ 700 of risk spiking to twice that value.

second CL image averaging $700-$1000 of risk. spiking to 2 times that.

third ZC image

dollar ATR contribution of $300-400 on average spiking to 2-3 times that.

fourth 6J image Averaging $400-600 of risk with 2-3 time that in spikes.

I think this may argue for some kind of change in risk reversal delta but only under more extreme conditions other wise we could be trading to match some moving target that will not have much positive impact on the PNL. Or perhaps increasing the size of the hedge counter cyclically. anyone else have an implementation idea. thx

alexveden commented 6 years ago

How to build option position according to the dollar targeted volatility ?

This is non-trivial task, because of:

  1. Option position has non-linear payoff => volatility
  2. Because of time decay the position gamma changes and lead to non-linear position volatility during lifetime of options
  3. Option position not always have maximum risk on the ends. Some positions like long straddles have max risk at the ATM strike.

The idea

Using payoff diagram principles simulate a payoff of the position using multiple price outcomes. The time decay of the position can be simulated by estimating average holding period in days.

The risk of the position - maximum loss in any strike within ATR +/- 2/3 range from ATM strike + time to expiration simulation.

Pros

Cons

To be discussed:

  1. I don't think that it is a good idea to select deltas and strikes of options position using risk targets, better to use position size for this purpose. Strike selection is an art of options trading because it helps achieve the profit even when the base prediction of the price wasn't so good.

  2. It is possible to use fractional position quantities for this framework, what do you think about to use fractional qty'es and then at the account execution phase execute the rounded qty of the option position according to account size.

p.s. here is the notebook where you can play with different options positions. Also, I've implemented simple payoff diagrams for V2 options positions.

https://10.0.1.2:8889/notebooks/Kelt_Risk_Reversals/ATR%20Position%20Sizing.ipynb

nikolas-joyce commented 6 years ago

I thInk we should try to do the atr targeting at the campaign level as an overlay to the regular net position that comes off the campaign. If we have a delta of 1.2 and delta is $1000 atr and we are targeting $600 of Dollar atr Then the hedging position to target a reduction of exposure can be applied to the net position as opposed to the individual alphas in a campaign. If we need to increase our risk in an environment where we are building equity we can add on a put or call spread from our existing v2 EXOs that add the desired dollar atr. At the moment I have put and call spreads with 200-300 $ Atrs so could start with a dollar risk of 500-1000 $atr and add the out or call spread every time add 300-400 to the PNL to reflect reinvestment or an anti martingale. What do you think?