⤴️-Paid Ad- Check advertising disclaimer here. Add your banner here.🔥
axsx
Members-
Posts
46 -
Joined
-
Last visited
Content Type
Profiles
Forums
Articles
Everything posted by axsx
-
@kimsam what prep we have to do to install your share when you post it ? Do we have to subscribe to LLM like Gemini mentioned earlier ?
-
@kimsam Can you please post the latest kimsamgex when you get time. Thanks
-
@kimsam SPX charts with old and new versions. Old version works perfectly, schwab fetches SPX option chain ( I think it is not fetching spy, you can verify in code). The new version, auto convert is false, price multiplier is 1, connect symbol is SPX. The fetch of SPX fails. Can you check why ? my guess is due to return code of 400, the API call in the latest version of code might have an issue. I checked with NQ similarly, I see the same issue. NDX also same issue.
-
@kimsam pl use a free LLM like olluma with a local LLM engine.
-
I think one important decision to make is For nq and es futures we have to do autoconvert, the symbols to be used are SPY and QQQ. For any other instrument, we have to use it directly in schawab to see if we get the option chain, if not we have to map to a closet ETF option chain stored in a internal table/array. this is with no autoconvert flag in the NT indicator parameters. Giving price multiplier and offset without autoconvert flag will be misleading. all thee or none imo.
-
-
NQ chart and connect symbol is blank. Rest defaults (price multiplier is 10 defaults). Truth engine uses QQQ to get option chain and convert, but spot price is wrong in dashboard. I dont see the put and call and flip etc.
-
SPY chart and connect symbol is blank, price multiplier is 1 and offset is 0. convert = yes in dashboard (maybe it has to be NO)
-
-
I have used the corrected cs file you uploaded and replaced the old one. The above results are with the uploaded cs file
-
ES chart connect symbol blank, price multiplier is 1 or 10. dashboard shows correctly. but levels on charts are again too off for GEX, strike range is 10% offset shown is -58253.75
-
for spy chart with connect symbol blank, price multiplier 1 or 10 does not make a difference, dashboard looks like divided by ten or decimal position needs to be shifted to the right. Looks like display issue. offset always shows -191.11 on a SPX chart withconnect symbol set to SPY and price multiplier 10, offset shows as 3820.79 and dashboard shows 63.48 (either two decimals shift or it is dividing spy by 10). On a spx chart with connect symbol set to SPX price multipler 1 or 10; the py script tries spy first then starts trying alternate ones like spx ^spx $spx etc. the option chain never gets fetched even if strike range is reduced. the 502 error or indication of api call status is not output in the py console.
-
@kimsam This is spy chart with symbol blank ; we have a catch 22 situation, price multiplier is actually dividing in the dashboard. the lines on chart not sure if they are correct either. spy cannot have a peak flip of 448. do you get the same if on a spx chart I add the indicator with symbol SPY, even if the price multipler is 10, it divides it on the dashboard and does not shows the levels converted to 63xx range for spx. Since the auto convert flag is not there, there is ambugity of what price offset field does without this auto convert flag. Please check this. Dashboard should in header say SPY-53011 port; currently port is missing and convert levels flag status somewhere Convert : Yes or No. One more thing I noticed, if I want to change the price offset from the indicator parameter maintennace window, it keeps coming back again even if I wipe it off using backspace. I am not sure why In previous version the we have P # 1 and say C #1 in this version we dont see a number after P and C . Now are these just some high concentraction of GEX or irrespective of puts or calls we want to name them as GEX 1, GEX 2, GEX 3, GEX 4 that denote the highest to lowest of exposure. This question I had posed earlier in one of my posts. We need to know what the P and C levels are on the chart and what do they denote. In the dashboard GEX ratio or something like that is needed. as the absolute call‑gamma versus put‑gamma ratio.
-
Maybe you have forgotten to include GexLevel.cs or a class definition ? @kimsam To get around this I changed SchwabGEXPro to KimSamGex and added in the class attribute level as a double
-
Any chance of update today before market close to test ?
-
cannot wait to install this. thanks for adding pin force , max pain, Gamma regime etc.....
-
@kimsam Few ideas to consider in your next updates 1. Calculate gamma intensity based on expiry distribution. Determines what % of total gamma expires in the next 7 days. Higher % = more sticky levels (scalp only) Lower % = more flexible levels (can hold longer). if > 65 ==> EXTREME > 50 HIGH > 35 MODERATE > 15 LOW 2. Stability score as a weighted mix of gamma concentration and distance from the gamma flip level. Compute gamma concentration: concentration=std(TotalGamma) / max(TotalGamma)−min(TotalGamma)concentration (or 0 if the range is 0). Compute normalized distance from flip flip_stability=min(100, ((spot_price − gamma_flip) *1000)/spot_price) Combine them into one score: stability=40*concentration+60*flip_stability Then label the regime based on that numeric stability value: If stability < 30 → "UNSTABLE". If 30 ≤ stability < 60 → "MODERATE". If stability ≥ 60 → "STABLE". 3. Pin force : Directional pin pull strength (index-style 0–100+ score). Positive = pin above spot (upward pull), negative = pin below spot. Steps could be : a) Get gamma at pin (or nearest strike) b) Normalize by total absolute gamma (how concentrated this pin is) c) Penalize by distance in % terms d) Add direction and calculate Pin force. 4. Flow divergence : YES if volume and OI point opposite directions divergence = abs(call_vol_pct - call_oi_pct) > 0.15
-
I think for ES you just have to have blank in connect symbol and it will auto convert levels from $SPX. You chart on which you load should be ES chart. I think this is how I got it working. also make sure the flag for offset is checked
-
MAX PAIN addition if possible. For a candidate settlement price P: Call payoff at strike K: max(0,P−K)×OI_call[K]max(0,P−K)×OI_call[K]. Put payoff at strike K: max(0,K−P)×OI_put[K]max(0,K−P)×OI_put[K]. Total payout to all option holders at P: TotalPayout(P)=∑K[max(0,P−K) OI_call[K]+max(0,K−P) OI_put[K]]TotalPayout(P)=K∑[max(0,P−K)OI_call[K]+max(0,K−P)OI_put[K]] You want the P that minimizes the above function if the Truth Engine has per‑strike open interest and option type, For each candidate settlement price, compute total payoff to calls and puts using OI. Choose the price with minimum total payout. This is the Max Pain level. Max Pain is the strike where option writers (dealers) pay out the least at expiration, i.e., where total option holder P&L is minimized. def calc_max_pain(call_oi, put_oi): strikes = sorted(set(list(call_oi.keys()) + list(put_oi.keys()))) if not strikes: return 0.0 best_price = strikes[0] best_payout = float('inf') for p in strikes: payout = 0.0 # Calls: holders get paid when price finishes ABOVE strike for k, oi in call_oi.items(): if oi <= 0: continue intrinsic = max(0.0, p - k) payout += intrinsic * oi # Puts: holders get paid when price finishes BELOW strike for k, oi in put_oi.items(): if oi <= 0: continue intrinsic = max(0.0, k - p) payout += intrinsic * oi if payout < best_payout: best_payout = payout best_price = p return best_price
-
Call/ Put walls or GEX 1 , GEX 2 GEX 3 and GEX 4 lines ? The Truth Engine is implemented per screen shot with “Put X @ level, Call Y @ level, FLIP, PEAK” is plotting discrete liquidity pockets (size of put/call open interest or gamma at specific strikes is it so ?), the primary gamma‑flip level, and the single strike with maximum absolute gamma (PEAK), are these the GEX 1 , 2, 3 and 4 levels ? Call Wall / Put Wall: strikes with the largest positive/negative call and put gamma exposure, aggregated across expiries. Gamma Wall: strike with the largest absolute total gamma ( I think you call it as PEAK ), Gamma Flip is FLIP in your screen shot, MAX PAIN (not yet in your charts), I think is theoretical minimum P&L point for options holders. This would mean expanding the range of metrics your system outputs without limiting to single “peak” and “flip” line. In the nt script, all these should be selectable for display via check boxs. Currently everything is displayed. In summary, I think what is needed is Flip, Peak, GEX1–4, Call Wall, Put Wall, Max Pain level.
-
You can also add the conversion ratio ( say QQQ to NDX is 1:42) and GEX Ratio: 0.48 ; Flow Ratio: 1.00; Strike filter (±3%); distance_from_flip; Gamma Intensity: MODERATE ==> --> 42.8% expiring in 7 days; Market Stability: STABLE; Pin Force: +0.0014 and Pin Confidence (if available). few of these may not fit into the model of realtime publication of your important metrics that is currently implemented, but this could act as a overall session summary metrics or a different timeframe summarization like 30min summarization. some ideas GEX_SUMMARY| spot=…;flip=…;peak=…;net=…; pos_wall=…;neg_wall=…; vol_zero=…;vol_pos=…;vol_neg=…; vix_regime=Risk-Off;vix_multiplier =1.35; hmm_regime=BULL;hmm_conf=0.8 Divergence flags: price crossing flip while net GEX sign unchanged, etc. VIX adjusted walls = Flip × VIXMultiplier, PosWall × VIXMultiplier, etc. GammaRegime = {LongGamma, ShortGamma} Distance from flip = (future price - schwab flip) / ATR volume weighting vs OI weighting. some of the ideas I am writing so that you can think about.
-
-
Great tool to get Gamma Flip level, Peak Gamma (strike with highest absolute GEX), Top 5 call/put walls, net GEX, the unique way you have addressed Fills missing Schwab gammas with a clean Black–Scholes fallback and logs live vs BS fill percentage . Please include if you can volume‑based GEX (flow‑oriented), major positive/negative GEX by volume, zero‑gamma by volume. Ability to filter out far end strikes, ability to export to csv file, png chart output, support for CBOE API (free), buttons appear in the middle of the chart and can be pushed to the top. dashboard toggle. The truth engine keeps on running every 3mins. a configurable parameter needed. Disconnect/Connect can be expanded to shut down the truth engine as I see it runs whenever the chart is loaded. One more thing is Top GEX markers P #5 | 3.16B, include the price level also like P#5 | 3.16B | 24250 for example.
-
the truth engine runs every 3 mins. Can you provide a parameter in the cs file to control this ? say default 30min and overide 3min or user sets the time in minutes. ? What is the offset price check mark (converted levels ?). Another parameter in the NT script would be % of Option expiration that should be used in the GEX calculation. Currently I am not sure if the engine is using all the 1400s option chain expiry