{"schema_version":1,"publisher":"Half on a Double","data_through":"2026-10-02","frequency":"end-of-day","methodology":"market-implied-carry-v1","generation":"market-implied-carry-analytics-20260917T000000Z","canonical_url":"https://halfonadouble.com/stock/IOT","markdown_url":"https://halfonadouble.com/stock/IOT.md","history_url":"https://halfonadouble.com/api/v1/history/IOT.csv","advanced_analysis_url":"https://halfonadouble.com/api/v1/analysis/IOT.json?date=2026-10-02","definitions_url":"https://halfonadouble.com/methodology.md","license_url":"https://halfonadouble.com/terms.md","disclaimer_url":"https://halfonadouble.com/disclaimer.md","symbol":"IOT","page_tier":"A","units":{"prices":"USD per share","open_interest":"option contracts","gamma_exposure":"modeled dollar-delta change per USD 1 underlying move","gamma_exposure_normalized":"modeled gamma exposure per 100,000 open option contracts","distances":"percent of close","forward_outcomes":"close-to-close percent return"},"snapshot":{"close":41.119998931884766,"previous_close":40.040000915527344,"delta_neutral":35.21224706096108,"gamma_neutral":33.17946617750789,"gamma_max":45.14268946331694,"total_open_interest":134270,"previous_open_interest":136805,"listed_contracts":430,"listed_calls":260,"listed_puts":237,"gamma_max_distance_pct":9.782807966740851,"delta_neutral_distance_pct":-14.367101226607199,"gamma_neutral_distance_pct":-19.3106346318986,"open_interest_change_1d_pct":-1.8530024487409085,"call_open_interest":89883,"put_open_interest":44387,"put_call_open_interest_ratio":0.49383086901861306,"nearest_expiration_max_pain":40,"nearest_expiration_max_pain_expiry":"2026-10-09","nearest_expiration_max_pain_distance_pct":-2.723732881754308,"all_expiration_max_pain":35,"net_gamma_exposure":9367939.278665138,"net_gamma_exposure_per_100k_open_interest":6976941.445345302,"gamma_exposure_flip":33.17946617750789,"gamma_exposure_flip_distance_pct":-19.3106346318986,"call_wall":45,"call_wall_distance_pct":9.435800508026404,"put_wall":28,"put_wall_distance_pct":-31.906613017228015,"gamma_max_cross_direction":null,"delta_neutral_cross_direction":null,"open_interest_rank":529},"history_summary":{"first_date":"2021-12-22","last_date":"2026-10-02","session_count":1127,"trailing_window_sessions":252,"sessions_above_gamma_max_pct":3.1746031746031744,"gamma_max_cross_count":8,"delta_neutral_cross_count":20,"gamma_max_prior_sessions_closer_pct":38.492063492063494,"gamma_max_prior_comparison_sessions":252,"delta_neutral_prior_sessions_closer_pct":78.96825396825396,"delta_neutral_prior_comparison_sessions":252,"open_interest_percentile_1y":55.55555555555556,"open_interest_change_1d_contracts":-2535,"open_interest_change_z_252":-0.22692183470401275,"open_interest_change_z_comparison_sessions":252,"open_interest_change_5_sessions_pct":3.892787780778248,"open_interest_change_21_sessions_pct":-3.1247970793861515,"call_put_open_interest_changes":{"one_session":{"call_change_contracts":-1615,"put_change_contracts":-920,"call_growth_pct":-1.7650659030798488,"put_growth_pct":-2.030591299357715,"call_minus_put_growth_pp":0.2655253962778661},"five_sessions":{"call_change_contracts":4345,"put_change_contracts":686,"call_growth_pct":5.079613738923052,"put_growth_pct":1.569758129104597,"call_minus_put_growth_pp":3.509855609818455},"call_change_surprise":{"z_score":-0.20906529186827374,"comparison_sessions":252},"put_change_surprise":{"z_score":-0.22559651737158387,"comparison_sessions":252},"call_minus_put_growth_surprise":{"z_score":0.015413686066494963,"comparison_sessions":252}}},"advanced_options":{"data_through":"2026-10-02","analysis_coverage":1,"catalyst_score":64.993884731114,"directional_score":31.929133858267715,"catalyst_reasons":["25Δ risk reversal -148.0 pp","smile convexity -17.6 pp","front IV premium 0.5 pp"],"features":{"symbol":"IOT","price":41.12,"totalOi":141602,"analysisCoverage":1,"avgIvPct":161.6,"ivRank":41,"iv52wHighPct":295.2,"iv52wLowPct":68.8,"frontDte":7,"frontAtmIvPct":53.2188,"backAtmIvPct":52.6751,"termPremiumPp":0.5437,"expectedMoveFrontPct":7.37,"straddleFrontPct":5.29,"straddle30dPct":11.98,"riskReversalFrontPp":-147.98,"riskReversal30dPp":-3.48,"butterflyFrontPp":-17.56,"butterfly30dPp":7.65,"putCallOiRatio":0.471,"putCallOiFrontRatio":1.328,"putCallVolumeFrontRatio":0.26,"optionVolume":6875,"volumeOiRatio":0.048552,"netDeltaNormalized":0.188447,"dealerDeltaNormalized":-0.17991,"gexPer100kOi":2934618.218669,"vannaPer100kOi":2266.917134,"charmPer100kOi":-523455.177187,"weekendDeltaShiftPer100kOi":-1570365.53156,"ivSurfaceRangePp":161.7,"gammaFlipDistancePct":1.532101,"maxPainDistancePct":-12.451362,"peakCallDistancePct":-0.291829,"peakPutDistancePct":-0.291829},"complete_analysis_url":"https://halfonadouble.com/api/v1/analysis/IOT.json?date=2026-10-02","interpretation":"Catalyst intensity ranks unusual option pricing and activity; it does not identify the event, predict direction or recommend a trade. Directional score summarizes relative positioning under documented model conventions."},"gamma_max_cross_outcomes":[{"direction":"above","event_count":26,"completed_path_count":26,"latest_cross_date":"2026-07-13","horizons":[{"sessions":1,"sample_size":26,"median_return_pct":-0.8742725599508228,"p25_return_pct":-1.7572641694189124,"p75_return_pct":0.005530727331337637,"above_zero_pct":26.923076923076923,"median_interval_low_pct":-1.5656878747870362,"median_interval_high_pct":-0.17475757784056745,"median_interval_nominal_coverage_pct":92.44813024997711,"confidence_floor_pct":-0.17475757784056745},{"sessions":3,"sample_size":26,"median_return_pct":0.1408767553477741,"p25_return_pct":-3.9174236926449337,"p75_return_pct":1.9733747722253947,"above_zero_pct":50,"median_interval_low_pct":-1.7209930848860133,"median_interval_high_pct":1.7105544993124555,"median_interval_nominal_coverage_pct":92.44813024997711,"confidence_floor_pct":0},{"sessions":5,"sample_size":26,"median_return_pct":1.3826860440031563,"p25_return_pct":-7.047747022375464,"p75_return_pct":4.322018618822115,"above_zero_pct":61.53846153846154,"median_interval_low_pct":-2.5713716814296017,"median_interval_high_pct":2.660646007106404,"median_interval_nominal_coverage_pct":92.44813024997711,"confidence_floor_pct":0},{"sessions":10,"sample_size":26,"median_return_pct":1.5532291130040843,"p25_return_pct":-5.920993542221997,"p75_return_pct":8.767115714659369,"above_zero_pct":57.692307692307686,"median_interval_low_pct":-4.755831923385201,"median_interval_high_pct":7.824015297151199,"median_interval_nominal_coverage_pct":92.44813024997711,"confidence_floor_pct":0}]},{"direction":"below","event_count":25,"completed_path_count":25,"latest_cross_date":"2026-07-14","horizons":[{"sessions":1,"sample_size":25,"median_return_pct":0.22807945939185004,"p25_return_pct":-2.106034174921456,"p75_return_pct":1.9171271767453923,"above_zero_pct":56.00000000000001,"median_interval_low_pct":-1.5248762423884954,"median_interval_high_pct":1.8774478470683365,"median_interval_nominal_coverage_pct":95.67147493362427,"confidence_floor_pct":0},{"sessions":3,"sample_size":25,"median_return_pct":1.7676810855318248,"p25_return_pct":-3.8591906157050992,"p75_return_pct":3.848233361045894,"above_zero_pct":64,"median_interval_low_pct":-3.586632698470338,"median_interval_high_pct":3.137251842995603,"median_interval_nominal_coverage_pct":95.67147493362427,"confidence_floor_pct":0},{"sessions":5,"sample_size":25,"median_return_pct":2.4619985441538983,"p25_return_pct":-6.050247882478798,"p75_return_pct":5.944670799941321,"above_zero_pct":60,"median_interval_low_pct":-3.650580878448717,"median_interval_high_pct":5.29694899993165,"median_interval_nominal_coverage_pct":95.67147493362427,"confidence_floor_pct":0},{"sessions":10,"sample_size":25,"median_return_pct":1.6260120577509918,"p25_return_pct":-5.0709334470641965,"p75_return_pct":14.767718521986728,"above_zero_pct":60,"median_interval_low_pct":-5.005028499430752,"median_interval_high_pct":10.532207958484129,"median_interval_nominal_coverage_pct":95.67147493362427,"confidence_floor_pct":0}]}],"missing_value_semantics":"null means unavailable; it never means zero","interpretation":"These are descriptive end-of-day model outputs. Signed GEX uses the published call-positive, put-negative convention and is not observed dealer inventory. None of the fields are live prices, predictions or investment advice."}