update cron list

This commit is contained in:
MuslemRahimi 2024-11-12 14:59:48 +01:00
parent 9513ebd340
commit 4a457fcb4c
2 changed files with 16 additions and 8 deletions

View File

@ -335,6 +335,16 @@ async def run():
'utilities': "(exchangeShortName = 'NYSE' OR exchangeShortName = 'NASDAQ' OR exchangeShortName = 'AMEX') AND (sector = 'Utilities')" 'utilities': "(exchangeShortName = 'NYSE' OR exchangeShortName = 'NASDAQ' OR exchangeShortName = 'AMEX') AND (sector = 'Utilities')"
} }
country_conditions = {
'de': "(exchangeShortName = 'NYSE' OR exchangeShortName = 'NASDAQ' or exchangeShortName = 'AMEX') AND country = 'DE'",
'ca': "(exchangeShortName = 'NYSE' OR exchangeShortName = 'NASDAQ' or exchangeShortName = 'AMEX') AND country = 'CA'",
'cn': "(exchangeShortName = 'NYSE' OR exchangeShortName = 'NASDAQ' or exchangeShortName = 'AMEX') AND country = 'CN'",
'in': "(exchangeShortName = 'NYSE' OR exchangeShortName = 'NASDAQ' or exchangeShortName = 'AMEX') AND country = 'IN'",
'il': "(exchangeShortName = 'NYSE' OR exchangeShortName = 'NASDAQ' or exchangeShortName = 'AMEX') AND country = 'IL'",
'gb': "(exchangeShortName = 'NYSE' OR exchangeShortName = 'NASDAQ' or exchangeShortName = 'AMEX') AND country = 'GB'",
'jp': "(exchangeShortName = 'NYSE' OR exchangeShortName = 'NASDAQ' or exchangeShortName = 'AMEX') AND country = 'JP'",
}
try: try:
con = sqlite3.connect('stocks.db') con = sqlite3.connect('stocks.db')
@ -349,6 +359,9 @@ async def run():
await get_all_reits_list(cursor) await get_all_reits_list(cursor)
for category, condition in country_conditions.items():
await process_category(cursor, category, condition, 'stocks-list')
await asyncio.sleep(1) # Small delay between categories
for category, condition in market_cap_conditions.items(): for category, condition in market_cap_conditions.items():
await process_category(cursor, category, condition, 'market-cap') await process_category(cursor, category, condition, 'market-cap')

View File

@ -1982,13 +1982,6 @@ async def filter_stock_list(data: FilterStockList, api_key: str = Security(get_a
'nyse': "exchangeShortName = 'NYSE'", 'nyse': "exchangeShortName = 'NYSE'",
'xetra': "exchangeShortName = 'XETRA'", 'xetra': "exchangeShortName = 'XETRA'",
'amex': "exchangeShortName = 'AMEX'", 'amex': "exchangeShortName = 'AMEX'",
'DE': "(exchangeShortName = 'NYSE' OR exchangeShortName = 'NASDAQ' or exchangeShortName = 'AMEX') AND country = 'DE'",
'CA': "(exchangeShortName = 'NYSE' OR exchangeShortName = 'NASDAQ' or exchangeShortName = 'AMEX') AND country = 'CA'",
'CN': "(exchangeShortName = 'NYSE' OR exchangeShortName = 'NASDAQ' or exchangeShortName = 'AMEX') AND country = 'CN'",
'IN': "(exchangeShortName = 'NYSE' OR exchangeShortName = 'NASDAQ' or exchangeShortName = 'AMEX') AND country = 'IN'",
'IL': "(exchangeShortName = 'NYSE' OR exchangeShortName = 'NASDAQ' or exchangeShortName = 'AMEX') AND country = 'IL'",
'GB': "(exchangeShortName = 'NYSE' OR exchangeShortName = 'NASDAQ' or exchangeShortName = 'AMEX') AND country = 'GB'",
'JP': "(exchangeShortName = 'NYSE' OR exchangeShortName = 'NASDAQ' or exchangeShortName = 'AMEX') AND country = 'JP'",
} }
# Execute the query with the relevant country # Execute the query with the relevant country
@ -4019,7 +4012,7 @@ async def get_statistics(data: TickerData, api_key: str = Security(get_api_key))
@app.post("/list-category") @app.post("/list-category")
async def get_statistics(data: FilterStockList, api_key: str = Security(get_api_key)): async def get_statistics(data: FilterStockList, api_key: str = Security(get_api_key)):
filter_list = data.filterList filter_list = data.filterList.lower()
cache_key = f"filter-list-{filter_list}" cache_key = f"filter-list-{filter_list}"
cached_result = redis_client.get(cache_key) cached_result = redis_client.get(cache_key)
if cached_result: if cached_result:
@ -4033,6 +4026,8 @@ async def get_statistics(data: FilterStockList, api_key: str = Security(get_api_
category_type = 'sector' category_type = 'sector'
elif filter_list == 'reits': elif filter_list == 'reits':
category_type = 'industry' category_type = 'industry'
elif filter_list in ['ca','cn','de','gb','il','in','jp']:
category_type = 'stocks-list'
else: else:
category_type = 'market-cap' category_type = 'market-cap'
try: try: