artesian-sdk 4.2.3.dev4__py3-none-any.whl → 4.2.3.dev8__py3-none-any.whl

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.
@@ -384,6 +384,8 @@ class GMEPublicOfferQuery:
384
384
  UnitType.UC: "UC",
385
385
  UnitType.UPV: "UPV",
386
386
  UnitType.UCV: "UCV",
387
+ UnitType.UVZi: "UVZi",
388
+ UnitType.UVZp: "UVZp",
387
389
  }
388
390
  vr = switcher.get(unitType, "DefunitType")
389
391
  if vr == "DefunitType":
@@ -424,6 +426,11 @@ class GMEPublicOfferQuery:
424
426
  Zone.SVIZ: "SVIZ",
425
427
  Zone.CALA: "CALA",
426
428
  Zone.MONT: "MONT",
429
+ Zone.XGRE: "XGRE",
430
+ Zone.XSVI: "XSVI",
431
+ Zone.BSP: "BSP",
432
+ Zone.XAUS: "XAUS",
433
+ Zone.XFRA: "XFRA",
427
434
  }
428
435
  vr = switcher.get(zone, "DefZone")
429
436
  if vr == "DefZone":
@@ -6,4 +6,6 @@ class UnitType(Enum):
6
6
  UC = 2
7
7
  UPV = 3
8
8
  UCV = 4
9
+ UVZi = 5
10
+ UVZp = 6
9
11
  UNKNOWN = 99
Artesian/_version.py CHANGED
@@ -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.dev4'
32
- __version_tuple__ = version_tuple = (4, 2, 3, 'dev4')
31
+ __version__ = version = '4.2.3.dev8'
32
+ __version_tuple__ = version_tuple = (4, 2, 3, 'dev8')
33
33
 
34
34
  __commit_id__ = commit_id = None
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: artesian-sdk
3
- Version: 4.2.3.dev4
3
+ Version: 4.2.3.dev8
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
- qs = GMEPublicOfferService(cfg)
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
- data = qs.createQuery() \
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,100) \
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(data)
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.
@@ -4,9 +4,9 @@ Artesian/ArtesianPolicyConfig.py,sha256=ULLngwH1762K8Kre08_JZ7aNYs4LZOxocTYLPJjX
4
4
  Artesian/Exceptions.py,sha256=asPwxz8TaIpjZV4GJmWchGen_04Ib3Rdd7_Btud4X9E,6141
5
5
  Artesian/Granularity.py,sha256=EOeBP9Wz-tAhdm3rVVJBXx9jAkiMH9OIMJUsrNawsNU,206
6
6
  Artesian/__init__.py,sha256=c-Fu4VGOuvQCGRefF5C4CY9OxoGTDce7CgjipZN8lIo,1119
7
- Artesian/_version.py,sha256=7GHlhJKjdkcwxHhv3jp1kUBvJXXT3v78PHTDV3_x8PQ,717
7
+ Artesian/_version.py,sha256=yCtaVcuDRCbUK0c_O7yFyOAk0vKb381aMkFAHCAn7YI,717
8
8
  Artesian/GMEPublicOffers/ExtractionRangeConfig.py,sha256=pXVFdLpLqFvgzu2Y5UTckDWysFiJDKc0ZaXjuv46iJU,415
9
- Artesian/GMEPublicOffers/GMEPublicOfferQuery.py,sha256=IECU7nk6wN7alLIxiUQmPUWaeXWsoSDC1R9qv5JMjYI,15367
9
+ Artesian/GMEPublicOffers/GMEPublicOfferQuery.py,sha256=zC2xChY1dug34japlfa9S-ehqCbIMXvPAboEiADNLGg,15590
10
10
  Artesian/GMEPublicOffers/GMEPublicOfferQueryParameters.py,sha256=gs5SVNEYJTpwV9whZFw07jm5cIsion6TvgRDAeHj1Kw,3330
11
11
  Artesian/GMEPublicOffers/GMEPublicOfferService.py,sha256=SSGng222MTLN7f7jXIk4uWPn5IMO77aiuAnsgJK4qZ0,1315
12
12
  Artesian/GMEPublicOffers/__init__.py,sha256=eCFTipFo_M7XjnJDs46GUs7Q63a7tCPwwEvTL0__esE,667
@@ -16,7 +16,7 @@ Artesian/GMEPublicOffers/_Enum/Market.py,sha256=0pkB7Yr4qHLSkUbZSf4zz6W9hEBuucFk
16
16
  Artesian/GMEPublicOffers/_Enum/Purpose.py,sha256=vE5TMsXFlvKS_gP13tU-UULEp6xo75VdIrmoh0Tuqw8,69
17
17
  Artesian/GMEPublicOffers/_Enum/Scope.py,sha256=TnULjRZq-ptv8o8iHJDfcJXxEylUyPiKnRczsLBSSEE,149
18
18
  Artesian/GMEPublicOffers/_Enum/Status.py,sha256=wJ6d7Lbr30EbPRUnnhCkCXeF1-d3MSYwNxhCcXz4-fA,141
19
- Artesian/GMEPublicOffers/_Enum/UnitType.py,sha256=PukftC_s7BTYQmHa-LNgz7G-QliPci7mod8DX0dWTDQ,109
19
+ Artesian/GMEPublicOffers/_Enum/UnitType.py,sha256=p4ERSxHpDYIAhyPM3xoTBa9pYWMOs02x24Jb5vkEJT8,135
20
20
  Artesian/GMEPublicOffers/_Enum/Zone.py,sha256=dl_3io_JZ1F9R7t1iEjexLKeNY1HWvV-CMVgh8XlVnw,380
21
21
  Artesian/GMEPublicOffers/_Enum/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
22
22
  Artesian/MarketData/CommonUnitOfMeasure.py,sha256=mybttan-Zpcf8NNYj48_xWpJSgadSXh-6mn4ZPvHvKo,257
@@ -68,8 +68,8 @@ Artesian/_ClientsExecutor/ArtesianJsonSerializer.py,sha256=CDnq1sgKLvxSampykFtF9
68
68
  Artesian/_ClientsExecutor/Client.py,sha256=Oy0BYDoJk1hLuA2wxNmo0ZRZX29_lDJCS9bgK-SJWBY,4054
69
69
  Artesian/_ClientsExecutor/RequestExecutor.py,sha256=KKq31g8GFS-Mdp3S1QXFm5tZhacjnIeWs1YFc3f8NkY,10613
70
70
  Artesian/_ClientsExecutor/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
71
- artesian_sdk-4.2.3.dev4.dist-info/licenses/LICENSE,sha256=Y27w-dSf1pHlXO4yNy70OCCO4VuYYVxUdDOQ-sLdXds,1074
72
- artesian_sdk-4.2.3.dev4.dist-info/METADATA,sha256=mkftiTQ07H7FsWU0a-k96-bCL7Vj90CqO0yryZyb6kk,38368
73
- artesian_sdk-4.2.3.dev4.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
74
- artesian_sdk-4.2.3.dev4.dist-info/top_level.txt,sha256=1Fv89OOnRKHLMmQEBRXPaNuPMoZytK4dnfrOFDdGGYI,9
75
- artesian_sdk-4.2.3.dev4.dist-info/RECORD,,
71
+ artesian_sdk-4.2.3.dev8.dist-info/licenses/LICENSE,sha256=Y27w-dSf1pHlXO4yNy70OCCO4VuYYVxUdDOQ-sLdXds,1074
72
+ artesian_sdk-4.2.3.dev8.dist-info/METADATA,sha256=s8EC39tVsU7sBNzJVk1dNEcOkItNihAxKlHhfLGPnJk,39460
73
+ artesian_sdk-4.2.3.dev8.dist-info/WHEEL,sha256=YCfwYGOYMi5Jhw2fU4yNgwErybb2IX5PEwBKV4ZbdBo,91
74
+ artesian_sdk-4.2.3.dev8.dist-info/top_level.txt,sha256=1Fv89OOnRKHLMmQEBRXPaNuPMoZytK4dnfrOFDdGGYI,9
75
+ artesian_sdk-4.2.3.dev8.dist-info/RECORD,,
@@ -1,5 +1,5 @@
1
1
  Wheel-Version: 1.0
2
- Generator: setuptools (80.9.0)
2
+ Generator: setuptools (82.0.0)
3
3
  Root-Is-Purelib: true
4
4
  Tag: py3-none-any
5
5