Python toolkit for quantitative finance
This report presents the forensic synthetic code analysis of goldmansachs/gs-quant, a Python project with 12,805 GitHub stars. SynthScan v2.0 examined 254,795 lines of code across 945 source files, recording 2246 pattern matches distributed across 21 syntactic categories. The overall adjusted score of 15.6 places this repository in the Moderate AI signal band.
The scanner applied 160+ deterministic lexical heuristics, multi-line block detectors, abstract syntax tree depth profilers, and a cross-file Jaccard similarity matrix to construct a statistically normalised synthetic code estimate. All matches are individually weighted by severity coefficient and contextual multiplier before summation, and the resulting headline score is temporally discounted to account for the repository's development history relative to the commercial emergence of large language model coding tooling (November 2022 onward).
Longitudinal tracking requires multiple scan runs. Once this repository is re-scanned after new commits land, this chart will visualise how the synthetic code signal evolves over time — enabling you to detect whether AI authorship is growing, stabilising, or being actively corrected by human engineers.
Classifies detected patterns by their diagnostic confidence and structural impact. CRITICAL patterns (coefficient 10) represent definitive synthetic signatures — hallucinated imports, explicit LLM attribution metadata — virtually never produced by human authors. HIGH (5) indicates strong structural tells such as cross-file repetition or cross-linguistic idioms. MEDIUM (2) covers recognisable conversational padding and AI-specific vocabulary. LOW (1) captures subtle indicators like tautological comments and generic boilerplate that require density to carry independent signal.
This horizontal bar chart decomposes the repository's raw synthetic code score by top-level directory, allowing you to pinpoint precisely which modules or components carry the highest AI authorship density. Directories with disproportionately high scores relative to their size warrant targeted manual review: concentrated AI signatures often trace back to mass-generated configuration layers, auto-ported test suites, LLM-scaffolded boilerplate classes, or entire subsystems authored under heavy copilot assistance. Use this view to prioritise your human code-review effort.
The scanner identified 2246 distinct pattern matches across 21 syntactic categories. Each entry below represents a discrete location in the source code where the engine recorded a statistically significant AI authorship indicator. Expand any category row to inspect the individual file paths, line numbers, code snippets, and the lexical context (CODE, COMMENT, or STRING) in which each match was detected.
Reading the findings table: The Severity column indicates the diagnostic confidence level (CRITICAL / HIGH / MEDIUM / LOW). The Context column identifies whether the match occurred inside executable code, an inline comment, or a string literal — comment-context matches receive a ×1.5 weight because LLMs systematically over-annotate. The ⚡ bolt icon marks clustered matches: three or more patterns within a 10-line window, each receiving an additional ×1.5 density multiplier as dense clusters constitute far stronger evidence of synthetic authorship than isolated hits.
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | setup.py | 0 | copyright 2019 goldman sachs. licensed under the apache license, version 2.0 (the "license"); you may not use this file | STRING |
| HIGH | gs_quant/__init__.py | 0 | copyright 2019 goldman sachs. licensed under the apache license, version 2.0 (the "license"); you may not use this file | STRING |
| HIGH | gs_quant/errors.py | 0 | copyright 2019 goldman sachs. licensed under the apache license, version 2.0 (the "license"); you may not use this file | STRING |
| HIGH | gs_quant/tracing/tracing.py | 0 | copyright 2019 goldman sachs. licensed under the apache license, version 2.0 (the "license"); you may not use this file | STRING |
| HIGH | gs_quant/timeseries/__init__.py | 0 | copyright 2019 goldman sachs. licensed under the apache license, version 2.0 (the "license"); you may not use this file | STRING |
| HIGH | gs_quant/timeseries/event_study.py | 0 | copyright 2019 goldman sachs. licensed under the apache license, version 2.0 (the "license"); you may not use this file | STRING |
| HIGH | …uant/timeseries/_event_study/event_study_processing.py | 0 | copyright 2019 goldman sachs. licensed under the apache license, version 2.0 (the "license"); you may not use this file | STRING |
| HIGH | gs_quant/timeseries/_event_study/event_study_labels.py | 0 | copyright 2019 goldman sachs. licensed under the apache license, version 2.0 (the "license"); you may not use this file | STRING |
| HIGH | gs_quant/timeseries/_event_study/event_study_api.py | 0 | copyright 2019 goldman sachs. licensed under the apache license, version 2.0 (the "license"); you may not use this file | STRING |
| HIGH | …ant/timeseries/_event_study/event_study_definitions.py | 0 | copyright 2019 goldman sachs. licensed under the apache license, version 2.0 (the "license"); you may not use this file | STRING |
| HIGH | …nt/timeseries/_event_study/event_study_macro_source.py | 0 | copyright 2019 goldman sachs. licensed under the apache license, version 2.0 (the "license"); you may not use this file | STRING |
| HIGH | gs_quant/timeseries/_event_study/event_study_objects.py | 0 | copyright 2019 goldman sachs. licensed under the apache license, version 2.0 (the "license"); you may not use this file | STRING |
| HIGH | gs_quant/timeseries/_event_study/event_study_frame.py | 0 | copyright 2019 goldman sachs. licensed under the apache license, version 2.0 (the "license"); you may not use this file | STRING |
| HIGH | …nt/timeseries/_event_study/event_study_asset_source.py | 0 | copyright 2019 goldman sachs. licensed under the apache license, version 2.0 (the "license"); you may not use this file | STRING |
| HIGH | gs_quant/timeseries/_event_study/event_study_impact.py | 0 | copyright 2019 goldman sachs. licensed under the apache license, version 2.0 (the "license"); you may not use this file | STRING |
| HIGH | gs_quant/timeseries/_event_study/event_study_query.py | 0 | copyright 2019 goldman sachs. licensed under the apache license, version 2.0 (the "license"); you may not use this file | STRING |
| HIGH | gs_quant/test/test_session.py | 0 | copyright 2019 goldman sachs. licensed under the apache license, version 2.0 (the "license"); you may not use this file | STRING |
| HIGH | gs_quant/test/test_base.py | 0 | copyright 2019 goldman sachs. licensed under the apache license, version 2.0 (the "license"); you may not use this file | STRING |
| HIGH | gs_quant/test/timeseries/test_econometrics.py | 0 | copyright 2019 goldman sachs. licensed under the apache license, version 2.0 (the "license"); you may not use this file | STRING |
| HIGH | gs_quant/test/timeseries/test_statistics.py | 0 | copyright 2019 goldman sachs. licensed under the apache license, version 2.0 (the "license"); you may not use this file | STRING |
| HIGH | gs_quant/test/timeseries/test_timeseries.py | 0 | copyright 2019 goldman sachs. licensed under the apache license, version 2.0 (the "license"); you may not use this file | STRING |
| HIGH | gs_quant/test/timeseries/test_helper.py | 0 | copyright 2019 goldman sachs. licensed under the apache license, version 2.0 (the "license"); you may not use this file | STRING |
| HIGH | gs_quant/test/timeseries/test_event_study.py | 0 | copyright 2019 goldman sachs. licensed under the apache license, version 2.0 (the "license"); you may not use this file | STRING |
| HIGH | gs_quant/test/timeseries/test_backtesting.py | 0 | copyright 2019 goldman sachs. licensed under the apache license, version 2.0 (the "license"); you may not use this file | STRING |
| HIGH | gs_quant/test/timeseries/test_analysis.py | 0 | copyright 2019 goldman sachs. licensed under the apache license, version 2.0 (the "license"); you may not use this file | STRING |
| HIGH | gs_quant/test/timeseries/test_algebra.py | 0 | copyright 2019 goldman sachs. licensed under the apache license, version 2.0 (the "license"); you may not use this file | STRING |
| HIGH | gs_quant/test/timeseries/test_technicals.py | 0 | copyright 2019 goldman sachs. licensed under the apache license, version 2.0 (the "license"); you may not use this file | STRING |
| HIGH | gs_quant/test/timeseries/test_datetime.py | 0 | copyright 2019 goldman sachs. licensed under the apache license, version 2.0 (the "license"); you may not use this file | STRING |
| HIGH | gs_quant/test/markets/test_portfolio.py | 0 | copyright 2019 goldman sachs. licensed under the apache license, version 2.0 (the "license"); you may not use this file | STRING |
| HIGH | gs_quant/test/markets/test_securities.py | 0 | copyright 2019 goldman sachs. licensed under the apache license, version 2.0 (the "license"); you may not use this file | STRING |
| HIGH | gs_quant/test/markets/test_pricing_context.py | 0 | copyright 2019 goldman sachs. licensed under the apache license, version 2.0 (the "license"); you may not use this file | STRING |
| HIGH | gs_quant/test/markets/test_baskets.py | 0 | copyright 2019 goldman sachs. licensed under the apache license, version 2.0 (the "license"); you may not use this file | STRING |
| HIGH | gs_quant/test/datetime_/test_point.py | 0 | copyright 2019 goldman sachs. licensed under the apache license, version 2.0 (the "license"); you may not use this file | STRING |
| HIGH | gs_quant/test/datetime_/test_time.py | 0 | copyright 2019 goldman sachs. licensed under the apache license, version 2.0 (the "license"); you may not use this file | STRING |
| HIGH | gs_quant/test/api/test_target.py | 0 | copyright 2019 goldman sachs. licensed under the apache license, version 2.0 (the "license"); you may not use this file | STRING |
| HIGH | gs_quant/test/api/test_risk.py | 0 | copyright 2019 goldman sachs. licensed under the apache license, version 2.0 (the "license"); you may not use this file | STRING |
| HIGH | gs_quant/test/api/test_index.py | 0 | copyright 2019 goldman sachs. licensed under the apache license, version 2.0 (the "license"); you may not use this file | STRING |
| HIGH | gs_quant/test/api/test_data.py | 0 | copyright 2019 goldman sachs. licensed under the apache license, version 2.0 (the "license"); you may not use this file | STRING |
| HIGH | gs_quant/test/api/test_instruments.py | 0 | copyright 2019 goldman sachs. licensed under the apache license, version 2.0 (the "license"); you may not use this file | STRING |
| HIGH | gs_quant/test/api/test_cache.py | 0 | copyright 2019 goldman sachs. licensed under the apache license, version 2.0 (the "license"); you may not use this file | STRING |
| HIGH | gs_quant/test/data/test_dataset.py | 0 | copyright 2019 goldman sachs. licensed under the apache license, version 2.0 (the "license"); you may not use this file | STRING |
| HIGH | gs_quant/test/data/test_data_coordinate.py | 0 | copyright 2019 goldman sachs. licensed under the apache license, version 2.0 (the "license"); you may not use this file | STRING |
| HIGH | gs_quant/test/analytics/test_datagrid.py | 0 | copyright 2019 goldman sachs. licensed under the apache license, version 2.0 (the "license"); you may not use this file | STRING |
| HIGH | gs_quant/instrument/__init__.py | 0 | copyright 2019 goldman sachs. licensed under the apache license, version 2.0 (the "license"); you may not use this file | STRING |
| HIGH | gs_quant/datetime/time.py | 0 | copyright 2019 goldman sachs. licensed under the apache license, version 2.0 (the "license"); you may not use this file | STRING |
| HIGH | gs_quant/datetime/__init__.py | 0 | copyright 2019 goldman sachs. licensed under the apache license, version 2.0 (the "license"); you may not use this file | STRING |
| HIGH | gs_quant/target/__init__.py | 0 | copyright 2019 goldman sachs. licensed under the apache license, version 2.0 (the "license"); you may not use this file | STRING |
| HIGH | gs_quant/markets/__init__.py | 0 | copyright 2019 goldman sachs. licensed under the apache license, version 2.0 (the "license"); you may not use this file | STRING |
| HIGH | gs_quant/data/__init__.py | 0 | copyright 2019 goldman sachs. licensed under the apache license, version 2.0 (the "license"); you may not use this file | STRING |
| HIGH | gs_quant/context_base.py | 0 | copyright 2019 goldman sachs. licensed under the apache license, version 2.0 (the "license"); you may not use this file | STRING |
| HIGH | gs_quant/json_convertors_common.py | 0 | copyright 2019 goldman sachs. licensed under the apache license, version 2.0 (the "license"); you may not use this file | STRING |
| HIGH | gs_quant/priceable.py | 0 | copyright 2019 goldman sachs. licensed under the apache license, version 2.0 (the "license"); you may not use this file | STRING |
| HIGH | gs_quant/common.py | 0 | copyright 2019 goldman sachs. licensed under the apache license, version 2.0 (the "license"); you may not use this file | STRING |
| HIGH | gs_quant/json_encoder.py | 0 | copyright 2019 goldman sachs. licensed under the apache license, version 2.0 (the "license"); you may not use this file | STRING |
| HIGH | gs_quant/json_convertors.py | 0 | copyright 2019 goldman sachs. licensed under the apache license, version 2.0 (the "license"); you may not use this file | STRING |
| HIGH | gs_quant/base.py | 0 | copyright 2019 goldman sachs. licensed under the apache license, version 2.0 (the "license"); you may not use this file | STRING |
| HIGH | gs_quant/timeseries/tca.py | 0 | copyright 2019 goldman sachs. licensed under the apache license, version 2.0 (the "license"); you may not use this file | STRING |
| HIGH | gs_quant/timeseries/helper.py | 0 | copyright 2019 goldman sachs. licensed under the apache license, version 2.0 (the "license"); you may not use this file | STRING |
| HIGH | gs_quant/test/test_context_base.py | 0 | copyright 2019 goldman sachs. licensed under the apache license, version 2.0 (the "license"); you may not use this file | STRING |
| HIGH | gs_quant/test/timeseries/utils.py | 0 | copyright 2019 goldman sachs. licensed under the apache license, version 2.0 (the "license"); you may not use this file | STRING |
| 304 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | versioneer.py | 642 | def git_versions_from_keywords(keywords, tag_prefix, verbose): | CODE |
| LOW | versioneer.py | 1164 | def git_versions_from_keywords(keywords, tag_prefix, verbose): | STRING |
| LOW | docs/_build/html/_static/jquery-3.5.1.js | 9039 | function addToPrefiltersOrTransports( structure ) { | CODE |
| LOW | docs/_build/html/_static/jquery-3.5.1.js | 9073 | function inspectPrefiltersOrTransports( structure, options, originalOptions, jqXHR ) { | CODE |
| LOW | gs_quant/_version.py | 169 | def git_versions_from_keywords(keywords, tag_prefix, verbose): | CODE |
| LOW | gs_quant/json_convertors_common.py | 40 | def encode_risk_measure_tuple(blob: tuple[RiskMeasure, ...]) -> tuple[dict, ...]: | CODE |
| LOW | gs_quant/json_convertors_common.py | 73 | def _lookup_risk_measure_by_fields(data: dict) -> Optional[RiskMeasure]: | CODE |
| LOW | gs_quant/json_convertors_common.py | 129 | def decode_risk_measure_tuple(blob: tuple[dict, ...]) -> tuple[RiskMeasure, ...]: | CODE |
| LOW | gs_quant/session.py | 382 | def _authenticate_all_sessions(self): | CODE |
| LOW | gs_quant/json_convertors.py | 42 | def decode_optional_date_or_time(value: Optional[str]) -> Optional[Union[dt.date, dt.datetime]]: | CODE |
| LOW | gs_quant/json_convertors.py | 84 | def decode_date_or_time_tuple(blob: tuple[str, ...]): | CODE |
| LOW | gs_quant/json_convertors.py | 96 | def encode_date_or_time_tuple(values: tuple[Optional[Union[str, dt.date, dt.datetime]], ...]): | CODE |
| LOW | gs_quant/json_convertors.py | 111 | def decode_iso_date_or_datetime(value: Any) -> Union[tuple[DateOrDateTime, ...], DateOrDateTime]: | CODE |
| LOW | gs_quant/json_convertors.py | 124 | def optional_from_isodatetime(datetime: Union[str, dt.datetime, None]) -> Optional[dt.datetime]: | CODE |
| LOW | gs_quant/json_convertors.py | 142 | def decode_dict_date_key_or_float(value): | CODE |
| LOW | gs_quant/json_convertors.py | 148 | def decode_dict_dict_date_key(value): | CODE |
| LOW | gs_quant/json_convertors.py | 167 | def __try_decode_valid_date_formats(value: str) -> Optional[dt.date]: | CODE |
| LOW | gs_quant/base.py | 87 | def _get_is_supported_generic(arg): | CODE |
| LOW⚡ | gs_quant/tracing/tracing.py | 423 | def add_span_consumers_to_existing_provider(trace_provider: TracerProvider): | CODE |
| LOW⚡ | gs_quant/tracing/tracing.py | 429 | def preregister_span_processor(processor: SpanProcessor): | CODE |
| LOW | gs_quant/timeseries/backtesting.py | 295 | def average_implied_volatility( | CODE |
| LOW | gs_quant/timeseries/backtesting.py | 376 | def average_realized_volatility( | CODE |
| LOW | gs_quant/timeseries/backtesting.py | 410 | def average_realized_correlation( | CODE |
| LOW | gs_quant/timeseries/measures_helper.py | 38 | def preprocess_implied_vol_strikes_eq(strike_reference: VolReference = None, relative_strike: Real = None): | CODE |
| LOW | gs_quant/timeseries/measures_xccy.py | 61 | def get_rateoption_for_benchmark(self, currency: CurrencyEnum, benchmark: str): | CODE |
| LOW | gs_quant/timeseries/measures_xccy.py | 64 | def get_maturity_for_benchmark(self, currency: CurrencyEnum, benchmark: str): | CODE |
| LOW | gs_quant/timeseries/measures_xccy.py | 333 | def _currency_to_tdapi_crosscurrency_swap_rate_asset(asset_spec: ASSET_SPEC) -> str: | CODE |
| LOW | gs_quant/timeseries/measures_xccy.py | 341 | def _get_tdapi_crosscurrency_rates_assets(allow_many=False, **kwargs) -> Union[str, list]: | CODE |
| LOW | gs_quant/timeseries/measures_xccy.py | 410 | def _check_crosscurrency_rateoption_type( | CODE |
| LOW | gs_quant/timeseries/measures_xccy.py | 432 | def _get_crosscurrency_swap_leg_defaults( | CODE |
| LOW | gs_quant/timeseries/measures_xccy.py | 453 | def _get_crosscurrency_swap_csa_terms(curr: str, crosscurrencyindextype: str) -> dict: | CODE |
| LOW | gs_quant/timeseries/measures_xccy.py | 457 | def _get_crosscurrency_swap_data( | CODE |
| LOW | gs_quant/timeseries/measures_portfolios.py | 61 | def portfolio_factor_exposure( | CODE |
| LOW | gs_quant/timeseries/measures_portfolios.py | 121 | def portfolio_factor_proportion_of_risk( | CODE |
| LOW | gs_quant/timeseries/measures_portfolios.py | 205 | def portfolio_thematic_exposure( | CODE |
| LOW | gs_quant/timeseries/measures_portfolios.py | 301 | def portfolio_drawdown_length( | CODE |
| LOW | gs_quant/timeseries/measures_portfolios.py | 325 | def portfolio_max_recovery_period( | CODE |
| LOW | gs_quant/timeseries/measures_portfolios.py | 349 | def portfolio_standard_deviation( | CODE |
| LOW | gs_quant/timeseries/measures_portfolios.py | 540 | def portfolio_tracking_error_bear( | CODE |
| LOW | gs_quant/timeseries/measures_portfolios.py | 578 | def portfolio_tracking_error_bull( | CODE |
| LOW | gs_quant/timeseries/measures_portfolios.py | 719 | def portfolio_information_ratio( | CODE |
| LOW | gs_quant/timeseries/measures_portfolios.py | 756 | def portfolio_information_ratio_bull( | CODE |
| LOW | gs_quant/timeseries/measures_portfolios.py | 792 | def portfolio_information_ratio_bear( | CODE |
| LOW | gs_quant/timeseries/measures_portfolios.py | 830 | def portfolio_modigliani_ratio( | CODE |
| LOW | gs_quant/timeseries/measures_portfolios.py | 871 | def portfolio_treynor_measure( | CODE |
| LOW | gs_quant/timeseries/measures_portfolios.py | 949 | def portfolio_jensen_alpha_bear( | CODE |
| LOW | gs_quant/timeseries/measures_portfolios.py | 989 | def portfolio_jensen_alpha_bull( | CODE |
| LOW | gs_quant/timeseries/technicals.py | 259 | def exponential_moving_average(x: pd.Series, beta: float = 0.75) -> pd.Series: | CODE |
| LOW | gs_quant/timeseries/technicals.py | 380 | def exponential_spread_volatility(x: pd.Series, beta: float = 0.75) -> pd.Series: | CODE |
| LOW | gs_quant/timeseries/event_study.py | 222 | def frame_timeseries_around_events( | CODE |
| LOW⚡ | gs_quant/timeseries/measures.py | 410 | def currency_to_default_benchmark_rate(asset_spec: ASSET_SPEC) -> str: | CODE |
| LOW⚡ | gs_quant/timeseries/measures.py | 420 | def currency_to_default_ois_asset(asset_spec: ASSET_SPEC) -> str: | CODE |
| LOW⚡ | gs_quant/timeseries/measures.py | 429 | def currency_to_default_swap_rate_asset(asset_spec: ASSET_SPEC) -> str: | CODE |
| LOW⚡ | gs_quant/timeseries/measures.py | 434 | def currency_to_inflation_benchmark_rate(asset_spec: ASSET_SPEC) -> str: | CODE |
| LOW | gs_quant/timeseries/measures.py | 366 | def _cross_stored_direction_helper(bbid): | CODE |
| LOW | gs_quant/timeseries/measures.py | 376 | def cross_stored_direction_for_fx_vol(asset_spec: ASSET_SPEC, *, return_asset=False) -> Union[str, Asset]: | CODE |
| LOW | gs_quant/timeseries/measures.py | 452 | def convert_asset_for_rates_data_set(from_asset: Asset, c_type: RatesConversionType) -> str: | CODE |
| LOW | gs_quant/timeseries/measures.py | 808 | def implied_volatility_credit( | CODE |
| LOW | gs_quant/timeseries/measures.py | 1033 | def _preprocess_implied_vol_strikes_fx(strike_reference: VolReference = None, relative_strike: Real = None): | CODE |
| LOW | gs_quant/timeseries/measures.py | 1163 | def _calculate_implied_correlation(index_mqid, vol_df, constituents_weights, request_id): | CODE |
| 991 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | conftest.py | 4 | CODE | |
| LOW | docs/searchdataext/__init__.py | 6 | CODE | |
| LOW | gs_quant/context_base.py | 184 | CODE | |
| LOW | gs_quant/__init__.py | 70 | CODE | |
| LOW | gs_quant/common.py | 17 | CODE | |
| LOW | gs_quant/tracing/tracing.py | 725 | CODE | |
| LOW | gs_quant/tracing/__init__.py | 17 | CODE | |
| LOW | gs_quant/timeseries/__init__.py | 17 | CODE | |
| LOW | gs_quant/timeseries/__init__.py | 18 | CODE | |
| LOW | gs_quant/timeseries/__init__.py | 19 | CODE | |
| LOW | gs_quant/timeseries/__init__.py | 20 | CODE | |
| LOW | gs_quant/timeseries/__init__.py | 21 | CODE | |
| LOW | gs_quant/timeseries/__init__.py | 22 | CODE | |
| LOW | gs_quant/timeseries/__init__.py | 23 | CODE | |
| LOW | gs_quant/timeseries/__init__.py | 24 | CODE | |
| LOW | gs_quant/timeseries/__init__.py | 25 | CODE | |
| LOW | gs_quant/timeseries/__init__.py | 26 | CODE | |
| LOW | gs_quant/timeseries/__init__.py | 27 | CODE | |
| LOW | gs_quant/timeseries/__init__.py | 28 | CODE | |
| LOW | gs_quant/timeseries/__init__.py | 29 | CODE | |
| LOW | gs_quant/timeseries/__init__.py | 30 | CODE | |
| LOW | gs_quant/timeseries/__init__.py | 31 | CODE | |
| LOW | gs_quant/timeseries/__init__.py | 32 | CODE | |
| LOW | gs_quant/timeseries/__init__.py | 33 | CODE | |
| LOW | gs_quant/timeseries/__init__.py | 34 | CODE | |
| LOW | gs_quant/timeseries/__init__.py | 35 | CODE | |
| LOW | gs_quant/timeseries/__init__.py | 36 | CODE | |
| LOW | gs_quant/timeseries/__init__.py | 37 | CODE | |
| LOW | gs_quant/timeseries/__init__.py | 40 | CODE | |
| LOW | gs_quant/timeseries/event_study.py | 110 | CODE | |
| LOW | gs_quant/timeseries/event_study.py | 110 | CODE | |
| LOW | gs_quant/test/utils/__init__.py | 1 | CODE | |
| LOW | gs_quant/test/utils/__init__.py | 2 | CODE | |
| LOW | gs_quant/instrument/__init__.py | 16 | CODE | |
| LOW | gs_quant/instrument/__init__.py | 16 | CODE | |
| LOW | gs_quant/instrument/__init__.py | 16 | CODE | |
| LOW | gs_quant/instrument/__init__.py | 17 | CODE | |
| LOW | gs_quant/instrument/__init__.py | 18 | CODE | |
| LOW | gs_quant/instrument/__init__.py | 18 | CODE | |
| LOW | gs_quant/instrument/__init__.py | 19 | CODE | |
| LOW | gs_quant/config/__init__.py | 17 | CODE | |
| LOW | gs_quant/backtests/__init__.py | 16 | CODE | |
| LOW | gs_quant/backtests/__init__.py | 17 | CODE | |
| LOW | gs_quant/backtests/__init__.py | 18 | CODE | |
| LOW | gs_quant/datetime/__init__.py | 16 | CODE | |
| LOW | gs_quant/datetime/__init__.py | 17 | CODE | |
| LOW | gs_quant/datetime/__init__.py | 18 | CODE | |
| LOW | gs_quant/datetime/__init__.py | 19 | CODE | |
| LOW | gs_quant/target/scenarios.py | 17 | CODE | |
| LOW | gs_quant/target/scenarios.py | 18 | CODE | |
| LOW | gs_quant/target/scenarios.py | 20 | CODE | |
| LOW | gs_quant/target/scenarios.py | 20 | CODE | |
| LOW | gs_quant/target/scenarios.py | 20 | CODE | |
| LOW | gs_quant/target/workflow_quote.py | 17 | CODE | |
| LOW | gs_quant/target/workflow_quote.py | 18 | CODE | |
| LOW | gs_quant/target/workflow_quote.py | 20 | CODE | |
| LOW | gs_quant/target/workflow_quote.py | 20 | CODE | |
| LOW | gs_quant/target/workflow_quote.py | 20 | CODE | |
| LOW | gs_quant/target/hedge.py | 17 | CODE | |
| LOW | gs_quant/target/hedge.py | 18 | CODE | |
| 224 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM⚡ | gs_quant/test/models/test_risk_model.py | 1761 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | gs_quant/test/models/test_risk_model.py | 1763 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | gs_quant/test/models/test_risk_model.py | 1954 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | gs_quant/test/models/test_risk_model.py | 1956 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | gs_quant/test/models/test_risk_model.py | 2006 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | gs_quant/test/models/test_risk_model.py | 2008 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | gs_quant/test/markets/test_securities.py | 1587 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | gs_quant/test/markets/test_securities.py | 1591 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | gs_quant/test/markets/test_securities.py | 1718 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | gs_quant/test/markets/test_securities.py | 1720 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | gs_quant/test/markets/test_securities.py | 1820 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | gs_quant/test/markets/test_securities.py | 1822 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | gs_quant/test/markets/test_securities.py | 1862 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | gs_quant/test/markets/test_securities.py | 1864 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | gs_quant/mcp/client.py | 354 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | gs_quant/mcp/client.py | 356 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | gs_quant/mcp/client.py | 373 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | gs_quant/mcp/client.py | 375 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | gs_quant/mcp/client.py | 42 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | gs_quant/mcp/client.py | 44 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | gs_quant/mcp/client.py | 111 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | gs_quant/mcp/client.py | 113 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | gs_quant/mcp/client.py | 131 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | gs_quant/mcp/client.py | 133 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | gs_quant/mcp/client.py | 202 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | gs_quant/mcp/client.py | 204 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | gs_quant/mcp/client.py | 242 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | gs_quant/mcp/client.py | 244 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | gs_quant/mcp/README.md | 320 | # ┏━━━━━━┳━━━━━━━━━┳━━━━━━━━━━┳━━━━━━━━━┳━━━━━━━━━━━━━┓ | COMMENT |
| MEDIUM⚡ | gs_quant/mcp/README.md | 322 | # ┡━━━━━━╇━━━━━━━━━╇━━━━━━━━━━╇━━━━━━━━━╇━━━━━━━━━━━━━┩ | COMMENT |
| MEDIUM⚡ | gs_quant/mcp/README.md | 325 | # └──────┴─────────┴──────────┴─────────┴─────────────┘ | COMMENT |
| MEDIUM | gs_quant/mcp/__main__.py | 156 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | gs_quant/mcp/__main__.py | 158 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | gs_quant/mcp/tools/marketview/tools.py | 25 | # ---------------------------------------------------------------------- | COMMENT |
| MEDIUM | gs_quant/mcp/tools/marketview/tools.py | 27 | # ---------------------------------------------------------------------- | COMMENT |
| MEDIUM | gs_quant/mcp/tools/marketview/tools.py | 96 | # ---------------------------------------------------------------------- | COMMENT |
| MEDIUM | gs_quant/mcp/tools/marketview/tools.py | 98 | # ---------------------------------------------------------------------- | COMMENT |
| MEDIUM | gs_quant/models/risk_model_utils.py | 419 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | gs_quant/models/risk_model_utils.py | 421 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | gs_quant/api/gs/marketview/dashboards.py | 246 | # ------------------------------------------------------------------ | COMMENT |
| MEDIUM⚡ | gs_quant/api/gs/marketview/dashboards.py | 248 | # ------------------------------------------------------------------ | COMMENT |
| MEDIUM⚡ | gs_quant/api/gs/marketview/dashboards.py | 262 | # ------------------------------------------------------------------ | COMMENT |
| MEDIUM⚡ | gs_quant/api/gs/marketview/dashboards.py | 264 | # ------------------------------------------------------------------ | COMMENT |
| MEDIUM | gs_quant/api/gs/marketview/dashboards.py | 46 | # ------------------------------------------------------------------ | COMMENT |
| MEDIUM | gs_quant/api/gs/marketview/dashboards.py | 48 | # ------------------------------------------------------------------ | COMMENT |
| MEDIUM | gs_quant/api/gs/marketview/dashboards.py | 293 | # ------------------------------------------------------------------ | COMMENT |
| MEDIUM | gs_quant/api/gs/marketview/dashboards.py | 295 | # ------------------------------------------------------------------ | COMMENT |
| MEDIUM | gs_quant/api/gs/marketview/dashboards.py | 343 | # ------------------------------------------------------------------ | COMMENT |
| MEDIUM | gs_quant/api/gs/marketview/dashboards.py | 345 | # ------------------------------------------------------------------ | COMMENT |
| MEDIUM | gs_quant/api/gs/marketview/dashboards.py | 357 | # ------------------------------------------------------------------ | COMMENT |
| MEDIUM | gs_quant/api/gs/marketview/dashboards.py | 359 | # ------------------------------------------------------------------ | COMMENT |
| MEDIUM | gs_quant/api/gs/marketview/dashboards.py | 374 | # ------------------------------------------------------------------ | COMMENT |
| MEDIUM | gs_quant/api/gs/marketview/dashboards.py | 376 | # ------------------------------------------------------------------ | COMMENT |
| MEDIUM | gs_quant/api/gs/marketview/dashboards.py | 428 | # ------------------------------------------------------------------ | COMMENT |
| MEDIUM | gs_quant/api/gs/marketview/dashboards.py | 430 | # ------------------------------------------------------------------ | COMMENT |
| MEDIUM | gs_quant/api/gs/marketview/types.py | 22 | # ------------------------------------------------------------------ | COMMENT |
| MEDIUM | gs_quant/api/gs/marketview/types.py | 24 | # ------------------------------------------------------------------ | COMMENT |
| MEDIUM | gs_quant/api/gs/marketview/types.py | 42 | # ------------------------------------------------------------------ | COMMENT |
| MEDIUM | gs_quant/api/gs/marketview/types.py | 44 | # ------------------------------------------------------------------ | COMMENT |
| MEDIUM | gs_quant/api/gs/marketview/types.py | 166 | # ------------------------------------------------------------------ | COMMENT |
| 5 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | versioneer.py | 1136 | CODE | |
| LOW | versioneer.py | 1360 | CODE | |
| LOW | versioneer.py | 1682 | CODE | |
| LOW | versioneer.py | 2102 | CODE | |
| LOW | gs_quant/_version.py | 141 | CODE | |
| LOW | gs_quant/_version.py | 579 | CODE | |
| LOW | gs_quant/json_convertors_common.py | 73 | CODE | |
| LOW | gs_quant/session.py | 323 | CODE | |
| LOW | gs_quant/session.py | 573 | CODE | |
| LOW | gs_quant/session.py | 1084 | CODE | |
| LOW | gs_quant/json_encoder.py | 27 | CODE | |
| LOW | gs_quant/errors.py | 77 | CODE | |
| LOW | gs_quant/json_convertors.py | 207 | CODE | |
| LOW | gs_quant/json_convertors.py | 224 | CODE | |
| LOW | gs_quant/base.py | 343 | CODE | |
| LOW | gs_quant/timeseries/algebra.py | 567 | CODE | |
| LOW | gs_quant/timeseries/algebra.py | 627 | CODE | |
| LOW | gs_quant/timeseries/technicals.py | 412 | CODE | |
| LOW | gs_quant/timeseries/event_study.py | 222 | CODE | |
| LOW | gs_quant/timeseries/measures_factset.py | 1308 | CODE | |
| LOW | gs_quant/timeseries/measures.py | 376 | CODE | |
| LOW | gs_quant/timeseries/measures.py | 392 | CODE | |
| LOW | gs_quant/timeseries/measures.py | 452 | CODE | |
| LOW | gs_quant/timeseries/measures.py | 1333 | CODE | |
| LOW | gs_quant/timeseries/measures.py | 2020 | CODE | |
| LOW | gs_quant/timeseries/measures.py | 2190 | CODE | |
| LOW | gs_quant/timeseries/measures.py | 2807 | CODE | |
| LOW | gs_quant/timeseries/measures.py | 2879 | CODE | |
| LOW | gs_quant/timeseries/measures.py | 2962 | CODE | |
| LOW | gs_quant/timeseries/measures.py | 3129 | CODE | |
| LOW | gs_quant/timeseries/measures.py | 3167 | CODE | |
| LOW | gs_quant/timeseries/measures.py | 5262 | CODE | |
| LOW | gs_quant/timeseries/measures.py | 5828 | CODE | |
| LOW | gs_quant/timeseries/measures_rates.py | 607 | CODE | |
| LOW | gs_quant/timeseries/measures_rates.py | 638 | CODE | |
| LOW | gs_quant/timeseries/measures_rates.py | 971 | CODE | |
| LOW | gs_quant/timeseries/measures_rates.py | 3107 | CODE | |
| LOW | gs_quant/timeseries/measures_rates.py | 3255 | CODE | |
| LOW | gs_quant/timeseries/helper.py | 101 | CODE | |
| LOW | gs_quant/timeseries/helper.py | 197 | CODE | |
| LOW | gs_quant/timeseries/helper.py | 393 | CODE | |
| LOW | gs_quant/timeseries/measures_reports.py | 1668 | CODE | |
| LOW | gs_quant/timeseries/econometrics.py | 490 | CODE | |
| LOW | gs_quant/timeseries/econometrics.py | 962 | CODE | |
| LOW | gs_quant/timeseries/measures_fx_vol.py | 284 | CODE | |
| LOW | gs_quant/timeseries/measures_fx_vol.py | 658 | CODE | |
| LOW | gs_quant/timeseries/measures_fx_vol.py | 862 | CODE | |
| LOW | gs_quant/timeseries/measures_fx_vol.py | 937 | CODE | |
| LOW | gs_quant/timeseries/_event_study/event_study_labels.py | 63 | CODE | |
| LOW | gs_quant/timeseries/_event_study/event_study_impact.py | 231 | CODE | |
| LOW | gs_quant/test/tracing/test_tracing.py | 63 | CODE | |
| LOW | gs_quant/test/tracing/test_tracing.py | 173 | CODE | |
| LOW | gs_quant/test/timeseries/test_timeseries.py | 131 | CODE | |
| LOW | gs_quant/test/timeseries/test_query_kwarg_casing.py | 51 | CODE | |
| LOW | gs_quant/test/timeseries/utils.py | 47 | CODE | |
| LOW | gs_quant/test/timeseries/test_measures.py | 84 | CODE | |
| LOW | gs_quant/test/timeseries/test_measures.py | 105 | CODE | |
| LOW | gs_quant/test/timeseries/test_measures.py | 5579 | CODE | |
| LOW | gs_quant/test/timeseries/test_measures.py | 5688 | CODE | |
| LOW | gs_quant/test/utils/test_utils.py | 72 | CODE | |
| 116 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | gs_quant/context_base.py | 117 | self._cls.push(self) | CODE |
| HIGH | gs_quant/context_base.py | 130 | self._cls.push(self) | CODE |
| HIGH | gs_quant/test/timeseries/test_measures_portfolios.py | 550 | assert max_drawdown_series.equals(returned) | CODE |
| HIGH | gs_quant/test/timeseries/test_measures_portfolios.py | 576 | assert max_drawdown_series.equals(returned) | CODE |
| HIGH | gs_quant/test/timeseries/test_measures_portfolios.py | 602 | assert max_drawdown_series.equals(returned) | CODE |
| HIGH | gs_quant/test/timeseries/test_measures_portfolios.py | 1916 | assert actual.index.equals(idx) | CODE |
| HIGH⚡ | gs_quant/test/timeseries/test_measures_countries.py | 43 | assert actual.index.equals(idx) | CODE |
| HIGH⚡ | gs_quant/test/timeseries/test_measures_countries.py | 50 | assert actual.index.equals(idx) | CODE |
| HIGH⚡ | gs_quant/test/timeseries/test_measures_countries.py | 54 | assert actual.index.equals(idx) | CODE |
| HIGH | gs_quant/test/timeseries/test_event_study.py | 749 | Purpose: cover null, non-numeric, and passthrough fields in payload shaping. | STRING |
| HIGH | gs_quant/test/timeseries/test_measures_risk_models.py | 473 | assert expected_series.equals(actual) | CODE |
| HIGH | gs_quant/test/timeseries/test_measures_factset.py | 1132 | assert result.equals(mock_df) | CODE |
| HIGH | gs_quant/test/backtest/test_backtest_eq_vol_engine.py | 237 | assert expected_pnl.equals(backtest_result.get_measure_series(FlowVolBacktestMeasure.PNL)) | CODE |
| HIGH | gs_quant/test/markets/test_portfolio.py | 143 | assert actual.equals(expected) | CODE |
| HIGH | gs_quant/test/markets/test_portfolio.py | 192 | assert actual.equals(expected) | CODE |
| HIGH | gs_quant/test/markets/test_portfolio_manager.py | 2237 | assert exposure_df.equals(pd.DataFrame.from_dict(result)) | CODE |
| HIGH | gs_quant/test/api/test_risk.py | 85 | assert result.raw_value.equals(expected) | CODE |
| HIGH | gs_quant/test/api/test_data.py | 289 | assert result.equals(expected_result) | CODE |
| HIGH | gs_quant/test/api/test_data.py | 293 | assert result_from_str.equals(expected_result) | CODE |
| HIGH | gs_quant/test/data/test_dataset.py | 227 | assert data.equals(GsDataApi.construct_dataframe_with_types(str(Dataset.TR.TREOD), test_data)) | CODE |
| HIGH | gs_quant/test/data/test_dataset.py | 246 | assert data.equals(GsDataApi.construct_dataframe_with_types(str(Dataset.TR.TR), tr_data)) | CODE |
| HIGH | gs_quant/test/data/test_dataset.py | 259 | assert data.equals(GsDataApi.construct_dataframe_with_types(str(Dataset.TR.TREOD), test_data)) | CODE |
| HIGH | gs_quant/test/data/test_dataset.py | 267 | assert data.equals(GsDataApi.construct_dataframe_with_types(str(Dataset.TR.TREOD), ([test_data[-1]]))) | CODE |
| HIGH | gs_quant/test/data/test_dataset.py | 426 | assert df.equals(df2) | CODE |
| HIGH | gs_quant/backtests/data_sources.py | 118 | return self.missing_data_strategy == other.missing_data_strategy and self.data_set.equals(other.data_set) | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | gs_quant/session.py | 163 | CODE | |
| LOW | gs_quant/session.py | 260 | CODE | |
| LOW | gs_quant/session.py | 323 | CODE | |
| LOW | gs_quant/session.py | 625 | CODE | |
| LOW | gs_quant/session.py | 677 | CODE | |
| LOW | gs_quant/session.py | 774 | CODE | |
| LOW | gs_quant/session.py | 821 | CODE | |
| LOW | gs_quant/session.py | 823 | CODE | |
| LOW | gs_quant/session.py | 872 | CODE | |
| LOW | gs_quant/session.py | 848 | CODE | |
| LOW | gs_quant/session.py | 919 | CODE | |
| LOW | gs_quant/session.py | 1028 | CODE | |
| LOW | gs_quant/session.py | 1084 | CODE | |
| LOW | gs_quant/timeseries/measures_xccy.py | 338 | CODE | |
| LOW | gs_quant/timeseries/measures_tba.py | 210 | CODE | |
| LOW | gs_quant/timeseries/measures_tba.py | 279 | CODE | |
| LOW | gs_quant/timeseries/event_study.py | 319 | CODE | |
| LOW | gs_quant/timeseries/measures.py | 3262 | CODE | |
| LOW | gs_quant/timeseries/measures_rates.py | 571 | CODE | |
| LOW | gs_quant/timeseries/measures_rates.py | 579 | CODE | |
| LOW | gs_quant/timeseries/measures_rates.py | 1103 | CODE | |
| LOW | gs_quant/timeseries/measures_rates.py | 1341 | CODE | |
| LOW | gs_quant/timeseries/measures_rates.py | 1394 | CODE | |
| LOW | gs_quant/timeseries/measures_rates.py | 1557 | CODE | |
| LOW | gs_quant/timeseries/measures_rates.py | 1606 | CODE | |
| LOW | gs_quant/timeseries/measures_rates.py | 1761 | CODE | |
| LOW | gs_quant/timeseries/measures_rates.py | 2148 | CODE | |
| LOW | gs_quant/timeseries/measures_rates.py | 2508 | CODE | |
| LOW | gs_quant/timeseries/measures_rates.py | 2589 | CODE | |
| LOW | gs_quant/timeseries/measures_rates.py | 2720 | CODE | |
| LOW | gs_quant/timeseries/measures_inflation.py | 172 | CODE | |
| LOW | gs_quant/timeseries/measures_inflation.py | 237 | CODE | |
| LOW | gs_quant/timeseries/measures_inflation.py | 353 | CODE | |
| LOW | gs_quant/timeseries/statistics.py | 1296 | CODE | |
| LOW | gs_quant/timeseries/statistics.py | 1497 | CODE | |
| LOW | gs_quant/timeseries/econometrics.py | 860 | CODE | |
| LOW | gs_quant/timeseries/measures_fx_vol.py | 273 | CODE | |
| LOW | gs_quant/timeseries/measures_fx_vol.py | 281 | CODE | |
| LOW | gs_quant/timeseries/_event_study/event_study_impact.py | 341 | CODE | |
| LOW | gs_quant/test/timeseries/test_measures_rates.py | 1420 | CODE | |
| LOW | gs_quant/test/timeseries/test_measures.py | 423 | CODE | |
| LOW | gs_quant/test/timeseries/test_measures.py | 491 | CODE | |
| LOW | gs_quant/backtests/backtest_objects.py | 224 | CODE | |
| LOW | gs_quant/backtests/strategy_systematic.py | 68 | CODE | |
| LOW | gs_quant/backtests/generic_engine.py | 136 | CODE | |
| LOW | gs_quant/target/measures.py | 193 | CODE | |
| LOW | gs_quant/mcp/__main__.py | 92 | CODE | |
| LOW | gs_quant/mcp/__main__.py | 175 | CODE | |
| LOW | gs_quant/mcp/tools/marketview/tools.py | 102 | CODE | |
| LOW | gs_quant/models/epidemiology.py | 74 | CODE | |
| LOW | gs_quant/models/epidemiology.py | 157 | CODE | |
| LOW | gs_quant/models/epidemiology.py | 292 | CODE | |
| LOW | gs_quant/models/epidemiology.py | 434 | CODE | |
| LOW | gs_quant/models/risk_model.py | 682 | CODE | |
| LOW | gs_quant/markets/hedge.py | 313 | CODE | |
| LOW | gs_quant/markets/realtime.py | 43 | CODE | |
| LOW | gs_quant/markets/position_set.py | 1193 | CODE | |
| LOW | gs_quant/markets/core.py | 86 | CODE | |
| LOW | gs_quant/markets/historical.py | 36 | CODE | |
| LOW | gs_quant/markets/historical.py | 137 | CODE | |
| 48 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | gs_quant/session.py | 473 | def __del__(self): | CODE |
| LOW | gs_quant/session.py | 476 | except Exception: | CODE |
| LOW | gs_quant/session.py | 1080 | except Exception: | CODE |
| LOW | gs_quant/json_convertors.py | 370 | except Exception as e: | CODE |
| LOW | gs_quant/tracing/tracing.py | 502 | except Exception: | CODE |
| LOW | gs_quant/tracing/tracing.py | 509 | except Exception: | CODE |
| LOW | gs_quant/tracing/tracing.py | 554 | except Exception: | CODE |
| LOW | gs_quant/tracing/tracing.py | 563 | except Exception: | CODE |
| LOW | gs_quant/tracing/tracing.py | 746 | except Exception: | CODE |
| MEDIUM | gs_quant/tracing/tracing.py | 506 | def extract(carrier) -> TracingContext: | CODE |
| LOW | gs_quant/timeseries/measures_factset.py | 1351 | except Exception as e: | CODE |
| LOW | gs_quant/timeseries/measures_factset.py | 1641 | except Exception as e: | CODE |
| LOW | gs_quant/timeseries/measures_factset.py | 1665 | except Exception as e: | CODE |
| LOW | gs_quant/timeseries/measures_factset.py | 1688 | except Exception as e: | CODE |
| LOW | gs_quant/timeseries/measures_factset.py | 1748 | except Exception as e: | CODE |
| LOW | gs_quant/timeseries/measures_factset.py | 1761 | except Exception as e: | CODE |
| MEDIUM | gs_quant/timeseries/measures.py | 2594 | def measure_request_safe(parent_fn_name, asset, fn, request_id, *args, **kwargs) | CODE |
| LOW | gs_quant/timeseries/measures.py | 2092 | except Exception as e: | CODE |
| LOW | gs_quant/timeseries/measures.py | 2992 | except Exception as e: | CODE |
| LOW | gs_quant/timeseries/measures.py | 5635 | except Exception as e: | CODE |
| LOW | gs_quant/timeseries/measures.py | 5715 | except Exception as e: | CODE |
| LOW | gs_quant/timeseries/measures_cognitive_credit.py | 199 | except Exception as e: | CODE |
| LOW | gs_quant/timeseries/measures_fx_vol.py | 630 | except Exception as error: | CODE |
| LOW | gs_quant/timeseries/measures_fx_vol.py | 1056 | except Exception as error: | CODE |
| LOW | gs_quant/timeseries/_event_study/event_study_labels.py | 81 | except Exception: | CODE |
| LOW⚡ | gs_quant/timeseries/_event_study/event_study_labels.py | 99 | except Exception: | CODE |
| LOW⚡ | gs_quant/timeseries/_event_study/event_study_labels.py | 101 | except Exception: | CODE |
| LOW⚡ | gs_quant/timeseries/_event_study/event_study_labels.py | 109 | except Exception: | CODE |
| LOW⚡ | …nt/timeseries/_event_study/event_study_asset_source.py | 93 | except Exception: | CODE |
| LOW⚡ | …nt/timeseries/_event_study/event_study_asset_source.py | 95 | except Exception: | CODE |
| LOW | gs_quant/test/tracing/test_tracing.py | 74 | except Exception: | CODE |
| LOW | gs_quant/test/utils/mock_request.py | 209 | except Exception: | CODE |
| LOW | gs_quant/test/utils/mock_request.py | 228 | except Exception: | CODE |
| LOW | gs_quant/test/data/test_data_caching.py | 214 | except Exception: | CODE |
| LOW | gs_quant/instrument/core.py | 208 | except Exception as e: | CODE |
| MEDIUM | gs_quant/instrument/core.py | 205 | def cb(f): | CODE |
| LOW | gs_quant/backtests/backtest_objects.py | 445 | except Exception: | CODE |
| LOW | gs_quant/datetime/rules.py | 85 | except Exception as e: | CODE |
| LOW⚡ | gs_quant/mcp/client.py | 366 | except Exception as exc: # noqa: BLE001 - surface clean error to CLI users | CODE |
| LOW | gs_quant/mcp/client.py | 427 | except Exception as exc: # noqa: BLE001 - never let close errors bubble | STRING |
| LOW | gs_quant/mcp/client.py | 436 | except Exception as exc: # noqa: BLE001 - want to enter REPL even if listing fails | STRING |
| LOW | gs_quant/mcp/client.py | 514 | except Exception as exc: # noqa: BLE001 | STRING |
| LOW | gs_quant/mcp/client.py | 518 | except Exception as exc: # noqa: BLE001 - REPL must not die on tool errors | STRING |
| LOW | gs_quant/mcp/tools/data/tools.py | 178 | except Exception as e: | CODE |
| LOW | gs_quant/models/risk_model_utils.py | 675 | except Exception as unknown_exception: | CODE |
| LOW | gs_quant/markets/hedge.py | 589 | except Exception as e: | CODE |
| LOW | gs_quant/markets/factor_analytics.py | 128 | except Exception as e: | CODE |
| LOW | gs_quant/markets/portfolio_manager.py | 696 | except Exception as ex: | CODE |
| LOW | gs_quant/markets/optimizer.py | 1718 | except Exception as e: | CODE |
| LOW | gs_quant/markets/optimizer.py | 1785 | except Exception as e: | CODE |
| LOW | gs_quant/markets/optimizer.py | 1839 | except Exception as e: | CODE |
| LOW | gs_quant/markets/optimizer.py | 2282 | except Exception as e: | CODE |
| LOW | gs_quant/markets/report.py | 627 | except Exception as e: | CODE |
| LOW | gs_quant/api/risk.py | 71 | except Exception as e: | CODE |
| LOW | gs_quant/api/risk.py | 217 | except Exception as e: | CODE |
| LOW | gs_quant/api/risk.py | 337 | except Exception: | CODE |
| LOW | gs_quant/api/risk.py | 375 | except Exception as e: | CODE |
| LOW | gs_quant/api/gs/hedges.py | 326 | except Exception as e: | CODE |
| LOW | gs_quant/api/gs/hedges.py | 338 | except Exception as e: | CODE |
| LOW | gs_quant/api/gs/risk.py | 147 | except Exception as e: | CODE |
| 24 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | gs_quant/timeseries/measures_fx_vol.py | 353 | Flip call/put smile references when the FX cross must be queried in stored direction. Purpose: Keep sm | STRING |
| HIGH | gs_quant/timeseries/measures_fx_vol.py | 379 | Convert a smile reference into the asset-service strike label and option type. Purpose: Translate user | STRING |
| HIGH | gs_quant/timeseries/measures_fx_vol.py | 419 | Resolve the five standard FX smile points into batched asset lookup metadata. Purpose: Precompute all | STRING |
| HIGH | gs_quant/timeseries/measures_fx_vol.py | 532 | Fetch implied-volatility market data for all smile asset ids in one query. Purpose: Collapse the commo | STRING |
| HIGH | gs_quant/timeseries/measures_fx_vol.py | 574 | Fetch unresolved FX smile points through the single-point measure path. Purpose: Preserve resilience w | STRING |
| HIGH | gs_quant/api/gs/secmaster.py | 238 | Get identifiers for a list of secmaster ids. It runs in batches till all data is fetched. This method | STRING |
| HIGH | gs_quant/api/gs/secmaster.py | 803 | Retrieve reference data for listed derivatives based on their underlyers. This method retrieves securi | STRING |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | conftest.py | 1 | # This import is needed to register the magic pylint hooks to make it skip the integration tests | COMMENT |
| LOW | versioneer.py | 1841 | vers = get_versions(verbose=True) | COMMENT |
| LOW | docs/conf.py | 1 | # -*- coding: utf-8 -*- | COMMENT |
| LOW | docs/conf.py | 61 | COMMENT | |
| LOW | docs/conf.py | 101 | COMMENT | |
| LOW | docs/conf.py | 121 | # defined by theme itself. Builtin themes are using these templates by | COMMENT |
| LOW | docs/conf.py | 141 | # | COMMENT |
| LOW | docs/_build/html/_static/jquery-3.5.1.js | 841 | // qSA considers elements outside a scoping root when evaluating child or | COMMENT |
| LOW | docs/_build/html/_static/jquery-3.5.1.js | 1021 | // Known :disabled false positives: fieldset[disabled] > legend:nth-of-type(n+2) :can-disable | COMMENT |
| LOW | docs/_build/html/_static/jquery-3.5.1.js | 4301 | // In cases where either: | COMMENT |
| LOW | docs/_build/html/_static/underscore-1.3.1.js | 1 | // Underscore.js 1.3.1 | COMMENT |
| LOW | gs_quant/timeseries/analysis.py | 1 | # Copyright 2018 Goldman Sachs. | COMMENT |
| LOW | gs_quant/timeseries/algebra.py | 1 | # Copyright 2018 Goldman Sachs. | COMMENT |
| LOW | gs_quant/timeseries/technicals.py | 1 | # Copyright 2018 Goldman Sachs. | COMMENT |
| LOW | gs_quant/timeseries/event_study.py | 21 | # internal modules, while this file keeps the public framing API thin. | COMMENT |
| LOW | gs_quant/timeseries/event_study.py | 41 | # event_study_labels -> propagation of contextual event labels | COMMENT |
| LOW | gs_quant/timeseries/event_study.py | 61 | # | COMMENT |
| LOW | gs_quant/timeseries/measures.py | 1 | # Copyright 2019 Goldman Sachs. | COMMENT |
| LOW | gs_quant/timeseries/statistics.py | 1 | # Copyright 2018 Goldman Sachs. | COMMENT |
| LOW | gs_quant/timeseries/econometrics.py | 1 | # Copyright 2018 Goldman Sachs. | COMMENT |
| LOW | gs_quant/timeseries/datetime.py | 1 | # Copyright 2018 Goldman Sachs. | COMMENT |
| LOW | …uant/timeseries/_event_study/event_study_processing.py | 21 | # Own the source-agnostic transformations around the event-study flow: | COMMENT |
| LOW | gs_quant/timeseries/_event_study/event_study_labels.py | 21 | # Own the label-building rules that preserve event context across the | COMMENT |
| LOW | …ant/timeseries/_event_study/event_study_definitions.py | 21 | # Own the immutable event model and registry data used by the event-study | COMMENT |
| LOW | …ant/timeseries/_event_study/event_study_definitions.py | 41 | # help in tests and debugging, and immutability reduces the chance of | COMMENT |
| LOW | gs_quant/timeseries/_event_study/event_study_objects.py | 21 | # Own the reusable event loader objects and the logic that turns a | COMMENT |
| LOW | gs_quant/timeseries/_event_study/event_study_frame.py | 21 | # Own the pure dataframe-shaping side of event study: calendar-date | COMMENT |
| LOW | gs_quant/timeseries/_event_study/event_study_impact.py | 21 | # Detect event dates from one timeseries based on thresholded moves, map | COMMENT |
| LOW | gs_quant/timeseries/_event_study/event_study_query.py | 21 | # Own the caller-facing normalization path for event-date queries: ticker | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | versioneer.py | 481 | # This file is released into the public domain. | COMMENT |
| MEDIUM | gs_quant/_version.py | 8 | # This file is released into the public domain. | COMMENT |
| MEDIUM⚡ | gs_quant/tracing/tracing.py | 417 | # Create an OpenTelemetry Tracer. | COMMENT |
| MEDIUM | gs_quant/timeseries/event_study.py | 19 | # This module is the public event-study entry point. Static event definitions, | COMMENT |
| MEDIUM | gs_quant/timeseries/measures.py | 5443 | # Create a dataframe with required columns | COMMENT |
| MEDIUM | gs_quant/timeseries/measures.py | 5526 | # Create a dataframe with required columns | COMMENT |
| MEDIUM | gs_quant/test/backtest/test_generic_engine.py | 1036 | # Create a portfolio of equity options with different characteristics | COMMENT |
| MEDIUM | gs_quant/test/backtest/test_generic_engine.py | 1059 | # Define the weighted trade action | COMMENT |
| MEDIUM | gs_quant/analytics/datagrid/datagrid.py | 200 | # Create the cell | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | …s/_build/html/_modules/gs_quant/timeseries/helper.html | 287 | <span class="c1"># Set category to None for no restrictions, else provide a tuple of allowed values.</span> | CODE |
| LOW⚡ | gs_quant/timeseries/measures.py | 5362 | # Check if market date is future date for the given asset | COMMENT |
| LOW⚡ | gs_quant/timeseries/measures.py | 5370 | # Check if market date is weekend | COMMENT |
| LOW⚡ | gs_quant/timeseries/measures.py | 5373 | # Check if market date is within end and start date ranges | COMMENT |
| LOW | gs_quant/timeseries/measures.py | 5412 | # Check if market date do not have an entry, a holiday or value not entered yet, if so get prev date value | COMMENT |
| LOW | gs_quant/timeseries/measures.py | 5497 | # Check if market date do not have an entry, a holiday or value not entered yet, if so get prev date value | COMMENT |
| LOW | gs_quant/timeseries/helper.py | 254 | # Set category to None for no restrictions, else provide a tuple of allowed values. | COMMENT |
| LOW | gs_quant/test/timeseries/test_datetime.py | 587 | # Check if the holiday was removed | COMMENT |
| LOW⚡ | gs_quant/test/utils/mock_request.py | 173 | # Check if we have already saved this file in this test run, in which case skip re-saving it | COMMENT |
| LOW | gs_quant/markets/position_set.py | 857 | # Set notional to gross notional because in case of L/S pricing the API normalizes all weights wrt gross | COMMENT |
| LOW | gs_quant/data/utilities.py | 409 | # Check if any active identifier has infinity end date | COMMENT |
| LOW | gs_quant/analytics/datagrid/datagrid.py | 206 | # Check if there is a processor override and apply if so | COMMENT |
| LOW | gs_quant/analytics/common/helpers.py | 41 | # Check if the entity is in the cache | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| CRITICAL | docs/_build/html/_static/jquery-3.5.1.js | 8086 | jQuery.each( jQuery.expr.match.bool.source.match( /\w+/g ), function( _i, name ) { | CODE |
| CRITICAL | docs/_build/html/_static/jquery.js | 2 | !function(e,t){"use strict";"object"==typeof module&&"object"==typeof module.exports?module.exports=e.document?t(e,!0):f | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | versioneer.py | 500 | # each be defined on a line of their own. _version.py will just call | COMMENT |
| MEDIUM | docs/_build/html/_static/jquery-3.5.1.js | 10821 | // understands anonymous AMD modules. A named AMD is safest and most robust | COMMENT |
| LOW | gs_quant/_version.py | 27 | # each be defined on a line of their own. _version.py will just call | COMMENT |
| LOW | gs_quant/json_convertors.py | 54 | # So this decoder would become redundant, to allow any version we simply return if it's already a date | COMMENT |
| LOW | gs_quant/json_convertors.py | 67 | # So this decoder would become redundant, to allow any version we simply return if it's already a time | COMMENT |
| LOW | gs_quant/test/timeseries/test_measures_factset.py | 1150 | # Mock ThreadPoolManager.run_async to just call each task sequentially | COMMENT |
| LOW | gs_quant/backtests/predefined_asset_engine.py | 152 | # or as a datetime itself in which case just add it to the timer | COMMENT |
| LOW | gs_quant/analytics/common/helpers.py | 53 | # If the reference is for a data row, simply set the entity of the row. | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW⚡ | gs_quant/models/risk_model.py | 1420 | # Step 2: stitch all fetch batches into one assetData dict | COMMENT |
| LOW⚡ | gs_quant/models/risk_model.py | 1427 | # Step 3: merge — input wins on conflict, existing fields preserved. | COMMENT |
| LOW | gs_quant/models/risk_model.py | 1377 | # Step 1: fetch existing data for the input universe only, in batches. | COMMENT |
| LOW | gs_quant/models/risk_model.py | 1440 | # Step 4: upload only the merged input universe (server leaves all other assets alone) | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW⚡ | gs_quant/models/risk_model.py | 1420 | # Step 2: stitch all fetch batches into one assetData dict | COMMENT |
| LOW⚡ | gs_quant/models/risk_model.py | 1427 | # Step 3: merge — input wins on conflict, existing fields preserved. | COMMENT |
| LOW | gs_quant/models/risk_model.py | 1377 | # Step 1: fetch existing data for the input universe only, in batches. | COMMENT |
| LOW | gs_quant/models/risk_model.py | 1440 | # Step 4: upload only the merged input universe (server leaves all other assets alone) | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | gs_quant/session.py | 49 | logger = logging.getLogger(__name__) | CODE |
| LOW | gs_quant/timeseries/event_study.py | 392 | __all__ = [ | CODE |
| LOW | gs_quant/backtests/generic_engine.py | 66 | logger = logging.getLogger(__name__) | CODE |
| LOW | gs_quant/mcp/__init__.py | 4 | __all__ = [ | CODE |
| LOW | gs_quant/mcp/tools/__init__.py | 8 | __all__ = [ | CODE |
| LOW | gs_quant/api/gs/secmaster.py | 35 | logger = logging.getLogger(__name__) | CODE |
| LOW | …asset/response_datatypes/generic_backtest_datatypes.py | 29 | __all__ = ['decode_strategy'] | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | gs_quant/test/entities/test_entitlements.py | 28 | {'id': 'userId', 'email': 'jane.doe@gs.com', 'name': 'Jane Doe', 'company': 'Goldman Sachs Group'} | CODE |
| LOW | gs_quant/test/entities/test_entitlements.py | 69 | {'id': 'userId', 'email': 'jane.doe@gs.com', 'name': 'Jane Doe', 'company': 'Goldman Sachs Group'} | CODE |
| LOW | gs_quant/test/entities/test_entitlements.py | 83 | {'id': 'userId', 'email': 'jane.doe@gs.com', 'name': 'Jane Doe', 'company': 'Goldman Sachs Group'} | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | gs_quant/markets/report.py | 832 | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | gs_quant/markets/portfolio_manager.py | 191 | # make sure to process the last batch | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | docs/_build/html/_static/jquery-3.5.1.js | 4401 | function getData( data ) { | CODE |