Skip to content

feat: add support for iShares in Switzerland and update region handling#37

Merged
yevklym merged 2 commits into
mainfrom
feat/ishares-ch
May 30, 2026
Merged

feat: add support for iShares in Switzerland and update region handling#37
yevklym merged 2 commits into
mainfrom
feat/ishares-ch

Conversation

@yevklym
Copy link
Copy Markdown
Owner

@yevklym yevklym commented May 30, 2026

This pull request adds support for the Swiss region (ch) to the iShares provider, improves normalization of Swiss number formats, and extends exchange normalization and documentation. The main changes are grouped below.

Swiss region (ch) support for iShares

  • Added a new configuration for the Swiss region (ch) in ishares, including URLs, currency, exchange, and mappings for asset classes, sectors, and locations.
  • Updated documentation and region listings to indicate support for ch (Switzerland) in both README.md and code comments. [1] [2]
  • Expanded region test coverage to include ch and other supported regions in client_test.go.

Exchange normalization

  • Added support for the SIX Swiss Exchange (SIX) in exchange enums and normalization logic, including recognition of "SIX" and "SIX SWISS EXCHANGE". [1] [2]
  • Improved NYSE normalization to handle additional variants of the name.

Number format normalization

  • Improved Swiss number format normalization by handling both straight and curly apostrophes as thousands separators.
  • Added tests for curly apostrophe handling in Swiss number formats.

@yevklym yevklym self-assigned this May 30, 2026
Copilot AI review requested due to automatic review settings May 30, 2026 13:15
@yevklym yevklym added the enhancement New feature or request label May 30, 2026
Copy link
Copy Markdown

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR adds iShares Switzerland (ch) support and extends normalization for Swiss-specific exchange and number formats within the ETF provider implementation.

Changes:

  • Adds Swiss iShares region configuration and updates supported-region documentation.
  • Adds ExchangeSIX plus iShares exchange aliases for SIX and additional NYSE variants.
  • Extends Swiss number normalization to strip curly apostrophe thousands separators and expands related tests.

Reviewed changes

Copilot reviewed 8 out of 8 changed files in this pull request and generated 3 comments.

Show a summary per file
File Description
README.md Documents ch as a supported iShares region.
enums.go Adds the SIX Swiss Exchange enum value.
internal/providers/ishares/client.go Updates package documentation with the full supported iShares region list.
internal/providers/ishares/client_test.go Expands supported-region construction tests to include UK, FR, and CH casing.
internal/providers/ishares/config.go Adds the Swiss iShares region configuration.
internal/providers/ishares/normalize.go Adds normalization aliases for NYSE variants and SIX.
internal/providers/ishares/column_resolver.go Strips additional curly apostrophe thousands separators.
internal/providers/ishares/column_resolver_test.go Adds coverage for one curly apostrophe Swiss number format.

Comment thread internal/providers/ishares/config.go
Comment thread internal/providers/ishares/column_resolver.go
Comment thread internal/providers/ishares/normalize.go
@yevklym yevklym merged commit 58ce2b1 into main May 30, 2026
5 checks passed
@yevklym yevklym deleted the feat/ishares-ch branch May 30, 2026 14:25
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants