artesian-sdk 4.2.3.dev2__tar.gz → 4.2.3.dev6__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {artesian_sdk-4.2.3.dev2 → artesian_sdk-4.2.3.dev6}/.github/workflows/python-tests.yml +1 -1
- {artesian_sdk-4.2.3.dev2 → artesian_sdk-4.2.3.dev6}/PKG-INFO +35 -5
- {artesian_sdk-4.2.3.dev2 → artesian_sdk-4.2.3.dev6}/README.md +34 -4
- {artesian_sdk-4.2.3.dev2 → artesian_sdk-4.2.3.dev6}/src/Artesian/_version.py +3 -3
- {artesian_sdk-4.2.3.dev2 → artesian_sdk-4.2.3.dev6}/src/artesian_sdk.egg-info/PKG-INFO +35 -5
- {artesian_sdk-4.2.3.dev2 → artesian_sdk-4.2.3.dev6}/.flake8 +0 -0
- {artesian_sdk-4.2.3.dev2 → artesian_sdk-4.2.3.dev6}/.github/dependabot.yml +0 -0
- {artesian_sdk-4.2.3.dev2 → artesian_sdk-4.2.3.dev6}/.github/workflows/dependency-review.yaml +0 -0
- {artesian_sdk-4.2.3.dev2 → artesian_sdk-4.2.3.dev6}/.gitignore +0 -0
- {artesian_sdk-4.2.3.dev2 → artesian_sdk-4.2.3.dev6}/.vscode/extensions.json +0 -0
- {artesian_sdk-4.2.3.dev2 → artesian_sdk-4.2.3.dev6}/.vscode/launch.json +0 -0
- {artesian_sdk-4.2.3.dev2 → artesian_sdk-4.2.3.dev6}/.vscode/settings.json +0 -0
- {artesian_sdk-4.2.3.dev2 → artesian_sdk-4.2.3.dev6}/CODEOWNERS +0 -0
- {artesian_sdk-4.2.3.dev2 → artesian_sdk-4.2.3.dev6}/CONTRIBUTING.md +0 -0
- {artesian_sdk-4.2.3.dev2 → artesian_sdk-4.2.3.dev6}/LICENSE +0 -0
- {artesian_sdk-4.2.3.dev2 → artesian_sdk-4.2.3.dev6}/pyproject.toml +0 -0
- {artesian_sdk-4.2.3.dev2 → artesian_sdk-4.2.3.dev6}/renovate.json +0 -0
- {artesian_sdk-4.2.3.dev2 → artesian_sdk-4.2.3.dev6}/samples/TestActual.py +0 -0
- {artesian_sdk-4.2.3.dev2 → artesian_sdk-4.2.3.dev6}/samples/TestAuction.py +0 -0
- {artesian_sdk-4.2.3.dev2 → artesian_sdk-4.2.3.dev6}/samples/TestBidAsk.py +0 -0
- {artesian_sdk-4.2.3.dev2 → artesian_sdk-4.2.3.dev6}/samples/TestDerivedCfg.py +0 -0
- {artesian_sdk-4.2.3.dev2 → artesian_sdk-4.2.3.dev6}/samples/TestGMEOffers.py +0 -0
- {artesian_sdk-4.2.3.dev2 → artesian_sdk-4.2.3.dev6}/samples/TestMarketDataService.py +0 -0
- {artesian_sdk-4.2.3.dev2 → artesian_sdk-4.2.3.dev6}/samples/TestMas.py +0 -0
- {artesian_sdk-4.2.3.dev2 → artesian_sdk-4.2.3.dev6}/samples/TestSearchFacet.py +0 -0
- {artesian_sdk-4.2.3.dev2 → artesian_sdk-4.2.3.dev6}/samples/TestVersioned.py +0 -0
- {artesian_sdk-4.2.3.dev2 → artesian_sdk-4.2.3.dev6}/samples/TestWriteDataAndDeleteActual.py +0 -0
- {artesian_sdk-4.2.3.dev2 → artesian_sdk-4.2.3.dev6}/samples/TestWriteDataAndDeleteAuction.py +0 -0
- {artesian_sdk-4.2.3.dev2 → artesian_sdk-4.2.3.dev6}/samples/TestWriteDataAndDeleteBidAsk.py +0 -0
- {artesian_sdk-4.2.3.dev2 → artesian_sdk-4.2.3.dev6}/samples/TestWriteDataAndDeleteMas.py +0 -0
- {artesian_sdk-4.2.3.dev2 → artesian_sdk-4.2.3.dev6}/samples/TestWriteDataAndDeleteVersioned.py +0 -0
- {artesian_sdk-4.2.3.dev2 → artesian_sdk-4.2.3.dev6}/samples/TestWriteDataAndQueryActual.py +0 -0
- {artesian_sdk-4.2.3.dev2 → artesian_sdk-4.2.3.dev6}/samples/TestWriteDataAndQueryAuction.py +0 -0
- {artesian_sdk-4.2.3.dev2 → artesian_sdk-4.2.3.dev6}/samples/TestWriteDataAndQueryBidAsk.py +0 -0
- {artesian_sdk-4.2.3.dev2 → artesian_sdk-4.2.3.dev6}/samples/TestWriteDataAndQueryMas.py +0 -0
- {artesian_sdk-4.2.3.dev2 → artesian_sdk-4.2.3.dev6}/setup.cfg +0 -0
- {artesian_sdk-4.2.3.dev2 → artesian_sdk-4.2.3.dev6}/src/Artesian/.gitignore +0 -0
- {artesian_sdk-4.2.3.dev2 → artesian_sdk-4.2.3.dev6}/src/Artesian/ArtesianConfig.py +0 -0
- {artesian_sdk-4.2.3.dev2 → artesian_sdk-4.2.3.dev6}/src/Artesian/ArtesianPolicyConfig.py +0 -0
- {artesian_sdk-4.2.3.dev2 → artesian_sdk-4.2.3.dev6}/src/Artesian/Exceptions.py +0 -0
- {artesian_sdk-4.2.3.dev2 → artesian_sdk-4.2.3.dev6}/src/Artesian/GMEPublicOffers/ExtractionRangeConfig.py +0 -0
- {artesian_sdk-4.2.3.dev2 → artesian_sdk-4.2.3.dev6}/src/Artesian/GMEPublicOffers/GMEPublicOfferQuery.py +0 -0
- {artesian_sdk-4.2.3.dev2 → artesian_sdk-4.2.3.dev6}/src/Artesian/GMEPublicOffers/GMEPublicOfferQueryParameters.py +0 -0
- {artesian_sdk-4.2.3.dev2 → artesian_sdk-4.2.3.dev6}/src/Artesian/GMEPublicOffers/GMEPublicOfferService.py +0 -0
- {artesian_sdk-4.2.3.dev2 → artesian_sdk-4.2.3.dev6}/src/Artesian/GMEPublicOffers/_Enum/BaType.py +0 -0
- {artesian_sdk-4.2.3.dev2 → artesian_sdk-4.2.3.dev6}/src/Artesian/GMEPublicOffers/_Enum/GenerationType.py +0 -0
- {artesian_sdk-4.2.3.dev2 → artesian_sdk-4.2.3.dev6}/src/Artesian/GMEPublicOffers/_Enum/Market.py +0 -0
- {artesian_sdk-4.2.3.dev2 → artesian_sdk-4.2.3.dev6}/src/Artesian/GMEPublicOffers/_Enum/Purpose.py +0 -0
- {artesian_sdk-4.2.3.dev2 → artesian_sdk-4.2.3.dev6}/src/Artesian/GMEPublicOffers/_Enum/Scope.py +0 -0
- {artesian_sdk-4.2.3.dev2 → artesian_sdk-4.2.3.dev6}/src/Artesian/GMEPublicOffers/_Enum/Status.py +0 -0
- {artesian_sdk-4.2.3.dev2 → artesian_sdk-4.2.3.dev6}/src/Artesian/GMEPublicOffers/_Enum/UnitType.py +0 -0
- {artesian_sdk-4.2.3.dev2 → artesian_sdk-4.2.3.dev6}/src/Artesian/GMEPublicOffers/_Enum/Zone.py +0 -0
- {artesian_sdk-4.2.3.dev2 → artesian_sdk-4.2.3.dev6}/src/Artesian/GMEPublicOffers/_Enum/__init__.py +0 -0
- {artesian_sdk-4.2.3.dev2 → artesian_sdk-4.2.3.dev6}/src/Artesian/GMEPublicOffers/__init__.py +0 -0
- {artesian_sdk-4.2.3.dev2 → artesian_sdk-4.2.3.dev6}/src/Artesian/Granularity.py +0 -0
- {artesian_sdk-4.2.3.dev2 → artesian_sdk-4.2.3.dev6}/src/Artesian/MarketData/CommonUnitOfMeasure.py +0 -0
- {artesian_sdk-4.2.3.dev2 → artesian_sdk-4.2.3.dev6}/src/Artesian/MarketData/MarketDataService.py +0 -0
- {artesian_sdk-4.2.3.dev2 → artesian_sdk-4.2.3.dev6}/src/Artesian/MarketData/_Dto/ArtesianMetadataFacet.py +0 -0
- {artesian_sdk-4.2.3.dev2 → artesian_sdk-4.2.3.dev6}/src/Artesian/MarketData/_Dto/ArtesianSearchResults.py +0 -0
- {artesian_sdk-4.2.3.dev2 → artesian_sdk-4.2.3.dev6}/src/Artesian/MarketData/_Dto/CheckConversionResult.py +0 -0
- {artesian_sdk-4.2.3.dev2 → artesian_sdk-4.2.3.dev6}/src/Artesian/MarketData/_Dto/CurveRangeEntity.py +0 -0
- {artesian_sdk-4.2.3.dev2 → artesian_sdk-4.2.3.dev6}/src/Artesian/MarketData/_Dto/DeleteData.py +0 -0
- {artesian_sdk-4.2.3.dev2 → artesian_sdk-4.2.3.dev6}/src/Artesian/MarketData/_Dto/DerivedCfg.py +0 -0
- {artesian_sdk-4.2.3.dev2 → artesian_sdk-4.2.3.dev6}/src/Artesian/MarketData/_Dto/MarketDataEntityInput.py +0 -0
- {artesian_sdk-4.2.3.dev2 → artesian_sdk-4.2.3.dev6}/src/Artesian/MarketData/_Dto/MarketDataEntityOutput.py +0 -0
- {artesian_sdk-4.2.3.dev2 → artesian_sdk-4.2.3.dev6}/src/Artesian/MarketData/_Dto/MarketDataIdentifier.py +0 -0
- {artesian_sdk-4.2.3.dev2 → artesian_sdk-4.2.3.dev6}/src/Artesian/MarketData/_Dto/PagedResult.py +0 -0
- {artesian_sdk-4.2.3.dev2 → artesian_sdk-4.2.3.dev6}/src/Artesian/MarketData/_Dto/UnitOfMeasure.py +0 -0
- {artesian_sdk-4.2.3.dev2 → artesian_sdk-4.2.3.dev6}/src/Artesian/MarketData/_Dto/UpsertData.py +0 -0
- {artesian_sdk-4.2.3.dev2 → artesian_sdk-4.2.3.dev6}/src/Artesian/MarketData/_Dto/__init__.py +0 -0
- {artesian_sdk-4.2.3.dev2 → artesian_sdk-4.2.3.dev6}/src/Artesian/MarketData/_Enum/AggregationRule.py +0 -0
- {artesian_sdk-4.2.3.dev2 → artesian_sdk-4.2.3.dev6}/src/Artesian/MarketData/_Enum/ArtesianMetadataFacetType.py +0 -0
- {artesian_sdk-4.2.3.dev2 → artesian_sdk-4.2.3.dev6}/src/Artesian/MarketData/_Enum/DerivedAlgorithm.py +0 -0
- {artesian_sdk-4.2.3.dev2 → artesian_sdk-4.2.3.dev6}/src/Artesian/MarketData/_Enum/MarketDataType.py +0 -0
- {artesian_sdk-4.2.3.dev2 → artesian_sdk-4.2.3.dev6}/src/Artesian/MarketData/_Enum/UpsertMode.py +0 -0
- {artesian_sdk-4.2.3.dev2 → artesian_sdk-4.2.3.dev6}/src/Artesian/MarketData/_Enum/__init__.py +0 -0
- {artesian_sdk-4.2.3.dev2 → artesian_sdk-4.2.3.dev6}/src/Artesian/MarketData/__init__.py +0 -0
- {artesian_sdk-4.2.3.dev2 → artesian_sdk-4.2.3.dev6}/src/Artesian/Query/ActualQuery.py +0 -0
- {artesian_sdk-4.2.3.dev2 → artesian_sdk-4.2.3.dev6}/src/Artesian/Query/AuctionQuery.py +0 -0
- {artesian_sdk-4.2.3.dev2 → artesian_sdk-4.2.3.dev6}/src/Artesian/Query/BidAskQuery.py +0 -0
- {artesian_sdk-4.2.3.dev2 → artesian_sdk-4.2.3.dev6}/src/Artesian/Query/DefaultPartitionStrategy.py +0 -0
- {artesian_sdk-4.2.3.dev2 → artesian_sdk-4.2.3.dev6}/src/Artesian/Query/MasQuery.py +0 -0
- {artesian_sdk-4.2.3.dev2 → artesian_sdk-4.2.3.dev6}/src/Artesian/Query/QueryService.py +0 -0
- {artesian_sdk-4.2.3.dev2 → artesian_sdk-4.2.3.dev6}/src/Artesian/Query/RelativeInterval.py +0 -0
- {artesian_sdk-4.2.3.dev2 → artesian_sdk-4.2.3.dev6}/src/Artesian/Query/VersionedQuery.py +0 -0
- {artesian_sdk-4.2.3.dev2 → artesian_sdk-4.2.3.dev6}/src/Artesian/Query/_Query.py +0 -0
- {artesian_sdk-4.2.3.dev2 → artesian_sdk-4.2.3.dev6}/src/Artesian/Query/_QueryParameters/ActualQueryParameters.py +0 -0
- {artesian_sdk-4.2.3.dev2 → artesian_sdk-4.2.3.dev6}/src/Artesian/Query/_QueryParameters/AuctionQueryParameters.py +0 -0
- {artesian_sdk-4.2.3.dev2 → artesian_sdk-4.2.3.dev6}/src/Artesian/Query/_QueryParameters/BidAskQueryParameters.py +0 -0
- {artesian_sdk-4.2.3.dev2 → artesian_sdk-4.2.3.dev6}/src/Artesian/Query/_QueryParameters/ExtractionRangeConfig.py +0 -0
- {artesian_sdk-4.2.3.dev2 → artesian_sdk-4.2.3.dev6}/src/Artesian/Query/_QueryParameters/ExtractionRangeType.py +0 -0
- {artesian_sdk-4.2.3.dev2 → artesian_sdk-4.2.3.dev6}/src/Artesian/Query/_QueryParameters/MasQueryParameters.py +0 -0
- {artesian_sdk-4.2.3.dev2 → artesian_sdk-4.2.3.dev6}/src/Artesian/Query/_QueryParameters/MostRecentSelectionConfig.py +0 -0
- {artesian_sdk-4.2.3.dev2 → artesian_sdk-4.2.3.dev6}/src/Artesian/Query/_QueryParameters/QueryParameters.py +0 -0
- {artesian_sdk-4.2.3.dev2 → artesian_sdk-4.2.3.dev6}/src/Artesian/Query/_QueryParameters/VersionSelectionConfig.py +0 -0
- {artesian_sdk-4.2.3.dev2 → artesian_sdk-4.2.3.dev6}/src/Artesian/Query/_QueryParameters/VersionSelectionType.py +0 -0
- {artesian_sdk-4.2.3.dev2 → artesian_sdk-4.2.3.dev6}/src/Artesian/Query/_QueryParameters/VersionedQueryParameters.py +0 -0
- {artesian_sdk-4.2.3.dev2 → artesian_sdk-4.2.3.dev6}/src/Artesian/Query/_QueryParameters/VersionsRangeSelectionConfig.py +0 -0
- {artesian_sdk-4.2.3.dev2 → artesian_sdk-4.2.3.dev6}/src/Artesian/Query/_QueryParameters/__init__.py +0 -0
- {artesian_sdk-4.2.3.dev2 → artesian_sdk-4.2.3.dev6}/src/Artesian/Query/__init__.py +0 -0
- {artesian_sdk-4.2.3.dev2 → artesian_sdk-4.2.3.dev6}/src/Artesian/_ClientsExecutor/ArtesianJsonSerializer.py +0 -0
- {artesian_sdk-4.2.3.dev2 → artesian_sdk-4.2.3.dev6}/src/Artesian/_ClientsExecutor/Client.py +0 -0
- {artesian_sdk-4.2.3.dev2 → artesian_sdk-4.2.3.dev6}/src/Artesian/_ClientsExecutor/RequestExecutor.py +0 -0
- {artesian_sdk-4.2.3.dev2 → artesian_sdk-4.2.3.dev6}/src/Artesian/_ClientsExecutor/__init__.py +0 -0
- {artesian_sdk-4.2.3.dev2 → artesian_sdk-4.2.3.dev6}/src/Artesian/__init__.py +0 -0
- {artesian_sdk-4.2.3.dev2 → artesian_sdk-4.2.3.dev6}/src/artesian_sdk.egg-info/SOURCES.txt +0 -0
- {artesian_sdk-4.2.3.dev2 → artesian_sdk-4.2.3.dev6}/src/artesian_sdk.egg-info/dependency_links.txt +0 -0
- {artesian_sdk-4.2.3.dev2 → artesian_sdk-4.2.3.dev6}/src/artesian_sdk.egg-info/requires.txt +0 -0
- {artesian_sdk-4.2.3.dev2 → artesian_sdk-4.2.3.dev6}/src/artesian_sdk.egg-info/top_level.txt +0 -0
- {artesian_sdk-4.2.3.dev2 → artesian_sdk-4.2.3.dev6}/tests/TestActual.py +0 -0
- {artesian_sdk-4.2.3.dev2 → artesian_sdk-4.2.3.dev6}/tests/TestBidAsk.py +0 -0
- {artesian_sdk-4.2.3.dev2 → artesian_sdk-4.2.3.dev6}/tests/TestClientErrorHandling.py +0 -0
- {artesian_sdk-4.2.3.dev2 → artesian_sdk-4.2.3.dev6}/tests/TestGMEPO.py +0 -0
- {artesian_sdk-4.2.3.dev2 → artesian_sdk-4.2.3.dev6}/tests/TestMarketDataDeleteData.py +0 -0
- {artesian_sdk-4.2.3.dev2 → artesian_sdk-4.2.3.dev6}/tests/TestMarketDataService.py +0 -0
- {artesian_sdk-4.2.3.dev2 → artesian_sdk-4.2.3.dev6}/tests/TestMarketDataUpsertData.py +0 -0
- {artesian_sdk-4.2.3.dev2 → artesian_sdk-4.2.3.dev6}/tests/TestMas.py +0 -0
- {artesian_sdk-4.2.3.dev2 → artesian_sdk-4.2.3.dev6}/tests/TestVersioned.py +0 -0
- {artesian_sdk-4.2.3.dev2 → artesian_sdk-4.2.3.dev6}/tests/__init__.py +0 -0
- {artesian_sdk-4.2.3.dev2 → artesian_sdk-4.2.3.dev6}/tests/helpers.py +0 -0
|
@@ -49,7 +49,7 @@ jobs:
|
|
|
49
49
|
pytest --junitxml=junit/test-results-${{ matrix.python-version }}-${{ matrix.os }}.xml
|
|
50
50
|
|
|
51
51
|
- name: Upload pytest test results
|
|
52
|
-
uses: actions/upload-artifact@
|
|
52
|
+
uses: actions/upload-artifact@v6
|
|
53
53
|
with:
|
|
54
54
|
name: pytest-results-${{ matrix.python-version }}-${{ matrix.os }}
|
|
55
55
|
path: junit/test-results-${{ matrix.python-version }}-${{ matrix.os }}.xml
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: artesian-sdk
|
|
3
|
-
Version: 4.2.3.
|
|
3
|
+
Version: 4.2.3.dev6
|
|
4
4
|
Summary: Library provides read access to the Artesian API
|
|
5
5
|
Author-email: ARK Lab <arklab@ark-energy.eu>
|
|
6
6
|
Maintainer-email: ARK Lab <arklab@ark-energy.eu>
|
|
@@ -466,23 +466,53 @@ res = mds.searchFacet(page, pageSize, searchText, filters, sorts, doNotLoadAddit
|
|
|
466
466
|
|
|
467
467
|
Artesian support Query over GME Public Offers which comes in a custom and dedicated format.
|
|
468
468
|
|
|
469
|
+
Note (performance):
|
|
470
|
+
GME Public Offer data is partitioned by date, offerType, status, and market. Requesting very narrow subsets (for example a single status or offerType in several separate requests) does not improve performance and can cause the same data to be fetched multiple times.
|
|
471
|
+
For this reason, the examples below:
|
|
472
|
+
• Use a large page size so that all data for a given (date, market, filters) is typically returned in a single page.
|
|
473
|
+
• Loop over markets explicitly to cover all required markets without redundant fetches.
|
|
474
|
+
|
|
469
475
|
### Extract GME Public Offer
|
|
470
476
|
|
|
471
477
|
```Python
|
|
472
478
|
from Artesian.GMEPublicOffers import GMEPublicOfferService, Market, Purpose, Status, Zone, Scope, UnitType, GenerationType, BAType
|
|
473
479
|
|
|
474
|
-
|
|
480
|
+
/* your Artesian configuration */;
|
|
481
|
+
|
|
482
|
+
var _cfg = new ArtesianServiceConfig(
|
|
483
|
+
new Uri("https://arkive.artesian.cloud/{TENANT_NAME}/"),
|
|
484
|
+
your_API_Key);
|
|
485
|
+
|
|
486
|
+
qs = GMEPublicOfferService(_cfg)
|
|
487
|
+
|
|
488
|
+
# Large page size: goal is to get all data for the given filters in one page
|
|
489
|
+
PAGE_SIZE = 250000
|
|
475
490
|
|
|
476
|
-
|
|
491
|
+
# List of markets to cover. Extend as needed for your use case.
|
|
492
|
+
markets = [
|
|
493
|
+
Market.MGP,
|
|
494
|
+
# Market.MSD,
|
|
495
|
+
# Market.MIT,
|
|
496
|
+
]
|
|
497
|
+
|
|
498
|
+
all_data = []
|
|
499
|
+
|
|
500
|
+
for market in markets:
|
|
501
|
+
|
|
502
|
+
data = (
|
|
503
|
+
qs.createQuery() \
|
|
477
504
|
.forDate("2020-04-01") \
|
|
478
505
|
.forMarket([Market.MGP]) \
|
|
479
506
|
.forStatus(Status.ACC) \
|
|
480
507
|
.forPurpose(Purpose.BID) \
|
|
481
508
|
.forZone([Zone.NORD]) \
|
|
482
|
-
.withPagination(1,
|
|
509
|
+
.withPagination(1,PAGE_SIZE) \
|
|
483
510
|
.execute()
|
|
511
|
+
)
|
|
512
|
+
print(f"Fetched {len(data)} offers for market {market}")
|
|
513
|
+
all_data.extend(data)
|
|
484
514
|
|
|
485
|
-
print(
|
|
515
|
+
print(f"Total offers fetched: {len(all_data)}")
|
|
486
516
|
```
|
|
487
517
|
|
|
488
518
|
To construct a GME Public Offer Extraction the following must be provided.
|
|
@@ -411,23 +411,53 @@ res = mds.searchFacet(page, pageSize, searchText, filters, sorts, doNotLoadAddit
|
|
|
411
411
|
|
|
412
412
|
Artesian support Query over GME Public Offers which comes in a custom and dedicated format.
|
|
413
413
|
|
|
414
|
+
Note (performance):
|
|
415
|
+
GME Public Offer data is partitioned by date, offerType, status, and market. Requesting very narrow subsets (for example a single status or offerType in several separate requests) does not improve performance and can cause the same data to be fetched multiple times.
|
|
416
|
+
For this reason, the examples below:
|
|
417
|
+
• Use a large page size so that all data for a given (date, market, filters) is typically returned in a single page.
|
|
418
|
+
• Loop over markets explicitly to cover all required markets without redundant fetches.
|
|
419
|
+
|
|
414
420
|
### Extract GME Public Offer
|
|
415
421
|
|
|
416
422
|
```Python
|
|
417
423
|
from Artesian.GMEPublicOffers import GMEPublicOfferService, Market, Purpose, Status, Zone, Scope, UnitType, GenerationType, BAType
|
|
418
424
|
|
|
419
|
-
|
|
425
|
+
/* your Artesian configuration */;
|
|
426
|
+
|
|
427
|
+
var _cfg = new ArtesianServiceConfig(
|
|
428
|
+
new Uri("https://arkive.artesian.cloud/{TENANT_NAME}/"),
|
|
429
|
+
your_API_Key);
|
|
430
|
+
|
|
431
|
+
qs = GMEPublicOfferService(_cfg)
|
|
432
|
+
|
|
433
|
+
# Large page size: goal is to get all data for the given filters in one page
|
|
434
|
+
PAGE_SIZE = 250000
|
|
420
435
|
|
|
421
|
-
|
|
436
|
+
# List of markets to cover. Extend as needed for your use case.
|
|
437
|
+
markets = [
|
|
438
|
+
Market.MGP,
|
|
439
|
+
# Market.MSD,
|
|
440
|
+
# Market.MIT,
|
|
441
|
+
]
|
|
442
|
+
|
|
443
|
+
all_data = []
|
|
444
|
+
|
|
445
|
+
for market in markets:
|
|
446
|
+
|
|
447
|
+
data = (
|
|
448
|
+
qs.createQuery() \
|
|
422
449
|
.forDate("2020-04-01") \
|
|
423
450
|
.forMarket([Market.MGP]) \
|
|
424
451
|
.forStatus(Status.ACC) \
|
|
425
452
|
.forPurpose(Purpose.BID) \
|
|
426
453
|
.forZone([Zone.NORD]) \
|
|
427
|
-
.withPagination(1,
|
|
454
|
+
.withPagination(1,PAGE_SIZE) \
|
|
428
455
|
.execute()
|
|
456
|
+
)
|
|
457
|
+
print(f"Fetched {len(data)} offers for market {market}")
|
|
458
|
+
all_data.extend(data)
|
|
429
459
|
|
|
430
|
-
print(
|
|
460
|
+
print(f"Total offers fetched: {len(all_data)}")
|
|
431
461
|
```
|
|
432
462
|
|
|
433
463
|
To construct a GME Public Offer Extraction the following must be provided.
|
|
@@ -28,7 +28,7 @@ version_tuple: VERSION_TUPLE
|
|
|
28
28
|
commit_id: COMMIT_ID
|
|
29
29
|
__commit_id__: COMMIT_ID
|
|
30
30
|
|
|
31
|
-
__version__ = version = '4.2.3.
|
|
32
|
-
__version_tuple__ = version_tuple = (4, 2, 3, '
|
|
31
|
+
__version__ = version = '4.2.3.dev6'
|
|
32
|
+
__version_tuple__ = version_tuple = (4, 2, 3, 'dev6')
|
|
33
33
|
|
|
34
|
-
__commit_id__ = commit_id = '
|
|
34
|
+
__commit_id__ = commit_id = 'g4f5a4251f'
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: artesian-sdk
|
|
3
|
-
Version: 4.2.3.
|
|
3
|
+
Version: 4.2.3.dev6
|
|
4
4
|
Summary: Library provides read access to the Artesian API
|
|
5
5
|
Author-email: ARK Lab <arklab@ark-energy.eu>
|
|
6
6
|
Maintainer-email: ARK Lab <arklab@ark-energy.eu>
|
|
@@ -466,23 +466,53 @@ res = mds.searchFacet(page, pageSize, searchText, filters, sorts, doNotLoadAddit
|
|
|
466
466
|
|
|
467
467
|
Artesian support Query over GME Public Offers which comes in a custom and dedicated format.
|
|
468
468
|
|
|
469
|
+
Note (performance):
|
|
470
|
+
GME Public Offer data is partitioned by date, offerType, status, and market. Requesting very narrow subsets (for example a single status or offerType in several separate requests) does not improve performance and can cause the same data to be fetched multiple times.
|
|
471
|
+
For this reason, the examples below:
|
|
472
|
+
• Use a large page size so that all data for a given (date, market, filters) is typically returned in a single page.
|
|
473
|
+
• Loop over markets explicitly to cover all required markets without redundant fetches.
|
|
474
|
+
|
|
469
475
|
### Extract GME Public Offer
|
|
470
476
|
|
|
471
477
|
```Python
|
|
472
478
|
from Artesian.GMEPublicOffers import GMEPublicOfferService, Market, Purpose, Status, Zone, Scope, UnitType, GenerationType, BAType
|
|
473
479
|
|
|
474
|
-
|
|
480
|
+
/* your Artesian configuration */;
|
|
481
|
+
|
|
482
|
+
var _cfg = new ArtesianServiceConfig(
|
|
483
|
+
new Uri("https://arkive.artesian.cloud/{TENANT_NAME}/"),
|
|
484
|
+
your_API_Key);
|
|
485
|
+
|
|
486
|
+
qs = GMEPublicOfferService(_cfg)
|
|
487
|
+
|
|
488
|
+
# Large page size: goal is to get all data for the given filters in one page
|
|
489
|
+
PAGE_SIZE = 250000
|
|
475
490
|
|
|
476
|
-
|
|
491
|
+
# List of markets to cover. Extend as needed for your use case.
|
|
492
|
+
markets = [
|
|
493
|
+
Market.MGP,
|
|
494
|
+
# Market.MSD,
|
|
495
|
+
# Market.MIT,
|
|
496
|
+
]
|
|
497
|
+
|
|
498
|
+
all_data = []
|
|
499
|
+
|
|
500
|
+
for market in markets:
|
|
501
|
+
|
|
502
|
+
data = (
|
|
503
|
+
qs.createQuery() \
|
|
477
504
|
.forDate("2020-04-01") \
|
|
478
505
|
.forMarket([Market.MGP]) \
|
|
479
506
|
.forStatus(Status.ACC) \
|
|
480
507
|
.forPurpose(Purpose.BID) \
|
|
481
508
|
.forZone([Zone.NORD]) \
|
|
482
|
-
.withPagination(1,
|
|
509
|
+
.withPagination(1,PAGE_SIZE) \
|
|
483
510
|
.execute()
|
|
511
|
+
)
|
|
512
|
+
print(f"Fetched {len(data)} offers for market {market}")
|
|
513
|
+
all_data.extend(data)
|
|
484
514
|
|
|
485
|
-
print(
|
|
515
|
+
print(f"Total offers fetched: {len(all_data)}")
|
|
486
516
|
```
|
|
487
517
|
|
|
488
518
|
To construct a GME Public Offer Extraction the following must be provided.
|
|
File without changes
|
|
File without changes
|
{artesian_sdk-4.2.3.dev2 → artesian_sdk-4.2.3.dev6}/.github/workflows/dependency-review.yaml
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{artesian_sdk-4.2.3.dev2 → artesian_sdk-4.2.3.dev6}/samples/TestWriteDataAndDeleteAuction.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{artesian_sdk-4.2.3.dev2 → artesian_sdk-4.2.3.dev6}/samples/TestWriteDataAndDeleteVersioned.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{artesian_sdk-4.2.3.dev2 → artesian_sdk-4.2.3.dev6}/src/Artesian/GMEPublicOffers/_Enum/BaType.py
RENAMED
|
File without changes
|
|
File without changes
|
{artesian_sdk-4.2.3.dev2 → artesian_sdk-4.2.3.dev6}/src/Artesian/GMEPublicOffers/_Enum/Market.py
RENAMED
|
File without changes
|
{artesian_sdk-4.2.3.dev2 → artesian_sdk-4.2.3.dev6}/src/Artesian/GMEPublicOffers/_Enum/Purpose.py
RENAMED
|
File without changes
|
{artesian_sdk-4.2.3.dev2 → artesian_sdk-4.2.3.dev6}/src/Artesian/GMEPublicOffers/_Enum/Scope.py
RENAMED
|
File without changes
|
{artesian_sdk-4.2.3.dev2 → artesian_sdk-4.2.3.dev6}/src/Artesian/GMEPublicOffers/_Enum/Status.py
RENAMED
|
File without changes
|
{artesian_sdk-4.2.3.dev2 → artesian_sdk-4.2.3.dev6}/src/Artesian/GMEPublicOffers/_Enum/UnitType.py
RENAMED
|
File without changes
|
{artesian_sdk-4.2.3.dev2 → artesian_sdk-4.2.3.dev6}/src/Artesian/GMEPublicOffers/_Enum/Zone.py
RENAMED
|
File without changes
|
{artesian_sdk-4.2.3.dev2 → artesian_sdk-4.2.3.dev6}/src/Artesian/GMEPublicOffers/_Enum/__init__.py
RENAMED
|
File without changes
|
{artesian_sdk-4.2.3.dev2 → artesian_sdk-4.2.3.dev6}/src/Artesian/GMEPublicOffers/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
{artesian_sdk-4.2.3.dev2 → artesian_sdk-4.2.3.dev6}/src/Artesian/MarketData/CommonUnitOfMeasure.py
RENAMED
|
File without changes
|
{artesian_sdk-4.2.3.dev2 → artesian_sdk-4.2.3.dev6}/src/Artesian/MarketData/MarketDataService.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{artesian_sdk-4.2.3.dev2 → artesian_sdk-4.2.3.dev6}/src/Artesian/MarketData/_Dto/CurveRangeEntity.py
RENAMED
|
File without changes
|
{artesian_sdk-4.2.3.dev2 → artesian_sdk-4.2.3.dev6}/src/Artesian/MarketData/_Dto/DeleteData.py
RENAMED
|
File without changes
|
{artesian_sdk-4.2.3.dev2 → artesian_sdk-4.2.3.dev6}/src/Artesian/MarketData/_Dto/DerivedCfg.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{artesian_sdk-4.2.3.dev2 → artesian_sdk-4.2.3.dev6}/src/Artesian/MarketData/_Dto/PagedResult.py
RENAMED
|
File without changes
|
{artesian_sdk-4.2.3.dev2 → artesian_sdk-4.2.3.dev6}/src/Artesian/MarketData/_Dto/UnitOfMeasure.py
RENAMED
|
File without changes
|
{artesian_sdk-4.2.3.dev2 → artesian_sdk-4.2.3.dev6}/src/Artesian/MarketData/_Dto/UpsertData.py
RENAMED
|
File without changes
|
{artesian_sdk-4.2.3.dev2 → artesian_sdk-4.2.3.dev6}/src/Artesian/MarketData/_Dto/__init__.py
RENAMED
|
File without changes
|
{artesian_sdk-4.2.3.dev2 → artesian_sdk-4.2.3.dev6}/src/Artesian/MarketData/_Enum/AggregationRule.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{artesian_sdk-4.2.3.dev2 → artesian_sdk-4.2.3.dev6}/src/Artesian/MarketData/_Enum/MarketDataType.py
RENAMED
|
File without changes
|
{artesian_sdk-4.2.3.dev2 → artesian_sdk-4.2.3.dev6}/src/Artesian/MarketData/_Enum/UpsertMode.py
RENAMED
|
File without changes
|
{artesian_sdk-4.2.3.dev2 → artesian_sdk-4.2.3.dev6}/src/Artesian/MarketData/_Enum/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{artesian_sdk-4.2.3.dev2 → artesian_sdk-4.2.3.dev6}/src/Artesian/Query/DefaultPartitionStrategy.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{artesian_sdk-4.2.3.dev2 → artesian_sdk-4.2.3.dev6}/src/Artesian/Query/_QueryParameters/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{artesian_sdk-4.2.3.dev2 → artesian_sdk-4.2.3.dev6}/src/Artesian/_ClientsExecutor/RequestExecutor.py
RENAMED
|
File without changes
|
{artesian_sdk-4.2.3.dev2 → artesian_sdk-4.2.3.dev6}/src/Artesian/_ClientsExecutor/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{artesian_sdk-4.2.3.dev2 → artesian_sdk-4.2.3.dev6}/src/artesian_sdk.egg-info/dependency_links.txt
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|