pkscreener 0.46.20250213.710__cp310-cp310-macosx_10_9_x86_64.whl → 0.46.20250213.711__cp310-cp310-macosx_10_9_x86_64.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.20250213.710.data → pkscreener-0.46.20250213.711.data}/purelib/pkscreener/README.txt +5 -5
  2. {pkscreener-0.46.20250213.710.data → pkscreener-0.46.20250213.711.data}/purelib/pkscreener/classes/MarketMonitor.py +4 -4
  3. pkscreener-0.46.20250213.711.data/purelib/pkscreener/classes/__init__.py +1 -0
  4. {pkscreener-0.46.20250213.710.data → pkscreener-0.46.20250213.711.data}/purelib/pkscreener/pkscreenerbot.py +18 -13
  5. {pkscreener-0.46.20250213.710.dist-info → pkscreener-0.46.20250213.711.dist-info}/METADATA +7 -7
  6. pkscreener-0.46.20250213.711.dist-info/RECORD +58 -0
  7. pkscreener-0.46.20250213.710.data/purelib/pkscreener/classes/__init__.py +0 -1
  8. pkscreener-0.46.20250213.710.dist-info/RECORD +0 -58
  9. {pkscreener-0.46.20250213.710.data → pkscreener-0.46.20250213.711.data}/purelib/pkscreener/Disclaimer.txt +0 -0
  10. {pkscreener-0.46.20250213.710.data → pkscreener-0.46.20250213.711.data}/purelib/pkscreener/LICENSE-Others.txt +0 -0
  11. {pkscreener-0.46.20250213.710.data → pkscreener-0.46.20250213.711.data}/purelib/pkscreener/LICENSE.txt +0 -0
  12. {pkscreener-0.46.20250213.710.data → pkscreener-0.46.20250213.711.data}/purelib/pkscreener/LogoWM.txt +0 -0
  13. {pkscreener-0.46.20250213.710.data → pkscreener-0.46.20250213.711.data}/purelib/pkscreener/__init__.py +0 -0
  14. {pkscreener-0.46.20250213.710.data → pkscreener-0.46.20250213.711.data}/purelib/pkscreener/classes/ArtTexts.py +0 -0
  15. {pkscreener-0.46.20250213.710.data → pkscreener-0.46.20250213.711.data}/purelib/pkscreener/classes/AssetsManager.py +0 -0
  16. {pkscreener-0.46.20250213.710.data → pkscreener-0.46.20250213.711.data}/purelib/pkscreener/classes/Backtest.py +0 -0
  17. {pkscreener-0.46.20250213.710.data → pkscreener-0.46.20250213.711.data}/purelib/pkscreener/classes/Barometer.py +0 -0
  18. {pkscreener-0.46.20250213.710.data → pkscreener-0.46.20250213.711.data}/purelib/pkscreener/classes/BaseScreeningStatistics.py +0 -0
  19. {pkscreener-0.46.20250213.710.data → pkscreener-0.46.20250213.711.data}/purelib/pkscreener/classes/CandlePatterns.py +0 -0
  20. {pkscreener-0.46.20250213.710.data → pkscreener-0.46.20250213.711.data}/purelib/pkscreener/classes/Changelog.py +0 -0
  21. {pkscreener-0.46.20250213.710.data → pkscreener-0.46.20250213.711.data}/purelib/pkscreener/classes/ConfigManager.py +0 -0
  22. {pkscreener-0.46.20250213.710.data → pkscreener-0.46.20250213.711.data}/purelib/pkscreener/classes/ConsoleMenuUtility.py +0 -0
  23. {pkscreener-0.46.20250213.710.data → pkscreener-0.46.20250213.711.data}/purelib/pkscreener/classes/ConsoleUtility.py +0 -0
  24. {pkscreener-0.46.20250213.710.data → pkscreener-0.46.20250213.711.data}/purelib/pkscreener/classes/Fetcher.py +0 -0
  25. {pkscreener-0.46.20250213.710.data → pkscreener-0.46.20250213.711.data}/purelib/pkscreener/classes/GlobalStore.py +0 -0
  26. {pkscreener-0.46.20250213.710.data → pkscreener-0.46.20250213.711.data}/purelib/pkscreener/classes/ImageUtility.py +0 -0
  27. {pkscreener-0.46.20250213.710.data → pkscreener-0.46.20250213.711.data}/purelib/pkscreener/classes/MarketStatus.py +0 -0
  28. {pkscreener-0.46.20250213.710.data → pkscreener-0.46.20250213.711.data}/purelib/pkscreener/classes/MenuOptions.py +0 -0
  29. {pkscreener-0.46.20250213.710.data → pkscreener-0.46.20250213.711.data}/purelib/pkscreener/classes/Messenger.py +0 -0
  30. {pkscreener-0.46.20250213.710.data → pkscreener-0.46.20250213.711.data}/purelib/pkscreener/classes/OtaUpdater.py +0 -0
  31. {pkscreener-0.46.20250213.710.data → pkscreener-0.46.20250213.711.data}/purelib/pkscreener/classes/PKAnalytics.py +0 -0
  32. {pkscreener-0.46.20250213.710.data → pkscreener-0.46.20250213.711.data}/purelib/pkscreener/classes/PKDataService.py +0 -0
  33. {pkscreener-0.46.20250213.710.data → pkscreener-0.46.20250213.711.data}/purelib/pkscreener/classes/PKDemoHandler.py +0 -0
  34. {pkscreener-0.46.20250213.710.data → pkscreener-0.46.20250213.711.data}/purelib/pkscreener/classes/PKMarketOpenCloseAnalyser.py +0 -0
  35. {pkscreener-0.46.20250213.710.data → pkscreener-0.46.20250213.711.data}/purelib/pkscreener/classes/PKPremiumHandler.py +0 -0
  36. {pkscreener-0.46.20250213.710.data → pkscreener-0.46.20250213.711.data}/purelib/pkscreener/classes/PKScanRunner.py +0 -0
  37. {pkscreener-0.46.20250213.710.data → pkscreener-0.46.20250213.711.data}/purelib/pkscreener/classes/PKScheduledTaskProgress.py +0 -0
  38. {pkscreener-0.46.20250213.710.data → pkscreener-0.46.20250213.711.data}/purelib/pkscreener/classes/PKScheduler.py +0 -0
  39. {pkscreener-0.46.20250213.710.data → pkscreener-0.46.20250213.711.data}/purelib/pkscreener/classes/PKSpreadsheets.py +0 -0
  40. {pkscreener-0.46.20250213.710.data → pkscreener-0.46.20250213.711.data}/purelib/pkscreener/classes/PKTask.py +0 -0
  41. {pkscreener-0.46.20250213.710.data → pkscreener-0.46.20250213.711.data}/purelib/pkscreener/classes/PKUserRegistration.py +0 -0
  42. {pkscreener-0.46.20250213.710.data → pkscreener-0.46.20250213.711.data}/purelib/pkscreener/classes/Pktalib.py +0 -0
  43. {pkscreener-0.46.20250213.710.data → pkscreener-0.46.20250213.711.data}/purelib/pkscreener/classes/Portfolio.py +0 -0
  44. {pkscreener-0.46.20250213.710.data → pkscreener-0.46.20250213.711.data}/purelib/pkscreener/classes/PortfolioXRay.py +0 -0
  45. {pkscreener-0.46.20250213.710.data → pkscreener-0.46.20250213.711.data}/purelib/pkscreener/classes/ScreeningStatistics.py +0 -0
  46. {pkscreener-0.46.20250213.710.data → pkscreener-0.46.20250213.711.data}/purelib/pkscreener/classes/StockScreener.py +0 -0
  47. {pkscreener-0.46.20250213.710.data → pkscreener-0.46.20250213.711.data}/purelib/pkscreener/classes/StockSentiment.py +0 -0
  48. {pkscreener-0.46.20250213.710.data → pkscreener-0.46.20250213.711.data}/purelib/pkscreener/classes/UserMenuChoicesHandler.py +0 -0
  49. {pkscreener-0.46.20250213.710.data → pkscreener-0.46.20250213.711.data}/purelib/pkscreener/classes/Utility.py +0 -0
  50. {pkscreener-0.46.20250213.710.data → pkscreener-0.46.20250213.711.data}/purelib/pkscreener/classes/WorkflowManager.py +0 -0
  51. {pkscreener-0.46.20250213.710.data → pkscreener-0.46.20250213.711.data}/purelib/pkscreener/classes/keys.py +0 -0
  52. {pkscreener-0.46.20250213.710.data → pkscreener-0.46.20250213.711.data}/purelib/pkscreener/courbd.ttf +0 -0
  53. {pkscreener-0.46.20250213.710.data → pkscreener-0.46.20250213.711.data}/purelib/pkscreener/globals.py +0 -0
  54. {pkscreener-0.46.20250213.710.data → pkscreener-0.46.20250213.711.data}/purelib/pkscreener/pkscreener.ini +0 -0
  55. {pkscreener-0.46.20250213.710.data → pkscreener-0.46.20250213.711.data}/purelib/pkscreener/pkscreenercli.py +0 -0
  56. {pkscreener-0.46.20250213.710.data → pkscreener-0.46.20250213.711.data}/purelib/pkscreener/requirements.txt +0 -0
  57. {pkscreener-0.46.20250213.710.dist-info → pkscreener-0.46.20250213.711.dist-info}/LICENSE +0 -0
  58. {pkscreener-0.46.20250213.710.dist-info → pkscreener-0.46.20250213.711.dist-info}/WHEEL +0 -0
  59. {pkscreener-0.46.20250213.710.dist-info → pkscreener-0.46.20250213.711.dist-info}/entry_points.txt +0 -0
  60. {pkscreener-0.46.20250213.710.dist-info → pkscreener-0.46.20250213.711.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.20250213.709/pkscreenercli.exe
331
+ [Windows]: https://github.com/pkjmesra/PKScreener/releases/download/0.46.20250213.710/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.20250213.709/pkscreenercli_x64.bin
333
+ [Linux_x64]: https://github.com/pkjmesra/PKScreener/releases/download/0.46.20250213.710/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.20250213.709/pkscreenercli_arm64.bin
335
+ [Linux_arm64]: https://github.com/pkjmesra/PKScreener/releases/download/0.46.20250213.710/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.20250213.709/pkscreenercli_x64.run
337
+ [Mac OS_x64]: https://github.com/pkjmesra/PKScreener/releases/download/0.46.20250213.710/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.20250213.709/pkscreenercli_arm64.run
339
+ [Mac OS_arm64]: https://github.com/pkjmesra/PKScreener/releases/download/0.46.20250213.710/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
@@ -350,16 +350,16 @@ class MarketMonitor(SingletonMixin, metaclass=SingletonType):
350
350
  if screenOptions is None:
351
351
  return ""
352
352
  baseIndex = 12
353
- baseIndices = screenOptions.split(":")
353
+ baseIndices = str(screenOptions).split(":")
354
354
  if len(baseIndices) > 1:
355
355
  baseIndex = baseIndices[1]
356
- choices = f"--systemlaunched -a y -e -o '{screenOptions.replace('C:','X:').replace('D:','')}'"
356
+ choices = f"--systemlaunched -a y -e -o '{str(screenOptions).replace('C:','X:').replace('D:','')}'"
357
357
  indexNum = -1
358
358
  try:
359
359
  indexNum = PREDEFINED_SCAN_MENU_VALUES.index(choices)
360
360
  except: # pragma: no cover
361
361
  pass
362
- optionName = ""
362
+ optionName = str(screenOptions).replace(':D','').replace(':','_')
363
363
  if indexNum >= 0:
364
- optionName = f"{('P_1_'+str(indexNum +1)+'_'+str(baseIndex)) if '>|' in choices else screenOptions.replace(':D','').replace(':','_')}"
364
+ optionName = f"{('P_1_'+str(indexNum +1)+'_'+str(baseIndex)) if '>|' in choices else str(screenOptions).replace(':D','').replace(':','_')}"
365
365
  return optionName
@@ -0,0 +1 @@
1
+ VERSION='0.46.20250213.711'
@@ -648,24 +648,13 @@ def subscribeToScannerAlerts(update: Update, context: CallbackContext) -> str:
648
648
  # User is already subscribed to some alerts
649
649
  if str(scanId) in alertUser.scannerJobs:
650
650
  menuText = f"You are already subscribed to {scanId} ! Alerts will be delivered as and when they are raised."
651
+ kickOffScannerJobIfNotKickedOff(scanId,user,dbManager,requiredBalance)
651
652
  else:
652
653
  if alertUser.balance < requiredBalance:
653
654
  # Insufficient balance
654
655
  menuText = f"You need at least <b>₹ {requiredBalance}</b> to subscribe to <b>{scanId} alerts for a day</b> ! Your current balance <b>₹ {alertUser.balance}</b> is <b>insufficient</b>. {payWall}"
655
656
  else:
656
- # Sufficient balance to subscribe to scanId
657
- needsNewJobKickedOff = False
658
- subscribedUsers = dbManager.usersForScannerJobId(scannerJobId=scanId)
659
- if subscribedUsers is None or len(subscribedUsers) == 0:
660
- # This is the first user who's requesting this scanner
661
- needsNewJobKickedOff = True
662
- subscribed = dbManager.updateAlertSubscriptionModel(user.id,requiredBalance,scanId)
663
- if subscribed:
664
- menuText = f"You have been added to receive the alerts for {scanId}. Please note that it is valid only for today during Market Hours and resets right after that. You will need to re-subscribe again if you need it on the next day. Thank you for trusting PKScreener!"
665
- if needsNewJobKickedOff:
666
- run_workflow(f"{scanId}_{user.id}", str(user.id), f'--systemlaunched -a y -m {str(scanId).upper().replace("_",":")}', workflowType="S")
667
- else:
668
- menuText = "We encountered an error updating your subscription! Please reach out to @ItsOnlyPK on Telegram with your UTR and subscription scanner details."
657
+ menuText = kickOffScannerJobIfNotKickedOff(scanId,user,dbManager,requiredBalance)
669
658
 
670
659
  elif alertUser is None or alertUser.balance == 0:
671
660
  # Either user is not subscribed or has 0 balance
@@ -675,6 +664,22 @@ def subscribeToScannerAlerts(update: Update, context: CallbackContext) -> str:
675
664
  editMessageText(query=query,editedText=sanitiseTexts(menuText),reply_markup=default_markup(user=user))
676
665
  return START_ROUTES
677
666
 
667
+ def kickOffScannerJobIfNotKickedOff(scanId,user,dbManager,requiredBalance):
668
+ # Sufficient balance to subscribe to scanId
669
+ needsNewJobKickedOff = False
670
+ menuText = ""
671
+ subscribedUsers = dbManager.usersForScannerJobId(scannerJobId=scanId)
672
+ if subscribedUsers is None or len(subscribedUsers) == 0:
673
+ # This is the first user who's requesting this scanner
674
+ needsNewJobKickedOff = True
675
+ subscribed = dbManager.updateAlertSubscriptionModel(user.id,requiredBalance,scanId)
676
+ if subscribed:
677
+ menuText = f"You have been added to receive the alerts for {scanId}. Please note that it is valid only for today during Market Hours and resets right after that. You will need to re-subscribe again if you need it on the next day. Thank you for trusting PKScreener!"
678
+ if needsNewJobKickedOff:
679
+ run_workflow(f"{scanId}_{user.id}", str(user.id), f'--systemlaunched -a y -m {str(scanId).upper().replace("_",":")}', workflowType="S")
680
+ else:
681
+ menuText = "We encountered an error updating your subscription! Please reach out to @ItsOnlyPK on Telegram with your UTR and subscription scanner details."
682
+ return menuText
678
683
 
679
684
  def XScanners(update: Update, context: CallbackContext) -> str:
680
685
  """Show new choice of buttons"""
@@ -1,9 +1,9 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: pkscreener
3
- Version: 0.46.20250213.710
3
+ Version: 0.46.20250213.711
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.20250213.710.zip
6
+ Download-URL: https://github.com/pkjmesra/pkscreener/archive/v0.46.20250213.711.zip
7
7
  Author: pkjmesra
8
8
  Author-email: pkjmesra@gmail.com
9
9
  License: OSI Approved (MIT)
@@ -380,15 +380,15 @@ After you have finished the run, go to that copied path, zip the contents of the
380
380
  [MADE-IN-INDIA-badge]: https://img.shields.io/badge/MADE%20WITH%20%E2%9D%A4%20IN-INDIA-orange
381
381
  [MADE-IN-INDIA]: https://en.wikipedia.org/wiki/India
382
382
  [Windows-badge]: https://img.shields.io/badge/Windows-0078D6?logo=windows&logoColor=white
383
- [Windows]: https://github.com/pkjmesra/PKScreener/releases/download/0.46.20250213.709/pkscreenercli.exe
383
+ [Windows]: https://github.com/pkjmesra/PKScreener/releases/download/0.46.20250213.710/pkscreenercli.exe
384
384
  [Linux-badge_x64]: https://img.shields.io/badge/Linux(x64)-FCC624?logo=linux&logoColor=black
385
- [Linux_x64]: https://github.com/pkjmesra/PKScreener/releases/download/0.46.20250213.709/pkscreenercli_x64.bin
385
+ [Linux_x64]: https://github.com/pkjmesra/PKScreener/releases/download/0.46.20250213.710/pkscreenercli_x64.bin
386
386
  [Linux-badge_arm64]: https://img.shields.io/badge/Linux(arm64)-FCC624?logo=linux&logoColor=black
387
- [Linux_arm64]: https://github.com/pkjmesra/PKScreener/releases/download/0.46.20250213.709/pkscreenercli_arm64.bin
387
+ [Linux_arm64]: https://github.com/pkjmesra/PKScreener/releases/download/0.46.20250213.710/pkscreenercli_arm64.bin
388
388
  [Mac OS-badge_x64]: https://img.shields.io/badge/mac%20os(x64)-D3D3D3?logo=apple&logoColor=000000
389
- [Mac OS_x64]: https://github.com/pkjmesra/PKScreener/releases/download/0.46.20250213.709/pkscreenercli_x64.run
389
+ [Mac OS_x64]: https://github.com/pkjmesra/PKScreener/releases/download/0.46.20250213.710/pkscreenercli_x64.run
390
390
  [Mac OS-badge_arm64]: https://img.shields.io/badge/mac%20os(arm64)-D3D3D3?logo=apple&logoColor=000000
391
- [Mac OS_arm64]: https://github.com/pkjmesra/PKScreener/releases/download/0.46.20250213.709/pkscreenercli_arm64.run
391
+ [Mac OS_arm64]: https://github.com/pkjmesra/PKScreener/releases/download/0.46.20250213.710/pkscreenercli_arm64.run
392
392
  [GitHub release (latest by date)-badge]: https://img.shields.io/github/v/release/pkjmesra/PKScreener
393
393
  [GitHub release (latest by date)]: https://github.com/pkjmesra/PKScreener/releases/latest
394
394
  [pypi-badge]: https://img.shields.io/pypi/v/pkscreener.svg?style=flat-square
@@ -0,0 +1,58 @@
1
+ pkscreener-0.46.20250213.711.data/purelib/pkscreener/Disclaimer.txt,sha256=kBZQSQCFfL2kc1bijXWndZzkjMTtnpH_B7XtDPPMcuw,1396
2
+ pkscreener-0.46.20250213.711.data/purelib/pkscreener/LICENSE-Others.txt,sha256=WBslRYLBoqYg-vr25sS1c_UI7cuUnsGk0nIQLBzTWEE,271830
3
+ pkscreener-0.46.20250213.711.data/purelib/pkscreener/LICENSE.txt,sha256=CdnyGrl-xRYX67ZkdERZWHr6BlTxOyg8Z8sK1XQ5Xsg,1078
4
+ pkscreener-0.46.20250213.711.data/purelib/pkscreener/LogoWM.txt,sha256=7Njnavpy_FKY4Iwbzv1JqsYMcOdkDSKAKXP3SAItKV0,14868
5
+ pkscreener-0.46.20250213.711.data/purelib/pkscreener/README.txt,sha256=aDk6jDVTmSNx6y_35yRLI3RfJOJhMT5Tvg8qdwBlOcM,32701
6
+ pkscreener-0.46.20250213.711.data/purelib/pkscreener/__init__.py,sha256=aZ62qYACxsU8m8_5JkzNzos1lVFNcMGPRMgeddnUUiQ,1633
7
+ pkscreener-0.46.20250213.711.data/purelib/pkscreener/courbd.ttf,sha256=SKpnp-BRs7AZcdI83nencS3Q7xe0anbbP1YMOxLlEhU,791436
8
+ pkscreener-0.46.20250213.711.data/purelib/pkscreener/globals.py,sha256=bIj3LBnbiGvVYidOF0sohg19jHTEkAavrGYaYFyBPhM,240829
9
+ pkscreener-0.46.20250213.711.data/purelib/pkscreener/pkscreener.ini,sha256=QKs6j4qhyH37L_MdG3ztAIwgqs4c3qihuqDIoex-V2g,2391
10
+ pkscreener-0.46.20250213.711.data/purelib/pkscreener/pkscreenerbot.py,sha256=YZaTZCSPF6ZniYbGZZGYnBSkumOcD8SH9_caMMyxa3E,106672
11
+ pkscreener-0.46.20250213.711.data/purelib/pkscreener/pkscreenercli.py,sha256=WEVXfcZdeogWZBY3CWtRYyFrmQa5BEEZedKLlMwCM5U,56999
12
+ pkscreener-0.46.20250213.711.data/purelib/pkscreener/requirements.txt,sha256=kgq4lh06feiOI8JlIM3PjZlnO6DW1RsM9q-tXeXjtNE,1457
13
+ pkscreener-0.46.20250213.711.data/purelib/pkscreener/classes/ArtTexts.py,sha256=LZ8ynyS8woliv8bM9Nq4aU0VCoJDJU0FgZk8V5zYPmg,19504
14
+ pkscreener-0.46.20250213.711.data/purelib/pkscreener/classes/AssetsManager.py,sha256=SutbAZ4JiGhzN0tzfa9vNpHdW6alSL67Jz-knPPcqBw,33706
15
+ pkscreener-0.46.20250213.711.data/purelib/pkscreener/classes/Backtest.py,sha256=wobBQgqVQhFNZlyJ2hgMXQqofrICc_3F0I5D66DUvGI,10530
16
+ pkscreener-0.46.20250213.711.data/purelib/pkscreener/classes/Barometer.py,sha256=WPrgtIXb1nIbb-FnuRs-yvOQ5baNQRBgUR_zWg1moxk,9464
17
+ pkscreener-0.46.20250213.711.data/purelib/pkscreener/classes/BaseScreeningStatistics.py,sha256=u5t1wf-HsZ8xEtprON55ehIR3F2LNNq8LvwgIrhYRmU,3000
18
+ pkscreener-0.46.20250213.711.data/purelib/pkscreener/classes/CandlePatterns.py,sha256=gaswU2OeDa3JXjEafR2clUpKW5v8_1_tJuNPuTWsAss,17066
19
+ pkscreener-0.46.20250213.711.data/purelib/pkscreener/classes/Changelog.py,sha256=vUOpca28OACNhavAmjBm4xco3u6fcHqWlnlmCJqO5Lk,1469
20
+ pkscreener-0.46.20250213.711.data/purelib/pkscreener/classes/ConfigManager.py,sha256=THcfBgua5hr1Pv7AwEDBu2yurCNteGM04jY3Fr_MeBg,53565
21
+ pkscreener-0.46.20250213.711.data/purelib/pkscreener/classes/ConsoleMenuUtility.py,sha256=fyR7dEsAaEWEe5SyaVgwLPdU4h4pI8SozUhsPZXShpg,10037
22
+ pkscreener-0.46.20250213.711.data/purelib/pkscreener/classes/ConsoleUtility.py,sha256=TrEnTT4pmsBpEYdwD2oAtNqNG_drPe1LVkhthP2540I,12096
23
+ pkscreener-0.46.20250213.711.data/purelib/pkscreener/classes/Fetcher.py,sha256=WWX9_NO3JTw6_1Z9SqPm4Nj-4Uy_4PPYEMVyD5FLnVo,12336
24
+ pkscreener-0.46.20250213.711.data/purelib/pkscreener/classes/GlobalStore.py,sha256=IzoYMybXpVVf6YwZi7j34rP-hNd7sMened8TAMu_-A8,3709
25
+ pkscreener-0.46.20250213.711.data/purelib/pkscreener/classes/ImageUtility.py,sha256=mgJUzjrOKQ1mYV5P_ylhBnaF7ZgOO6ogjy22Rt49TNI,37032
26
+ pkscreener-0.46.20250213.711.data/purelib/pkscreener/classes/MarketMonitor.py,sha256=LFCJhmS90nymwdnBk9mdrz23krR3hosH2XQ6NutRtZQ,21816
27
+ pkscreener-0.46.20250213.711.data/purelib/pkscreener/classes/MarketStatus.py,sha256=dNg8znbRpt7ID3U_1nmclD4zSLtveJeYeRbS0l6HLtE,3737
28
+ pkscreener-0.46.20250213.711.data/purelib/pkscreener/classes/MenuOptions.py,sha256=iZb0zBs7lcP60cmuP7Z5xmXfNtTFcFH6ZWOuoileErE,64552
29
+ pkscreener-0.46.20250213.711.data/purelib/pkscreener/classes/Messenger.py,sha256=peyY-YiqdC1bp-3DlJXILRa9HGYbqGVzf1wil0fYv98,8396
30
+ pkscreener-0.46.20250213.711.data/purelib/pkscreener/classes/OtaUpdater.py,sha256=_7-nFAC-vAcmZ1Nwi5g5tfp7hKQQPuLUnBCOzrwC39g,13491
31
+ pkscreener-0.46.20250213.711.data/purelib/pkscreener/classes/PKAnalytics.py,sha256=_X-2OFw2yQVmXlEIRsnBVNy9fhYyxqt0BOqADD4v08U,5246
32
+ pkscreener-0.46.20250213.711.data/purelib/pkscreener/classes/PKDataService.py,sha256=BipM8Z4rS6h12cF6VWv_u4Z8ee7psMFd1yUojejW1Ag,3393
33
+ pkscreener-0.46.20250213.711.data/purelib/pkscreener/classes/PKDemoHandler.py,sha256=r4KrZF8TaOu1J0nu8sUsgWEvnbndboWQQvz69GOy1Fk,2207
34
+ pkscreener-0.46.20250213.711.data/purelib/pkscreener/classes/PKMarketOpenCloseAnalyser.py,sha256=T7S0DRv4Tqg77S5CyTWQUgpIAtx0NEtSVAplkynS2YM,33833
35
+ pkscreener-0.46.20250213.711.data/purelib/pkscreener/classes/PKPremiumHandler.py,sha256=r16-u9fyc0ftgnSnZnz-JusTfEzyQIyKkvgbPuSd7W4,5611
36
+ pkscreener-0.46.20250213.711.data/purelib/pkscreener/classes/PKScanRunner.py,sha256=EPLo2euBMfA9omnqrr5pXv2h9KzTcPZM-PXRFI26LSo,26791
37
+ pkscreener-0.46.20250213.711.data/purelib/pkscreener/classes/PKScheduledTaskProgress.py,sha256=h19ZuxoalB50pnZjntFh12b9mBozvMqhKYq6TL18vo4,1657
38
+ pkscreener-0.46.20250213.711.data/purelib/pkscreener/classes/PKScheduler.py,sha256=qThoz0yXLmHEWAiD_TdkIrzJb37b_m830JJFrkN1Tio,8814
39
+ pkscreener-0.46.20250213.711.data/purelib/pkscreener/classes/PKSpreadsheets.py,sha256=1I7YGGPPY879K5JeTZ_d1FNCpjloh6TZrx91JlwT20o,8298
40
+ pkscreener-0.46.20250213.711.data/purelib/pkscreener/classes/PKTask.py,sha256=4q87uD2cXvp0AbP6I73xPP39F0mfnpHQutsxxqpnxJM,1867
41
+ pkscreener-0.46.20250213.711.data/purelib/pkscreener/classes/PKUserRegistration.py,sha256=GPUau3sIhRGuQcV7mdLAACMb8KuJTUiMf5JcBbTfDbU,11202
42
+ pkscreener-0.46.20250213.711.data/purelib/pkscreener/classes/Pktalib.py,sha256=7DNx9UL-l1ehXItzqyaUwtsVSuLB9ruhdsQZGZWqqv4,28959
43
+ pkscreener-0.46.20250213.711.data/purelib/pkscreener/classes/Portfolio.py,sha256=JZ93n3Zk9nkSFaX-lHyQiFnavHVmHPFoy-L_4gugj54,13895
44
+ pkscreener-0.46.20250213.711.data/purelib/pkscreener/classes/PortfolioXRay.py,sha256=4MjXqBAVUlfN4w5tTmgEnQGMoy0hFu_uaVgrmai1fN4,48339
45
+ pkscreener-0.46.20250213.711.data/purelib/pkscreener/classes/ScreeningStatistics.py,sha256=p2rjc1MvZ-CmI_Uw_7jxy3NOMwo3cDB6WenxarsQTBM,221039
46
+ pkscreener-0.46.20250213.711.data/purelib/pkscreener/classes/StockScreener.py,sha256=F0SWa1DSTgYdSWnkPTR9kmOKgHLtaqNMCtJP8yZkDnE,67252
47
+ pkscreener-0.46.20250213.711.data/purelib/pkscreener/classes/StockSentiment.py,sha256=WL7TBAHDSIN5cgZ9uTbbEFnUPo4G-YIzEv16RpPGaro,3546
48
+ pkscreener-0.46.20250213.711.data/purelib/pkscreener/classes/UserMenuChoicesHandler.py,sha256=_fTCscTLEjoU-n12V9237uDN6Jf8nGCvGdBVkpD3Ap4,4947
49
+ pkscreener-0.46.20250213.711.data/purelib/pkscreener/classes/Utility.py,sha256=Cn_QrVH40rQWkHW2e2NolE0b18qszvGXfVLdwAqD7sM,13562
50
+ pkscreener-0.46.20250213.711.data/purelib/pkscreener/classes/WorkflowManager.py,sha256=d0_QiVfai65axe4Oi_h2XUkPyx_wWfiofZd_gMtNAwY,5632
51
+ pkscreener-0.46.20250213.711.data/purelib/pkscreener/classes/__init__.py,sha256=7IsZkbDpfjAJQe-21XnMPZSx6J8Mm4LzqJlol68tEBo,28
52
+ pkscreener-0.46.20250213.711.data/purelib/pkscreener/classes/keys.py,sha256=LQq_t1lSh0x4TbRCIDhoCil3xctgLLeVk5f2vgrl1tk,6789
53
+ pkscreener-0.46.20250213.711.dist-info/LICENSE,sha256=CdnyGrl-xRYX67ZkdERZWHr6BlTxOyg8Z8sK1XQ5Xsg,1078
54
+ pkscreener-0.46.20250213.711.dist-info/METADATA,sha256=uegG0mp0vVIEk28C1iHSedEoLY-Ez-rhxrKRQMWJn3I,34391
55
+ pkscreener-0.46.20250213.711.dist-info/WHEEL,sha256=qW9xlwewyQBufEUzmM-8CIjZ7fR659LOSrcgouui4Z4,111
56
+ pkscreener-0.46.20250213.711.dist-info/entry_points.txt,sha256=Pm30xm4sU7YFtFJUC-Te8VlqOvYAvWKFFA5AfQE0xGY,120
57
+ pkscreener-0.46.20250213.711.dist-info/top_level.txt,sha256=oIfcPPw58Q4KU-GDqp25dXbrtvxYXJBCo_em6i5aVvY,11
58
+ pkscreener-0.46.20250213.711.dist-info/RECORD,,
@@ -1 +0,0 @@
1
- VERSION='0.46.20250213.710'
@@ -1,58 +0,0 @@
1
- pkscreener-0.46.20250213.710.data/purelib/pkscreener/Disclaimer.txt,sha256=kBZQSQCFfL2kc1bijXWndZzkjMTtnpH_B7XtDPPMcuw,1396
2
- pkscreener-0.46.20250213.710.data/purelib/pkscreener/LICENSE-Others.txt,sha256=WBslRYLBoqYg-vr25sS1c_UI7cuUnsGk0nIQLBzTWEE,271830
3
- pkscreener-0.46.20250213.710.data/purelib/pkscreener/LICENSE.txt,sha256=CdnyGrl-xRYX67ZkdERZWHr6BlTxOyg8Z8sK1XQ5Xsg,1078
4
- pkscreener-0.46.20250213.710.data/purelib/pkscreener/LogoWM.txt,sha256=7Njnavpy_FKY4Iwbzv1JqsYMcOdkDSKAKXP3SAItKV0,14868
5
- pkscreener-0.46.20250213.710.data/purelib/pkscreener/README.txt,sha256=FFbmQclZZgvUaraySLcjXy4RVZZwKdDxQdjvVTzIoOs,32701
6
- pkscreener-0.46.20250213.710.data/purelib/pkscreener/__init__.py,sha256=aZ62qYACxsU8m8_5JkzNzos1lVFNcMGPRMgeddnUUiQ,1633
7
- pkscreener-0.46.20250213.710.data/purelib/pkscreener/courbd.ttf,sha256=SKpnp-BRs7AZcdI83nencS3Q7xe0anbbP1YMOxLlEhU,791436
8
- pkscreener-0.46.20250213.710.data/purelib/pkscreener/globals.py,sha256=bIj3LBnbiGvVYidOF0sohg19jHTEkAavrGYaYFyBPhM,240829
9
- pkscreener-0.46.20250213.710.data/purelib/pkscreener/pkscreener.ini,sha256=QKs6j4qhyH37L_MdG3ztAIwgqs4c3qihuqDIoex-V2g,2391
10
- pkscreener-0.46.20250213.710.data/purelib/pkscreener/pkscreenerbot.py,sha256=6vaNCnIjsAJK8wwh5EQcBnz-VdVY0QLUSzM3KHsnFpw,106577
11
- pkscreener-0.46.20250213.710.data/purelib/pkscreener/pkscreenercli.py,sha256=WEVXfcZdeogWZBY3CWtRYyFrmQa5BEEZedKLlMwCM5U,56999
12
- pkscreener-0.46.20250213.710.data/purelib/pkscreener/requirements.txt,sha256=kgq4lh06feiOI8JlIM3PjZlnO6DW1RsM9q-tXeXjtNE,1457
13
- pkscreener-0.46.20250213.710.data/purelib/pkscreener/classes/ArtTexts.py,sha256=LZ8ynyS8woliv8bM9Nq4aU0VCoJDJU0FgZk8V5zYPmg,19504
14
- pkscreener-0.46.20250213.710.data/purelib/pkscreener/classes/AssetsManager.py,sha256=SutbAZ4JiGhzN0tzfa9vNpHdW6alSL67Jz-knPPcqBw,33706
15
- pkscreener-0.46.20250213.710.data/purelib/pkscreener/classes/Backtest.py,sha256=wobBQgqVQhFNZlyJ2hgMXQqofrICc_3F0I5D66DUvGI,10530
16
- pkscreener-0.46.20250213.710.data/purelib/pkscreener/classes/Barometer.py,sha256=WPrgtIXb1nIbb-FnuRs-yvOQ5baNQRBgUR_zWg1moxk,9464
17
- pkscreener-0.46.20250213.710.data/purelib/pkscreener/classes/BaseScreeningStatistics.py,sha256=u5t1wf-HsZ8xEtprON55ehIR3F2LNNq8LvwgIrhYRmU,3000
18
- pkscreener-0.46.20250213.710.data/purelib/pkscreener/classes/CandlePatterns.py,sha256=gaswU2OeDa3JXjEafR2clUpKW5v8_1_tJuNPuTWsAss,17066
19
- pkscreener-0.46.20250213.710.data/purelib/pkscreener/classes/Changelog.py,sha256=vUOpca28OACNhavAmjBm4xco3u6fcHqWlnlmCJqO5Lk,1469
20
- pkscreener-0.46.20250213.710.data/purelib/pkscreener/classes/ConfigManager.py,sha256=THcfBgua5hr1Pv7AwEDBu2yurCNteGM04jY3Fr_MeBg,53565
21
- pkscreener-0.46.20250213.710.data/purelib/pkscreener/classes/ConsoleMenuUtility.py,sha256=fyR7dEsAaEWEe5SyaVgwLPdU4h4pI8SozUhsPZXShpg,10037
22
- pkscreener-0.46.20250213.710.data/purelib/pkscreener/classes/ConsoleUtility.py,sha256=TrEnTT4pmsBpEYdwD2oAtNqNG_drPe1LVkhthP2540I,12096
23
- pkscreener-0.46.20250213.710.data/purelib/pkscreener/classes/Fetcher.py,sha256=WWX9_NO3JTw6_1Z9SqPm4Nj-4Uy_4PPYEMVyD5FLnVo,12336
24
- pkscreener-0.46.20250213.710.data/purelib/pkscreener/classes/GlobalStore.py,sha256=IzoYMybXpVVf6YwZi7j34rP-hNd7sMened8TAMu_-A8,3709
25
- pkscreener-0.46.20250213.710.data/purelib/pkscreener/classes/ImageUtility.py,sha256=mgJUzjrOKQ1mYV5P_ylhBnaF7ZgOO6ogjy22Rt49TNI,37032
26
- pkscreener-0.46.20250213.710.data/purelib/pkscreener/classes/MarketMonitor.py,sha256=_n9YogooCk_EWsTv9-NZBjDLcz1_M43oI2cSTRCau7Y,21751
27
- pkscreener-0.46.20250213.710.data/purelib/pkscreener/classes/MarketStatus.py,sha256=dNg8znbRpt7ID3U_1nmclD4zSLtveJeYeRbS0l6HLtE,3737
28
- pkscreener-0.46.20250213.710.data/purelib/pkscreener/classes/MenuOptions.py,sha256=iZb0zBs7lcP60cmuP7Z5xmXfNtTFcFH6ZWOuoileErE,64552
29
- pkscreener-0.46.20250213.710.data/purelib/pkscreener/classes/Messenger.py,sha256=peyY-YiqdC1bp-3DlJXILRa9HGYbqGVzf1wil0fYv98,8396
30
- pkscreener-0.46.20250213.710.data/purelib/pkscreener/classes/OtaUpdater.py,sha256=_7-nFAC-vAcmZ1Nwi5g5tfp7hKQQPuLUnBCOzrwC39g,13491
31
- pkscreener-0.46.20250213.710.data/purelib/pkscreener/classes/PKAnalytics.py,sha256=_X-2OFw2yQVmXlEIRsnBVNy9fhYyxqt0BOqADD4v08U,5246
32
- pkscreener-0.46.20250213.710.data/purelib/pkscreener/classes/PKDataService.py,sha256=BipM8Z4rS6h12cF6VWv_u4Z8ee7psMFd1yUojejW1Ag,3393
33
- pkscreener-0.46.20250213.710.data/purelib/pkscreener/classes/PKDemoHandler.py,sha256=r4KrZF8TaOu1J0nu8sUsgWEvnbndboWQQvz69GOy1Fk,2207
34
- pkscreener-0.46.20250213.710.data/purelib/pkscreener/classes/PKMarketOpenCloseAnalyser.py,sha256=T7S0DRv4Tqg77S5CyTWQUgpIAtx0NEtSVAplkynS2YM,33833
35
- pkscreener-0.46.20250213.710.data/purelib/pkscreener/classes/PKPremiumHandler.py,sha256=r16-u9fyc0ftgnSnZnz-JusTfEzyQIyKkvgbPuSd7W4,5611
36
- pkscreener-0.46.20250213.710.data/purelib/pkscreener/classes/PKScanRunner.py,sha256=EPLo2euBMfA9omnqrr5pXv2h9KzTcPZM-PXRFI26LSo,26791
37
- pkscreener-0.46.20250213.710.data/purelib/pkscreener/classes/PKScheduledTaskProgress.py,sha256=h19ZuxoalB50pnZjntFh12b9mBozvMqhKYq6TL18vo4,1657
38
- pkscreener-0.46.20250213.710.data/purelib/pkscreener/classes/PKScheduler.py,sha256=qThoz0yXLmHEWAiD_TdkIrzJb37b_m830JJFrkN1Tio,8814
39
- pkscreener-0.46.20250213.710.data/purelib/pkscreener/classes/PKSpreadsheets.py,sha256=1I7YGGPPY879K5JeTZ_d1FNCpjloh6TZrx91JlwT20o,8298
40
- pkscreener-0.46.20250213.710.data/purelib/pkscreener/classes/PKTask.py,sha256=4q87uD2cXvp0AbP6I73xPP39F0mfnpHQutsxxqpnxJM,1867
41
- pkscreener-0.46.20250213.710.data/purelib/pkscreener/classes/PKUserRegistration.py,sha256=GPUau3sIhRGuQcV7mdLAACMb8KuJTUiMf5JcBbTfDbU,11202
42
- pkscreener-0.46.20250213.710.data/purelib/pkscreener/classes/Pktalib.py,sha256=7DNx9UL-l1ehXItzqyaUwtsVSuLB9ruhdsQZGZWqqv4,28959
43
- pkscreener-0.46.20250213.710.data/purelib/pkscreener/classes/Portfolio.py,sha256=JZ93n3Zk9nkSFaX-lHyQiFnavHVmHPFoy-L_4gugj54,13895
44
- pkscreener-0.46.20250213.710.data/purelib/pkscreener/classes/PortfolioXRay.py,sha256=4MjXqBAVUlfN4w5tTmgEnQGMoy0hFu_uaVgrmai1fN4,48339
45
- pkscreener-0.46.20250213.710.data/purelib/pkscreener/classes/ScreeningStatistics.py,sha256=p2rjc1MvZ-CmI_Uw_7jxy3NOMwo3cDB6WenxarsQTBM,221039
46
- pkscreener-0.46.20250213.710.data/purelib/pkscreener/classes/StockScreener.py,sha256=F0SWa1DSTgYdSWnkPTR9kmOKgHLtaqNMCtJP8yZkDnE,67252
47
- pkscreener-0.46.20250213.710.data/purelib/pkscreener/classes/StockSentiment.py,sha256=WL7TBAHDSIN5cgZ9uTbbEFnUPo4G-YIzEv16RpPGaro,3546
48
- pkscreener-0.46.20250213.710.data/purelib/pkscreener/classes/UserMenuChoicesHandler.py,sha256=_fTCscTLEjoU-n12V9237uDN6Jf8nGCvGdBVkpD3Ap4,4947
49
- pkscreener-0.46.20250213.710.data/purelib/pkscreener/classes/Utility.py,sha256=Cn_QrVH40rQWkHW2e2NolE0b18qszvGXfVLdwAqD7sM,13562
50
- pkscreener-0.46.20250213.710.data/purelib/pkscreener/classes/WorkflowManager.py,sha256=d0_QiVfai65axe4Oi_h2XUkPyx_wWfiofZd_gMtNAwY,5632
51
- pkscreener-0.46.20250213.710.data/purelib/pkscreener/classes/__init__.py,sha256=jW0jdXzzkST7ik1eT5fRIX3e4rRfMbckevT4OCGA4uc,28
52
- pkscreener-0.46.20250213.710.data/purelib/pkscreener/classes/keys.py,sha256=LQq_t1lSh0x4TbRCIDhoCil3xctgLLeVk5f2vgrl1tk,6789
53
- pkscreener-0.46.20250213.710.dist-info/LICENSE,sha256=CdnyGrl-xRYX67ZkdERZWHr6BlTxOyg8Z8sK1XQ5Xsg,1078
54
- pkscreener-0.46.20250213.710.dist-info/METADATA,sha256=TwVHD5l1el7Hpsm5Um5uFsLZ3vll-scr_f6O9Ij1c9k,34391
55
- pkscreener-0.46.20250213.710.dist-info/WHEEL,sha256=qW9xlwewyQBufEUzmM-8CIjZ7fR659LOSrcgouui4Z4,111
56
- pkscreener-0.46.20250213.710.dist-info/entry_points.txt,sha256=Pm30xm4sU7YFtFJUC-Te8VlqOvYAvWKFFA5AfQE0xGY,120
57
- pkscreener-0.46.20250213.710.dist-info/top_level.txt,sha256=oIfcPPw58Q4KU-GDqp25dXbrtvxYXJBCo_em6i5aVvY,11
58
- pkscreener-0.46.20250213.710.dist-info/RECORD,,