{"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/CSIQ","markdown_url":"https://halfonadouble.com/stock/CSIQ.md","history_url":"https://halfonadouble.com/api/v1/history/CSIQ.csv","advanced_analysis_url":"https://halfonadouble.com/api/v1/analysis/CSIQ.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":"CSIQ","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":11.1850004196167,"previous_close":11.270000457763672,"delta_neutral":9.581261117056098,"gamma_neutral":3.76670535110249,"gamma_max":14.79515799528745,"total_open_interest":155564,"previous_open_interest":159512,"listed_contracts":383,"listed_calls":237,"listed_puts":166,"gamma_max_distance_pct":32.27677639903448,"delta_neutral_distance_pct":-14.338303463519766,"gamma_neutral_distance_pct":-66.32360116414219,"open_interest_change_1d_pct":-2.4750488991423842,"call_open_interest":118516,"put_open_interest":37048,"put_call_open_interest_ratio":0.3125991427317831,"nearest_expiration_max_pain":11.5,"nearest_expiration_max_pain_expiry":"2026-10-09","nearest_expiration_max_pain_distance_pct":2.8162679353220406,"all_expiration_max_pain":14,"net_gamma_exposure":3050140.20142234,"net_gamma_exposure_per_100k_open_interest":1960697.9773098787,"gamma_exposure_flip":3.76670535110249,"gamma_exposure_flip_distance_pct":-66.32360116414219,"call_wall":20,"call_wall_distance_pct":78.81090075708181,"put_wall":10,"put_wall_distance_pct":-10.594549621459096,"gamma_max_cross_direction":null,"delta_neutral_cross_direction":null,"open_interest_rank":483},"history_summary":{"first_date":"2020-12-01","last_date":"2026-10-02","session_count":1394,"trailing_window_sessions":252,"sessions_above_gamma_max_pct":14.285714285714285,"gamma_max_cross_count":31,"delta_neutral_cross_count":0,"gamma_max_prior_sessions_closer_pct":93.25396825396825,"gamma_max_prior_comparison_sessions":252,"delta_neutral_prior_sessions_closer_pct":2.7777777777777777,"delta_neutral_prior_comparison_sessions":252,"open_interest_percentile_1y":15.873015873015872,"open_interest_change_1d_contracts":-3948,"open_interest_change_z_252":-0.4916768815767162,"open_interest_change_z_comparison_sessions":252,"open_interest_change_5_sessions_pct":1.1383953241923634,"open_interest_change_21_sessions_pct":-8.955022971351651,"call_put_open_interest_changes":{"one_session":{"call_change_contracts":-2436,"put_change_contracts":-1512,"call_growth_pct":-2.014022091408162,"put_growth_pct":-3.921161825726141,"call_minus_put_growth_pp":1.9071397343179788},"five_sessions":{"call_change_contracts":1280,"put_change_contracts":471,"call_growth_pct":1.0918148009143949,"put_growth_pct":1.2876944527982066,"call_minus_put_growth_pp":-0.19587965188381173},"call_change_surprise":{"z_score":-0.45229391880815667,"comparison_sessions":252},"put_change_surprise":{"z_score":-0.46906689002311447,"comparison_sessions":252},"call_minus_put_growth_surprise":{"z_score":0.2638445245969098,"comparison_sessions":252}}},"advanced_options":{"data_through":"2026-10-02","analysis_coverage":0.9444,"catalyst_score":41.58769433875375,"directional_score":18.425196850393696,"catalyst_reasons":["7d expected move +9.5%"],"features":{"symbol":"CSIQ","price":11.19,"totalOi":159894,"analysisCoverage":0.9444,"avgIvPct":306.8,"ivRank":83.6,"iv52wHighPct":345.6,"iv52wLowPct":108.36,"frontDte":7,"frontAtmIvPct":68.5273,"backAtmIvPct":80.5138,"termPremiumPp":-11.9865,"expectedMoveFrontPct":9.49,"straddleFrontPct":7.38,"straddle30dPct":15.87,"riskReversalFrontPp":-1.21,"riskReversal30dPp":-9.55,"butterflyFrontPp":null,"butterfly30dPp":null,"putCallOiRatio":0.316,"putCallOiFrontRatio":0.337,"putCallVolumeFrontRatio":2.082,"optionVolume":2700,"volumeOiRatio":0.016886,"netDeltaNormalized":0.078026,"dealerDeltaNormalized":-0.078027,"gexPer100kOi":230789.197844,"vannaPer100kOi":6970.242786,"charmPer100kOi":-709.845272,"weekendDeltaShiftPer100kOi":-2128.910403,"ivSurfaceRangePp":150.7,"gammaFlipDistancePct":51.385165,"maxPainDistancePct":16.175156,"peakCallDistancePct":-1.697945,"peakPutDistancePct":2.770331},"complete_analysis_url":"https://halfonadouble.com/api/v1/analysis/CSIQ.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":33,"completed_path_count":33,"latest_cross_date":"2026-06-02","horizons":[{"sessions":1,"sample_size":33,"median_return_pct":-2.313925210818457,"p25_return_pct":-4.580852054488838,"p75_return_pct":1.7582400077467586,"above_zero_pct":42.42424242424242,"median_interval_low_pct":-3.749149201598412,"median_interval_high_pct":0.508905358442302,"median_interval_nominal_coverage_pct":91.98566875420511,"confidence_floor_pct":0},{"sessions":3,"sample_size":33,"median_return_pct":-2.466966319249142,"p25_return_pct":-8.445709873459817,"p75_return_pct":1.2269959389206608,"above_zero_pct":30.303030303030305,"median_interval_low_pct":-4.332917280738013,"median_interval_high_pct":-1.1128794582631274,"median_interval_nominal_coverage_pct":91.98566875420511,"confidence_floor_pct":-1.1128794582631274},{"sessions":5,"sample_size":33,"median_return_pct":-3.09851223769283,"p25_return_pct":-9.207513677996392,"p75_return_pct":2.5130865583752104,"above_zero_pct":33.33333333333333,"median_interval_low_pct":-6.416981737136041,"median_interval_high_pct":-0.9294051376604329,"median_interval_nominal_coverage_pct":91.98566875420511,"confidence_floor_pct":-0.9294051376604329},{"sessions":10,"sample_size":33,"median_return_pct":-2.6829231076124227,"p25_return_pct":-9.745753850788553,"p75_return_pct":11.287757146711597,"above_zero_pct":45.45454545454545,"median_interval_low_pct":-7.604393592247593,"median_interval_high_pct":6.111483051914024,"median_interval_nominal_coverage_pct":91.98566875420511,"confidence_floor_pct":0}]},{"direction":"below","event_count":35,"completed_path_count":35,"latest_cross_date":"2026-06-03","horizons":[{"sessions":1,"sample_size":35,"median_return_pct":-1.4164292555673752,"p25_return_pct":-3.971467577929605,"p75_return_pct":1.1946467579339815,"above_zero_pct":31.428571428571427,"median_interval_low_pct":-2.7509026524847657,"median_interval_high_pct":-0.181609065388455,"median_interval_nominal_coverage_pct":91.04689210653305,"confidence_floor_pct":-0.181609065388455},{"sessions":3,"sample_size":35,"median_return_pct":-1.8096026374534668,"p25_return_pct":-5.139400520313952,"p75_return_pct":3.4608106851138576,"above_zero_pct":40,"median_interval_low_pct":-3.6445053451797826,"median_interval_high_pct":0.4039380079441157,"median_interval_nominal_coverage_pct":91.04689210653305,"confidence_floor_pct":0},{"sessions":5,"sample_size":35,"median_return_pct":-3.33951737356325,"p25_return_pct":-8.710798751023502,"p75_return_pct":7.247993569856481,"above_zero_pct":37.142857142857146,"median_interval_low_pct":-7.150255001651374,"median_interval_high_pct":1.287070685141578,"median_interval_nominal_coverage_pct":91.04689210653305,"confidence_floor_pct":0},{"sessions":10,"sample_size":35,"median_return_pct":-1.7333887091571132,"p25_return_pct":-12.314585460202604,"p75_return_pct":6.384027763511613,"above_zero_pct":45.714285714285715,"median_interval_low_pct":-5.2466915648733075,"median_interval_high_pct":3.320465725938737,"median_interval_nominal_coverage_pct":91.04689210653305,"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."}