pkscreener 0.46.20250221.729__cp312-cp312-win_amd64.whl → 0.46.20250222.732__cp312-cp312-win_amd64.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.
Files changed (60) hide show
  1. {pkscreener-0.46.20250221.729.data → pkscreener-0.46.20250222.732.data}/purelib/pkscreener/README.txt +5 -5
  2. {pkscreener-0.46.20250221.729.data → pkscreener-0.46.20250222.732.data}/purelib/pkscreener/classes/MarketMonitor.py +1 -1
  3. {pkscreener-0.46.20250221.729.data → pkscreener-0.46.20250222.732.data}/purelib/pkscreener/classes/PKAnalytics.py +17 -4
  4. pkscreener-0.46.20250222.732.data/purelib/pkscreener/classes/__init__.py +1 -0
  5. {pkscreener-0.46.20250221.729.data → pkscreener-0.46.20250222.732.data}/purelib/pkscreener/pkscreenerbot.py +8 -2
  6. {pkscreener-0.46.20250221.729.dist-info → pkscreener-0.46.20250222.732.dist-info}/METADATA +7 -7
  7. pkscreener-0.46.20250222.732.dist-info/RECORD +58 -0
  8. pkscreener-0.46.20250221.729.data/purelib/pkscreener/classes/__init__.py +0 -1
  9. pkscreener-0.46.20250221.729.dist-info/RECORD +0 -58
  10. {pkscreener-0.46.20250221.729.data → pkscreener-0.46.20250222.732.data}/purelib/pkscreener/Disclaimer.txt +0 -0
  11. {pkscreener-0.46.20250221.729.data → pkscreener-0.46.20250222.732.data}/purelib/pkscreener/LICENSE-Others.txt +0 -0
  12. {pkscreener-0.46.20250221.729.data → pkscreener-0.46.20250222.732.data}/purelib/pkscreener/LICENSE.txt +0 -0
  13. {pkscreener-0.46.20250221.729.data → pkscreener-0.46.20250222.732.data}/purelib/pkscreener/LogoWM.txt +0 -0
  14. {pkscreener-0.46.20250221.729.data → pkscreener-0.46.20250222.732.data}/purelib/pkscreener/__init__.py +0 -0
  15. {pkscreener-0.46.20250221.729.data → pkscreener-0.46.20250222.732.data}/purelib/pkscreener/classes/ArtTexts.py +0 -0
  16. {pkscreener-0.46.20250221.729.data → pkscreener-0.46.20250222.732.data}/purelib/pkscreener/classes/AssetsManager.py +0 -0
  17. {pkscreener-0.46.20250221.729.data → pkscreener-0.46.20250222.732.data}/purelib/pkscreener/classes/Backtest.py +0 -0
  18. {pkscreener-0.46.20250221.729.data → pkscreener-0.46.20250222.732.data}/purelib/pkscreener/classes/Barometer.py +0 -0
  19. {pkscreener-0.46.20250221.729.data → pkscreener-0.46.20250222.732.data}/purelib/pkscreener/classes/BaseScreeningStatistics.py +0 -0
  20. {pkscreener-0.46.20250221.729.data → pkscreener-0.46.20250222.732.data}/purelib/pkscreener/classes/CandlePatterns.py +0 -0
  21. {pkscreener-0.46.20250221.729.data → pkscreener-0.46.20250222.732.data}/purelib/pkscreener/classes/Changelog.py +0 -0
  22. {pkscreener-0.46.20250221.729.data → pkscreener-0.46.20250222.732.data}/purelib/pkscreener/classes/ConfigManager.py +0 -0
  23. {pkscreener-0.46.20250221.729.data → pkscreener-0.46.20250222.732.data}/purelib/pkscreener/classes/ConsoleMenuUtility.py +0 -0
  24. {pkscreener-0.46.20250221.729.data → pkscreener-0.46.20250222.732.data}/purelib/pkscreener/classes/ConsoleUtility.py +0 -0
  25. {pkscreener-0.46.20250221.729.data → pkscreener-0.46.20250222.732.data}/purelib/pkscreener/classes/Fetcher.py +0 -0
  26. {pkscreener-0.46.20250221.729.data → pkscreener-0.46.20250222.732.data}/purelib/pkscreener/classes/GlobalStore.py +0 -0
  27. {pkscreener-0.46.20250221.729.data → pkscreener-0.46.20250222.732.data}/purelib/pkscreener/classes/ImageUtility.py +0 -0
  28. {pkscreener-0.46.20250221.729.data → pkscreener-0.46.20250222.732.data}/purelib/pkscreener/classes/MarketStatus.py +0 -0
  29. {pkscreener-0.46.20250221.729.data → pkscreener-0.46.20250222.732.data}/purelib/pkscreener/classes/MenuOptions.py +0 -0
  30. {pkscreener-0.46.20250221.729.data → pkscreener-0.46.20250222.732.data}/purelib/pkscreener/classes/Messenger.py +0 -0
  31. {pkscreener-0.46.20250221.729.data → pkscreener-0.46.20250222.732.data}/purelib/pkscreener/classes/OtaUpdater.py +0 -0
  32. {pkscreener-0.46.20250221.729.data → pkscreener-0.46.20250222.732.data}/purelib/pkscreener/classes/PKDataService.py +0 -0
  33. {pkscreener-0.46.20250221.729.data → pkscreener-0.46.20250222.732.data}/purelib/pkscreener/classes/PKDemoHandler.py +0 -0
  34. {pkscreener-0.46.20250221.729.data → pkscreener-0.46.20250222.732.data}/purelib/pkscreener/classes/PKMarketOpenCloseAnalyser.py +0 -0
  35. {pkscreener-0.46.20250221.729.data → pkscreener-0.46.20250222.732.data}/purelib/pkscreener/classes/PKPremiumHandler.py +0 -0
  36. {pkscreener-0.46.20250221.729.data → pkscreener-0.46.20250222.732.data}/purelib/pkscreener/classes/PKScanRunner.py +0 -0
  37. {pkscreener-0.46.20250221.729.data → pkscreener-0.46.20250222.732.data}/purelib/pkscreener/classes/PKScheduledTaskProgress.py +0 -0
  38. {pkscreener-0.46.20250221.729.data → pkscreener-0.46.20250222.732.data}/purelib/pkscreener/classes/PKScheduler.py +0 -0
  39. {pkscreener-0.46.20250221.729.data → pkscreener-0.46.20250222.732.data}/purelib/pkscreener/classes/PKSpreadsheets.py +0 -0
  40. {pkscreener-0.46.20250221.729.data → pkscreener-0.46.20250222.732.data}/purelib/pkscreener/classes/PKTask.py +0 -0
  41. {pkscreener-0.46.20250221.729.data → pkscreener-0.46.20250222.732.data}/purelib/pkscreener/classes/PKUserRegistration.py +0 -0
  42. {pkscreener-0.46.20250221.729.data → pkscreener-0.46.20250222.732.data}/purelib/pkscreener/classes/Pktalib.py +0 -0
  43. {pkscreener-0.46.20250221.729.data → pkscreener-0.46.20250222.732.data}/purelib/pkscreener/classes/Portfolio.py +0 -0
  44. {pkscreener-0.46.20250221.729.data → pkscreener-0.46.20250222.732.data}/purelib/pkscreener/classes/PortfolioXRay.py +0 -0
  45. {pkscreener-0.46.20250221.729.data → pkscreener-0.46.20250222.732.data}/purelib/pkscreener/classes/ScreeningStatistics.py +0 -0
  46. {pkscreener-0.46.20250221.729.data → pkscreener-0.46.20250222.732.data}/purelib/pkscreener/classes/StockScreener.py +0 -0
  47. {pkscreener-0.46.20250221.729.data → pkscreener-0.46.20250222.732.data}/purelib/pkscreener/classes/StockSentiment.py +0 -0
  48. {pkscreener-0.46.20250221.729.data → pkscreener-0.46.20250222.732.data}/purelib/pkscreener/classes/UserMenuChoicesHandler.py +0 -0
  49. {pkscreener-0.46.20250221.729.data → pkscreener-0.46.20250222.732.data}/purelib/pkscreener/classes/Utility.py +0 -0
  50. {pkscreener-0.46.20250221.729.data → pkscreener-0.46.20250222.732.data}/purelib/pkscreener/classes/WorkflowManager.py +0 -0
  51. {pkscreener-0.46.20250221.729.data → pkscreener-0.46.20250222.732.data}/purelib/pkscreener/classes/keys.py +0 -0
  52. {pkscreener-0.46.20250221.729.data → pkscreener-0.46.20250222.732.data}/purelib/pkscreener/courbd.ttf +0 -0
  53. {pkscreener-0.46.20250221.729.data → pkscreener-0.46.20250222.732.data}/purelib/pkscreener/globals.py +0 -0
  54. {pkscreener-0.46.20250221.729.data → pkscreener-0.46.20250222.732.data}/purelib/pkscreener/pkscreener.ini +0 -0
  55. {pkscreener-0.46.20250221.729.data → pkscreener-0.46.20250222.732.data}/purelib/pkscreener/pkscreenercli.py +0 -0
  56. {pkscreener-0.46.20250221.729.data → pkscreener-0.46.20250222.732.data}/purelib/pkscreener/requirements.txt +0 -0
  57. {pkscreener-0.46.20250221.729.dist-info → pkscreener-0.46.20250222.732.dist-info}/LICENSE +0 -0
  58. {pkscreener-0.46.20250221.729.dist-info → pkscreener-0.46.20250222.732.dist-info}/WHEEL +0 -0
  59. {pkscreener-0.46.20250221.729.dist-info → pkscreener-0.46.20250222.732.dist-info}/entry_points.txt +0 -0
  60. {pkscreener-0.46.20250221.729.dist-info → pkscreener-0.46.20250222.732.dist-info}/top_level.txt +0 -0
@@ -328,15 +328,15 @@ After you have finished the run, go to that copied path, zip the contents of the
328
328
  [MADE-IN-INDIA-badge]: https://img.shields.io/badge/MADE%20WITH%20%E2%9D%A4%20IN-INDIA-orange
329
329
  [MADE-IN-INDIA]: https://en.wikipedia.org/wiki/India
330
330
  [Windows-badge]: https://img.shields.io/badge/Windows-0078D6?logo=windows&logoColor=white
331
- [Windows]: https://github.com/pkjmesra/PKScreener/releases/download/0.46.20250221.728/pkscreenercli.exe
331
+ [Windows]: https://github.com/pkjmesra/PKScreener/releases/download/0.46.20250221.731/pkscreenercli.exe
332
332
  [Linux-badge_x64]: https://img.shields.io/badge/Linux(x64)-FCC624?logo=linux&logoColor=black
333
- [Linux_x64]: https://github.com/pkjmesra/PKScreener/releases/download/0.46.20250221.728/pkscreenercli_x64.bin
333
+ [Linux_x64]: https://github.com/pkjmesra/PKScreener/releases/download/0.46.20250221.731/pkscreenercli_x64.bin
334
334
  [Linux-badge_arm64]: https://img.shields.io/badge/Linux(arm64)-FCC624?logo=linux&logoColor=black
335
- [Linux_arm64]: https://github.com/pkjmesra/PKScreener/releases/download/0.46.20250221.728/pkscreenercli_arm64.bin
335
+ [Linux_arm64]: https://github.com/pkjmesra/PKScreener/releases/download/0.46.20250221.731/pkscreenercli_arm64.bin
336
336
  [Mac OS-badge_x64]: https://img.shields.io/badge/mac%20os(x64)-D3D3D3?logo=apple&logoColor=000000
337
- [Mac OS_x64]: https://github.com/pkjmesra/PKScreener/releases/download/0.46.20250221.728/pkscreenercli_x64.run
337
+ [Mac OS_x64]: https://github.com/pkjmesra/PKScreener/releases/download/0.46.20250221.731/pkscreenercli_x64.run
338
338
  [Mac OS-badge_arm64]: https://img.shields.io/badge/mac%20os(arm64)-D3D3D3?logo=apple&logoColor=000000
339
- [Mac OS_arm64]: https://github.com/pkjmesra/PKScreener/releases/download/0.46.20250221.728/pkscreenercli_arm64.run
339
+ [Mac OS_arm64]: https://github.com/pkjmesra/PKScreener/releases/download/0.46.20250221.731/pkscreenercli_arm64.run
340
340
  [GitHub release (latest by date)-badge]: https://img.shields.io/github/v/release/pkjmesra/PKScreener
341
341
  [GitHub release (latest by date)]: https://github.com/pkjmesra/PKScreener/releases/latest
342
342
  [pypi-badge]: https://img.shields.io/pypi/v/pkscreener.svg?style=flat-square
@@ -114,7 +114,7 @@ class MarketMonitor(SingletonMixin, metaclass=SingletonType):
114
114
  prevOutput_results = results_df[~results_df.index.duplicated(keep='first')]
115
115
  prevOutput_results = prevOutput_results.index
116
116
  prevOutput_results = ",".join(prevOutput_results)
117
- if len(self.monitorResultStocks.keys()) > self.monitorIndex and len(self.monitorResultStocks[str(self.monitorIndex)]) > 0 and prevOutput_results == "NONE":
117
+ if len(self.monitorResultStocks.keys()) > self.monitorIndex and str(self.monitorIndex) in self.monitorResultStocks.keys() and len(self.monitorResultStocks[str(self.monitorIndex)]) > 0 and prevOutput_results == "NONE":
118
118
  prevOutput_results = self.monitorResultStocks[str(self.monitorIndex)]
119
119
  addedStocks = list(set(prevOutput_results.split(',')) - set(lastSavedResults)) # Elements in new df but not in the saved df
120
120
  if len(self.alertStocks) != len(addedStocks) and len(addedStocks) > 0:
@@ -35,8 +35,8 @@ import json
35
35
  import time
36
36
  from PKDevTools.classes.Fetcher import fetcher
37
37
  from PKDevTools.classes.Utils import random_user_agent
38
- from PKDevTools.classes.PKDateUtilities import PKDateUtilities
39
- from PKDevTools.classes import Archiver
38
+ # from PKDevTools.classes.PKDateUtilities import PKDateUtilities
39
+ # from PKDevTools.classes import Archiver
40
40
  from PKDevTools.classes.Singleton import SingletonType, SingletonMixin
41
41
  from PKDevTools.classes.pubsub.publisher import PKUserService
42
42
  from PKDevTools.classes.pubsub.subscriber import notification_service
@@ -91,15 +91,28 @@ class PKAnalyticsService(SingletonMixin, metaclass=SingletonType):
91
91
  pass
92
92
  return data
93
93
 
94
- def send_event(self,event_name):
94
+ def send_event(self,event_name,params={}):
95
+ if isinstance(self.locationInfo,str):
96
+ self.collectMetrics()
95
97
  event_params = {
96
- "user_id": self.userName,
98
+ "user_id": self.username,
97
99
  "os": self.os,
98
100
  "os_version": self.os_version,
99
101
  "app_version": self.app_version,
100
102
  "elapsed_time": str(time.time() - self.start_time),
101
103
  "is_Runner": self.isRunner
102
104
  }
105
+ if len(params) > 0:
106
+ for key in params:
107
+ event_params[key] = params[key]
108
+ if self.isRunner:
109
+ try:
110
+ owner = os.popen('git ls-remote --get-url origin | cut -d/ -f4').read().replace("\n","")
111
+ repo = os.popen('git ls-remote --get-url origin | cut -d/ -f5').read().replace(".git","").replace("\n","")
112
+ event_params["repo_owner"] = owner
113
+ event_params["repo"] = repo
114
+ except:
115
+ pass
103
116
  for key in self.locationInfo.keys():
104
117
  if key not in ["readme"]:
105
118
  event_params[key] = self.locationInfo[key]
@@ -0,0 +1 @@
1
+ VERSION='0.46.20250222.732'
@@ -70,6 +70,7 @@ from PKDevTools.classes.GmailReader import PKGmailReader
70
70
  from pkscreener.classes.MenuOptions import MenuRenderStyle, menu, menus,MAX_MENU_OPTION
71
71
  from pkscreener.classes.WorkflowManager import run_workflow
72
72
  import pkscreener.classes.ConfigManager as ConfigManager
73
+ from pkscreener.classes.PKAnalytics import PKAnalyticsService
73
74
  try:
74
75
  from PKDevTools.classes.DBManager import DBManager
75
76
  from PKDevTools.classes.UserSubscriptions import PKUserSusbscriptions
@@ -1422,9 +1423,14 @@ def isUserSubscribed(user):
1422
1423
 
1423
1424
  def launchScreener(options, user, context, optionChoices, update):
1424
1425
  try:
1425
- if not isUserSubscribed(user):
1426
+ scanRequest = optionChoices.replace(" ", "").replace(">", "_").replace(":","_").replace("_D","").upper()
1427
+ userSubs = isUserSubscribed(user)
1428
+ try:
1429
+ PKAnalyticsService().send_event("bot_scan",{"bot_userid":str(user.id), "bot_username":str(user.username),"scan_id":str(scanRequest),"user_subscribed":userSubs})
1430
+ except Exception as e:
1431
+ pass
1432
+ if not userSubs:
1426
1433
  basicSubscriptions = ["X_0","X_N","X_1_"]
1427
- scanRequest = optionChoices.replace(" ", "").replace(">", "_").replace(":","_").replace("_D","").upper()
1428
1434
  isBasicScanRequest = False
1429
1435
  for basicSub in basicSubscriptions:
1430
1436
  if basicSub in scanRequest:
@@ -1,9 +1,9 @@
1
1
  Metadata-Version: 2.2
2
2
  Name: pkscreener
3
- Version: 0.46.20250221.729
3
+ Version: 0.46.20250222.732
4
4
  Summary: A Python-based stock screener for NSE, India with alerts to Telegram Channel (pkscreener)
5
5
  Home-page: https://github.com/pkjmesra/pkscreener
6
- Download-URL: https://github.com/pkjmesra/pkscreener/archive/v0.46.20250221.729.zip
6
+ Download-URL: https://github.com/pkjmesra/pkscreener/archive/v0.46.20250222.732.zip
7
7
  Author: pkjmesra
8
8
  Author-email: pkjmesra@gmail.com
9
9
  License: OSI Approved (MIT)
@@ -357,15 +357,15 @@ After you have finished the run, go to that copied path, zip the contents of the
357
357
  [MADE-IN-INDIA-badge]: https://img.shields.io/badge/MADE%20WITH%20%E2%9D%A4%20IN-INDIA-orange
358
358
  [MADE-IN-INDIA]: https://en.wikipedia.org/wiki/India
359
359
  [Windows-badge]: https://img.shields.io/badge/Windows-0078D6?logo=windows&logoColor=white
360
- [Windows]: https://github.com/pkjmesra/PKScreener/releases/download/0.46.20250221.728/pkscreenercli.exe
360
+ [Windows]: https://github.com/pkjmesra/PKScreener/releases/download/0.46.20250221.731/pkscreenercli.exe
361
361
  [Linux-badge_x64]: https://img.shields.io/badge/Linux(x64)-FCC624?logo=linux&logoColor=black
362
- [Linux_x64]: https://github.com/pkjmesra/PKScreener/releases/download/0.46.20250221.728/pkscreenercli_x64.bin
362
+ [Linux_x64]: https://github.com/pkjmesra/PKScreener/releases/download/0.46.20250221.731/pkscreenercli_x64.bin
363
363
  [Linux-badge_arm64]: https://img.shields.io/badge/Linux(arm64)-FCC624?logo=linux&logoColor=black
364
- [Linux_arm64]: https://github.com/pkjmesra/PKScreener/releases/download/0.46.20250221.728/pkscreenercli_arm64.bin
364
+ [Linux_arm64]: https://github.com/pkjmesra/PKScreener/releases/download/0.46.20250221.731/pkscreenercli_arm64.bin
365
365
  [Mac OS-badge_x64]: https://img.shields.io/badge/mac%20os(x64)-D3D3D3?logo=apple&logoColor=000000
366
- [Mac OS_x64]: https://github.com/pkjmesra/PKScreener/releases/download/0.46.20250221.728/pkscreenercli_x64.run
366
+ [Mac OS_x64]: https://github.com/pkjmesra/PKScreener/releases/download/0.46.20250221.731/pkscreenercli_x64.run
367
367
  [Mac OS-badge_arm64]: https://img.shields.io/badge/mac%20os(arm64)-D3D3D3?logo=apple&logoColor=000000
368
- [Mac OS_arm64]: https://github.com/pkjmesra/PKScreener/releases/download/0.46.20250221.728/pkscreenercli_arm64.run
368
+ [Mac OS_arm64]: https://github.com/pkjmesra/PKScreener/releases/download/0.46.20250221.731/pkscreenercli_arm64.run
369
369
  [GitHub release (latest by date)-badge]: https://img.shields.io/github/v/release/pkjmesra/PKScreener
370
370
  [GitHub release (latest by date)]: https://github.com/pkjmesra/PKScreener/releases/latest
371
371
  [pypi-badge]: https://img.shields.io/pypi/v/pkscreener.svg?style=flat-square
@@ -0,0 +1,58 @@
1
+ pkscreener-0.46.20250222.732.data/purelib/pkscreener/Disclaimer.txt,sha256=x7M9Clrb9qACqOa-Vnwh9wliISLgudW5Kv_dgEk3N_Q,1405
2
+ pkscreener-0.46.20250222.732.data/purelib/pkscreener/LICENSE-Others.txt,sha256=0put8oIYbAYz98IGnp2F1CpHoyR_iyk0PRYG5D-U1K0,277059
3
+ pkscreener-0.46.20250222.732.data/purelib/pkscreener/LICENSE.txt,sha256=q80QYQZCkhPymkaQKXZJwOFYU6X-4lUHRzCGYERdLpA,1099
4
+ pkscreener-0.46.20250222.732.data/purelib/pkscreener/LogoWM.txt,sha256=7Njnavpy_FKY4Iwbzv1JqsYMcOdkDSKAKXP3SAItKV0,14868
5
+ pkscreener-0.46.20250222.732.data/purelib/pkscreener/README.txt,sha256=zOo6zJMcJ_tuwJO7bwc4QMNYODWkkTFEuiFjwrxZmIw,33186
6
+ pkscreener-0.46.20250222.732.data/purelib/pkscreener/__init__.py,sha256=cH0zxpSdH-dhmZihoe5mpE2NRRmF2Na_KaGMO9u33Rg,1669
7
+ pkscreener-0.46.20250222.732.data/purelib/pkscreener/courbd.ttf,sha256=SKpnp-BRs7AZcdI83nencS3Q7xe0anbbP1YMOxLlEhU,791436
8
+ pkscreener-0.46.20250222.732.data/purelib/pkscreener/globals.py,sha256=fxYJXl8S5wsAkr4llaIT4ex-Y-wDS1J5KB8ka3NHEnk,247783
9
+ pkscreener-0.46.20250222.732.data/purelib/pkscreener/pkscreener.ini,sha256=v0MV7kLxi0ehh1a013wg6TLXDeeLRO8PKapICSU1u-k,2451
10
+ pkscreener-0.46.20250222.732.data/purelib/pkscreener/pkscreenerbot.py,sha256=gSpzD85sUA9rLpSU-9bHddaUqZKVWHuwEgGIU6DncEY,119822
11
+ pkscreener-0.46.20250222.732.data/purelib/pkscreener/pkscreenercli.py,sha256=j5UBHU1YdKhLaT53uFlpZ73lvI41Iw_gjA_wrZaF5IA,59048
12
+ pkscreener-0.46.20250222.732.data/purelib/pkscreener/requirements.txt,sha256=o6AMyZRJ519ivj_X7srn1jaHEOHqACdktVS2r88i5H8,1503
13
+ pkscreener-0.46.20250222.732.data/purelib/pkscreener/classes/ArtTexts.py,sha256=UzU0v3LX4PsWcx_ATv5M-T4v93uLz2hmvyDtew6qzZk,19708
14
+ pkscreener-0.46.20250222.732.data/purelib/pkscreener/classes/AssetsManager.py,sha256=T1RQVHR5mX6LxEXARYrs70iYEng7IsuU7oso308FsWw,36094
15
+ pkscreener-0.46.20250222.732.data/purelib/pkscreener/classes/Backtest.py,sha256=VoNronl--07E477I9lhwfEjI4vK5VHu_tcDRO1K96hU,10784
16
+ pkscreener-0.46.20250222.732.data/purelib/pkscreener/classes/Barometer.py,sha256=aZWu0TFbwRBvnkyN_Ws4a_2FYNhKKuqEpoQAqokthPc,9640
17
+ pkscreener-0.46.20250222.732.data/purelib/pkscreener/classes/BaseScreeningStatistics.py,sha256=Dev8eCx8eGNqDsbXj-t68hLSDpKDICcyb9yH_n_IbYg,3086
18
+ pkscreener-0.46.20250222.732.data/purelib/pkscreener/classes/CandlePatterns.py,sha256=IFVUXzx175aqZlL7JlmNl308aeIkSD6Hugl4M9zg9Io,17419
19
+ pkscreener-0.46.20250222.732.data/purelib/pkscreener/classes/Changelog.py,sha256=S0hNTDYptWUxFrdTzqinjFLIywVAuKlYR1aCjepADn0,1511
20
+ pkscreener-0.46.20250222.732.data/purelib/pkscreener/classes/ConfigManager.py,sha256=ZIxZ-IqWjIXpo_7SWRLx5e8sc0b92gGnc4qqMZVproM,54426
21
+ pkscreener-0.46.20250222.732.data/purelib/pkscreener/classes/ConsoleMenuUtility.py,sha256=QZLPA0li0bfs1zNijfq_utovulY5fl4vXWk89CBpL5Q,10291
22
+ pkscreener-0.46.20250222.732.data/purelib/pkscreener/classes/ConsoleUtility.py,sha256=gNMAm4iQF0ClmVPBe6ZnsjWQ-rfnTq6R_mLBjA6GgyI,12330
23
+ pkscreener-0.46.20250222.732.data/purelib/pkscreener/classes/Fetcher.py,sha256=UA37RjcegNmdqHIC5bWW_9qzKn8McyU6mhELxmKuLzs,15080
24
+ pkscreener-0.46.20250222.732.data/purelib/pkscreener/classes/GlobalStore.py,sha256=UCYctbau2ZAShkWOLA7-p52Pg_irghCWRoa6UrIKYQQ,3799
25
+ pkscreener-0.46.20250222.732.data/purelib/pkscreener/classes/ImageUtility.py,sha256=DKPiM7u-fGPujD63VLCWUsvesgflVYDiLqyw_KWOK8g,37629
26
+ pkscreener-0.46.20250222.732.data/purelib/pkscreener/classes/MarketMonitor.py,sha256=eu1B6Zl9SIQCSB43D3z7I1laKCp7NKTGSgIzv-4G1U4,22512
27
+ pkscreener-0.46.20250222.732.data/purelib/pkscreener/classes/MarketStatus.py,sha256=oBDTCTGazzOEhcclugxOOtyhu2VVT2XQ-t-GmY_pT7g,3823
28
+ pkscreener-0.46.20250222.732.data/purelib/pkscreener/classes/MenuOptions.py,sha256=RIPQ9mVC9I07GZubrmOtUAQg10GbCoYwF3fnvV1dvqY,65741
29
+ pkscreener-0.46.20250222.732.data/purelib/pkscreener/classes/Messenger.py,sha256=yKqq3eE2JkvTOeKcNZoPpCgxQ9FjcEeB1iHIKwwq8dA,8572
30
+ pkscreener-0.46.20250222.732.data/purelib/pkscreener/classes/OtaUpdater.py,sha256=jSjVqgiZ4CGVkieJMekNLHZGx_eOGN-Xg4RF3eZO_Nk,13816
31
+ pkscreener-0.46.20250222.732.data/purelib/pkscreener/classes/PKAnalytics.py,sha256=GFEpPnGraSkJlGWmp9AiyC6jPGKSK6dga5AWTA9-pdk,7044
32
+ pkscreener-0.46.20250222.732.data/purelib/pkscreener/classes/PKDataService.py,sha256=InEI3AGt_ykYfbwq2v1_NWUefTqPluKHSh_4ksFSUzE,3456
33
+ pkscreener-0.46.20250222.732.data/purelib/pkscreener/classes/PKDemoHandler.py,sha256=wh48WLLFxBAFHML5Sq5G5-UFP96snJ9yKJgpKWuQ2Zs,2253
34
+ pkscreener-0.46.20250222.732.data/purelib/pkscreener/classes/PKMarketOpenCloseAnalyser.py,sha256=zscdvHwDb5GQttqnR4Ed0SsVfOFeqKQgfIo6LWukgH0,34366
35
+ pkscreener-0.46.20250222.732.data/purelib/pkscreener/classes/PKPremiumHandler.py,sha256=L3O3EwIZBE9PpdDFIGH-2Ec9Gi3IlzCd6RfQSXUd6So,5695
36
+ pkscreener-0.46.20250222.732.data/purelib/pkscreener/classes/PKScanRunner.py,sha256=9Qy6xouK6qkNExeWF8LrxYXynI3Ju9UrSY5kI5W81Ok,27313
37
+ pkscreener-0.46.20250222.732.data/purelib/pkscreener/classes/PKScheduledTaskProgress.py,sha256=wDMORWmyglcu06woVNpgDlESsMIiYX96MXO0VoBlLYg,1694
38
+ pkscreener-0.46.20250222.732.data/purelib/pkscreener/classes/PKScheduler.py,sha256=Od3Niv6Q_aHarau9agCVt7h194votlaDX4j1Xv-_ru4,8994
39
+ pkscreener-0.46.20250222.732.data/purelib/pkscreener/classes/PKSpreadsheets.py,sha256=BIICJx79QjGFPrnmQ34357jOGp79vuiknx6A_kC9y8Y,8466
40
+ pkscreener-0.46.20250222.732.data/purelib/pkscreener/classes/PKTask.py,sha256=YPxzn0dA5ty7CtRFi1wQphC9vCdK8tB2_3DYHje9jgc,1907
41
+ pkscreener-0.46.20250222.732.data/purelib/pkscreener/classes/PKUserRegistration.py,sha256=VftNCzv44NyeLLOhuxUzzgre8zpT-nRL75B0jv-udDI,11783
42
+ pkscreener-0.46.20250222.732.data/purelib/pkscreener/classes/Pktalib.py,sha256=yko7TZMOsLoBv-LbTuT903CsGdyckhypXldh7uoAXmo,34179
43
+ pkscreener-0.46.20250222.732.data/purelib/pkscreener/classes/Portfolio.py,sha256=dxviO0G3OqJza4Nbpj5OCph8PZlfkRCkL3LfLJYgqu0,14196
44
+ pkscreener-0.46.20250222.732.data/purelib/pkscreener/classes/PortfolioXRay.py,sha256=cMQ-yZrBPWo4gACxFqj3HNG9rqmyqXkS88qpy77JP_s,49612
45
+ pkscreener-0.46.20250222.732.data/purelib/pkscreener/classes/ScreeningStatistics.py,sha256=CoV2i5jJPL2hm4sIhQAPHbbfWw3vqgoShVmq4uir7k4,225756
46
+ pkscreener-0.46.20250222.732.data/purelib/pkscreener/classes/StockScreener.py,sha256=wL6RjojBvTqo9XUlh2qoCpERrKdGNTlcDtCTReA0jkI,68437
47
+ pkscreener-0.46.20250222.732.data/purelib/pkscreener/classes/StockSentiment.py,sha256=kc5jdXRGm2nIvDK-2y4i_Y1w47_2zWpunjlQsKB7IBY,3640
48
+ pkscreener-0.46.20250222.732.data/purelib/pkscreener/classes/UserMenuChoicesHandler.py,sha256=MXJrQPD4yvKSI4p_RcnHt5oZg8AZ59ME7Jf-Nryoy5g,5055
49
+ pkscreener-0.46.20250222.732.data/purelib/pkscreener/classes/Utility.py,sha256=6JpIich2-knaZ4sjsjyMoO_4S622KK-Jte2Hi4eYIOs,13870
50
+ pkscreener-0.46.20250222.732.data/purelib/pkscreener/classes/WorkflowManager.py,sha256=GS1Q_jwulpOjZv0w9ZDySRa5w51gJ8xDabbUpQGKVO0,5800
51
+ pkscreener-0.46.20250222.732.data/purelib/pkscreener/classes/__init__.py,sha256=PL-XYrao51eqk5S3pzsuS3QyzZlr24JMsAWWfq5Dm1Q,28
52
+ pkscreener-0.46.20250222.732.data/purelib/pkscreener/classes/keys.py,sha256=tygV0iu8bKmSPo6HGj1Cb-rTtEWErGrsYRZY7SoCb1g,6957
53
+ pkscreener-0.46.20250222.732.dist-info/LICENSE,sha256=q80QYQZCkhPymkaQKXZJwOFYU6X-4lUHRzCGYERdLpA,1099
54
+ pkscreener-0.46.20250222.732.dist-info/METADATA,sha256=yTlwcvu8kuWIaVVL_93Mu_ElWNgEn0ztXs5UK0WQPSM,34208
55
+ pkscreener-0.46.20250222.732.dist-info/WHEEL,sha256=cRmSBGD-cl98KkuHMNqv9Ac9L9_VqTvcBYwpIvxN0cg,101
56
+ pkscreener-0.46.20250222.732.dist-info/entry_points.txt,sha256=Pm30xm4sU7YFtFJUC-Te8VlqOvYAvWKFFA5AfQE0xGY,120
57
+ pkscreener-0.46.20250222.732.dist-info/top_level.txt,sha256=oIfcPPw58Q4KU-GDqp25dXbrtvxYXJBCo_em6i5aVvY,11
58
+ pkscreener-0.46.20250222.732.dist-info/RECORD,,
@@ -1 +0,0 @@
1
- VERSION='0.46.20250221.729'
@@ -1,58 +0,0 @@
1
- pkscreener-0.46.20250221.729.data/purelib/pkscreener/Disclaimer.txt,sha256=x7M9Clrb9qACqOa-Vnwh9wliISLgudW5Kv_dgEk3N_Q,1405
2
- pkscreener-0.46.20250221.729.data/purelib/pkscreener/LICENSE-Others.txt,sha256=0put8oIYbAYz98IGnp2F1CpHoyR_iyk0PRYG5D-U1K0,277059
3
- pkscreener-0.46.20250221.729.data/purelib/pkscreener/LICENSE.txt,sha256=q80QYQZCkhPymkaQKXZJwOFYU6X-4lUHRzCGYERdLpA,1099
4
- pkscreener-0.46.20250221.729.data/purelib/pkscreener/LogoWM.txt,sha256=7Njnavpy_FKY4Iwbzv1JqsYMcOdkDSKAKXP3SAItKV0,14868
5
- pkscreener-0.46.20250221.729.data/purelib/pkscreener/README.txt,sha256=7u4pV-OzwkkmYd67ciUe83dcasQ1rQGz6C6y244XMX8,33186
6
- pkscreener-0.46.20250221.729.data/purelib/pkscreener/__init__.py,sha256=cH0zxpSdH-dhmZihoe5mpE2NRRmF2Na_KaGMO9u33Rg,1669
7
- pkscreener-0.46.20250221.729.data/purelib/pkscreener/courbd.ttf,sha256=SKpnp-BRs7AZcdI83nencS3Q7xe0anbbP1YMOxLlEhU,791436
8
- pkscreener-0.46.20250221.729.data/purelib/pkscreener/globals.py,sha256=fxYJXl8S5wsAkr4llaIT4ex-Y-wDS1J5KB8ka3NHEnk,247783
9
- pkscreener-0.46.20250221.729.data/purelib/pkscreener/pkscreener.ini,sha256=v0MV7kLxi0ehh1a013wg6TLXDeeLRO8PKapICSU1u-k,2451
10
- pkscreener-0.46.20250221.729.data/purelib/pkscreener/pkscreenerbot.py,sha256=bmsLcactP0eWNzqYdHzwPvDzCjFId03tJD57PVNDu2k,119496
11
- pkscreener-0.46.20250221.729.data/purelib/pkscreener/pkscreenercli.py,sha256=j5UBHU1YdKhLaT53uFlpZ73lvI41Iw_gjA_wrZaF5IA,59048
12
- pkscreener-0.46.20250221.729.data/purelib/pkscreener/requirements.txt,sha256=o6AMyZRJ519ivj_X7srn1jaHEOHqACdktVS2r88i5H8,1503
13
- pkscreener-0.46.20250221.729.data/purelib/pkscreener/classes/ArtTexts.py,sha256=UzU0v3LX4PsWcx_ATv5M-T4v93uLz2hmvyDtew6qzZk,19708
14
- pkscreener-0.46.20250221.729.data/purelib/pkscreener/classes/AssetsManager.py,sha256=T1RQVHR5mX6LxEXARYrs70iYEng7IsuU7oso308FsWw,36094
15
- pkscreener-0.46.20250221.729.data/purelib/pkscreener/classes/Backtest.py,sha256=VoNronl--07E477I9lhwfEjI4vK5VHu_tcDRO1K96hU,10784
16
- pkscreener-0.46.20250221.729.data/purelib/pkscreener/classes/Barometer.py,sha256=aZWu0TFbwRBvnkyN_Ws4a_2FYNhKKuqEpoQAqokthPc,9640
17
- pkscreener-0.46.20250221.729.data/purelib/pkscreener/classes/BaseScreeningStatistics.py,sha256=Dev8eCx8eGNqDsbXj-t68hLSDpKDICcyb9yH_n_IbYg,3086
18
- pkscreener-0.46.20250221.729.data/purelib/pkscreener/classes/CandlePatterns.py,sha256=IFVUXzx175aqZlL7JlmNl308aeIkSD6Hugl4M9zg9Io,17419
19
- pkscreener-0.46.20250221.729.data/purelib/pkscreener/classes/Changelog.py,sha256=S0hNTDYptWUxFrdTzqinjFLIywVAuKlYR1aCjepADn0,1511
20
- pkscreener-0.46.20250221.729.data/purelib/pkscreener/classes/ConfigManager.py,sha256=ZIxZ-IqWjIXpo_7SWRLx5e8sc0b92gGnc4qqMZVproM,54426
21
- pkscreener-0.46.20250221.729.data/purelib/pkscreener/classes/ConsoleMenuUtility.py,sha256=QZLPA0li0bfs1zNijfq_utovulY5fl4vXWk89CBpL5Q,10291
22
- pkscreener-0.46.20250221.729.data/purelib/pkscreener/classes/ConsoleUtility.py,sha256=gNMAm4iQF0ClmVPBe6ZnsjWQ-rfnTq6R_mLBjA6GgyI,12330
23
- pkscreener-0.46.20250221.729.data/purelib/pkscreener/classes/Fetcher.py,sha256=UA37RjcegNmdqHIC5bWW_9qzKn8McyU6mhELxmKuLzs,15080
24
- pkscreener-0.46.20250221.729.data/purelib/pkscreener/classes/GlobalStore.py,sha256=UCYctbau2ZAShkWOLA7-p52Pg_irghCWRoa6UrIKYQQ,3799
25
- pkscreener-0.46.20250221.729.data/purelib/pkscreener/classes/ImageUtility.py,sha256=DKPiM7u-fGPujD63VLCWUsvesgflVYDiLqyw_KWOK8g,37629
26
- pkscreener-0.46.20250221.729.data/purelib/pkscreener/classes/MarketMonitor.py,sha256=--qQpmLt7XTljACGDWIIOZO01uWJpEbG78wyMRynTI4,22450
27
- pkscreener-0.46.20250221.729.data/purelib/pkscreener/classes/MarketStatus.py,sha256=oBDTCTGazzOEhcclugxOOtyhu2VVT2XQ-t-GmY_pT7g,3823
28
- pkscreener-0.46.20250221.729.data/purelib/pkscreener/classes/MenuOptions.py,sha256=RIPQ9mVC9I07GZubrmOtUAQg10GbCoYwF3fnvV1dvqY,65741
29
- pkscreener-0.46.20250221.729.data/purelib/pkscreener/classes/Messenger.py,sha256=yKqq3eE2JkvTOeKcNZoPpCgxQ9FjcEeB1iHIKwwq8dA,8572
30
- pkscreener-0.46.20250221.729.data/purelib/pkscreener/classes/OtaUpdater.py,sha256=jSjVqgiZ4CGVkieJMekNLHZGx_eOGN-Xg4RF3eZO_Nk,13816
31
- pkscreener-0.46.20250221.729.data/purelib/pkscreener/classes/PKAnalytics.py,sha256=XijQ1h8ZQt-cC71xJAZXRDgaMa5WbOUKeszZVsWBmXM,6423
32
- pkscreener-0.46.20250221.729.data/purelib/pkscreener/classes/PKDataService.py,sha256=InEI3AGt_ykYfbwq2v1_NWUefTqPluKHSh_4ksFSUzE,3456
33
- pkscreener-0.46.20250221.729.data/purelib/pkscreener/classes/PKDemoHandler.py,sha256=wh48WLLFxBAFHML5Sq5G5-UFP96snJ9yKJgpKWuQ2Zs,2253
34
- pkscreener-0.46.20250221.729.data/purelib/pkscreener/classes/PKMarketOpenCloseAnalyser.py,sha256=zscdvHwDb5GQttqnR4Ed0SsVfOFeqKQgfIo6LWukgH0,34366
35
- pkscreener-0.46.20250221.729.data/purelib/pkscreener/classes/PKPremiumHandler.py,sha256=L3O3EwIZBE9PpdDFIGH-2Ec9Gi3IlzCd6RfQSXUd6So,5695
36
- pkscreener-0.46.20250221.729.data/purelib/pkscreener/classes/PKScanRunner.py,sha256=9Qy6xouK6qkNExeWF8LrxYXynI3Ju9UrSY5kI5W81Ok,27313
37
- pkscreener-0.46.20250221.729.data/purelib/pkscreener/classes/PKScheduledTaskProgress.py,sha256=wDMORWmyglcu06woVNpgDlESsMIiYX96MXO0VoBlLYg,1694
38
- pkscreener-0.46.20250221.729.data/purelib/pkscreener/classes/PKScheduler.py,sha256=Od3Niv6Q_aHarau9agCVt7h194votlaDX4j1Xv-_ru4,8994
39
- pkscreener-0.46.20250221.729.data/purelib/pkscreener/classes/PKSpreadsheets.py,sha256=BIICJx79QjGFPrnmQ34357jOGp79vuiknx6A_kC9y8Y,8466
40
- pkscreener-0.46.20250221.729.data/purelib/pkscreener/classes/PKTask.py,sha256=YPxzn0dA5ty7CtRFi1wQphC9vCdK8tB2_3DYHje9jgc,1907
41
- pkscreener-0.46.20250221.729.data/purelib/pkscreener/classes/PKUserRegistration.py,sha256=VftNCzv44NyeLLOhuxUzzgre8zpT-nRL75B0jv-udDI,11783
42
- pkscreener-0.46.20250221.729.data/purelib/pkscreener/classes/Pktalib.py,sha256=yko7TZMOsLoBv-LbTuT903CsGdyckhypXldh7uoAXmo,34179
43
- pkscreener-0.46.20250221.729.data/purelib/pkscreener/classes/Portfolio.py,sha256=dxviO0G3OqJza4Nbpj5OCph8PZlfkRCkL3LfLJYgqu0,14196
44
- pkscreener-0.46.20250221.729.data/purelib/pkscreener/classes/PortfolioXRay.py,sha256=cMQ-yZrBPWo4gACxFqj3HNG9rqmyqXkS88qpy77JP_s,49612
45
- pkscreener-0.46.20250221.729.data/purelib/pkscreener/classes/ScreeningStatistics.py,sha256=CoV2i5jJPL2hm4sIhQAPHbbfWw3vqgoShVmq4uir7k4,225756
46
- pkscreener-0.46.20250221.729.data/purelib/pkscreener/classes/StockScreener.py,sha256=wL6RjojBvTqo9XUlh2qoCpERrKdGNTlcDtCTReA0jkI,68437
47
- pkscreener-0.46.20250221.729.data/purelib/pkscreener/classes/StockSentiment.py,sha256=kc5jdXRGm2nIvDK-2y4i_Y1w47_2zWpunjlQsKB7IBY,3640
48
- pkscreener-0.46.20250221.729.data/purelib/pkscreener/classes/UserMenuChoicesHandler.py,sha256=MXJrQPD4yvKSI4p_RcnHt5oZg8AZ59ME7Jf-Nryoy5g,5055
49
- pkscreener-0.46.20250221.729.data/purelib/pkscreener/classes/Utility.py,sha256=6JpIich2-knaZ4sjsjyMoO_4S622KK-Jte2Hi4eYIOs,13870
50
- pkscreener-0.46.20250221.729.data/purelib/pkscreener/classes/WorkflowManager.py,sha256=GS1Q_jwulpOjZv0w9ZDySRa5w51gJ8xDabbUpQGKVO0,5800
51
- pkscreener-0.46.20250221.729.data/purelib/pkscreener/classes/__init__.py,sha256=UfAhNrgpaJWf-DVai3i-8xAW837vrWPSDTHtmZoniK8,28
52
- pkscreener-0.46.20250221.729.data/purelib/pkscreener/classes/keys.py,sha256=tygV0iu8bKmSPo6HGj1Cb-rTtEWErGrsYRZY7SoCb1g,6957
53
- pkscreener-0.46.20250221.729.dist-info/LICENSE,sha256=q80QYQZCkhPymkaQKXZJwOFYU6X-4lUHRzCGYERdLpA,1099
54
- pkscreener-0.46.20250221.729.dist-info/METADATA,sha256=-KJQgYCZw0MBr4r9GGXTH3rSeJuTvFPLBmLvWFFi32o,34208
55
- pkscreener-0.46.20250221.729.dist-info/WHEEL,sha256=cRmSBGD-cl98KkuHMNqv9Ac9L9_VqTvcBYwpIvxN0cg,101
56
- pkscreener-0.46.20250221.729.dist-info/entry_points.txt,sha256=Pm30xm4sU7YFtFJUC-Te8VlqOvYAvWKFFA5AfQE0xGY,120
57
- pkscreener-0.46.20250221.729.dist-info/top_level.txt,sha256=oIfcPPw58Q4KU-GDqp25dXbrtvxYXJBCo_em6i5aVvY,11
58
- pkscreener-0.46.20250221.729.dist-info/RECORD,,