Commit Graph

72 Commits

Author SHA1 Message Date
42412406a7 fix demos, semplificata logica lista ollama 2025-10-06 11:03:13 +02:00
fbe26e09f4 fix docs 2025-10-06 10:46:53 +02:00
d3fab15371 WrapperHandler: semplificata la logica di chiamata delle funzioni sui wrapper 2025-10-05 22:04:20 +02:00
ef78f3b50c fix errors found by Copilot 2025-10-05 21:17:38 +02:00
f5816bb74f Rinominato 'quote_currency' in 'currency' e aggiornato il trattamento del timestamp in Price 2025-10-05 19:06:39 +02:00
ac356c3753 fix type per models 2025-10-05 16:30:48 +02:00
f7a0660d4c Corretto il valore predefinito della valuta in BinanceWrapper da "USDT" a "USD" 2025-10-05 12:35:05 +02:00
f0193b94bb Refactoring architetturale e spostamento classi base
- Eliminazione del file __init__.py obsoleto che importava ChatManager e Pipeline
- Spostamento della classe Pipeline in agents/pipeline.py
- Spostamento della classe ChatManager in utils/chat_manager.py
- Aggiornamento di __main__.py per importare da app.utils e app.agents, e modifica della logica per utilizzare Pipeline invece di chat per la selezione di provider e stile
- Creazione della cartella base con classi base comuni: markets.py (ProductInfo, Price, MarketWrapper), news.py (Article, NewsWrapper), social.py (SocialPost, SocialComment, SocialWrapper)
- Aggiornamento di tutti gli import nel progetto (markets/, news/, social/, utils/, tests/) per utilizzare la nuova struttura base/
2025-10-04 21:20:21 +02:00
6cd97b2864 Riorganizzati gli import 2025-10-04 20:07:33 +02:00
f8b41cd63a Aggiunti type hints finali 2025-10-04 19:46:17 +02:00
1b3e85894c fix type checks di notizie e social. 2025-10-04 19:34:18 +02:00
3a6702642b Rinominato BaseWrapper in MarketWrapper e fix type check markets 2025-10-04 19:11:47 +02:00
07ab380669 utils type checks 2025-10-04 18:29:39 +02:00
f530b33088 Aggiornate le istruzioni del coordinatore del team 2025-10-04 01:56:14 +02:00
42ec2e6eef Rimossi TODO e Aggiunto documentazione per metodi aggregated 2025-10-04 01:28:16 +02:00
cc3a56cb6d Aggiornata la posizione delle istruzioni 2025-10-04 01:23:12 +02:00
e5e38d0a6d Aggiunta cartella per i modelli, agenti e team 2025-10-04 00:46:03 +02:00
cc0cae52db Spostato main nel corretto file __main__ e aggiornato il README.md 2025-10-03 23:54:18 +02:00
8d1cae8706 Riorganizza e rinomina funzioni di estrazione in moduli di mercato e notizie; migliora la gestione delle importazioni 2025-10-03 19:40:14 +02:00
b85d74a662 Aggiorna gli agenti e il modello del team per utilizzare OLLAMA_QWEN_1B 2025-10-03 16:46:10 +02:00
trojanhorse47
85153c405b Tool (#15)
* Refactor market agent and toolkit to support batch price retrieval

* 1. Correzione del modello base del Team: inizializzato con qwen3:latest
2. Modifica dell'interfaccia e inserimento di un ChatManager per gestire interazione, salvataggio e caricamento della chat.

* * Fix degli import
+ Aggiunta cancellazione casella di input all'invio della richiesta dell'utente

* Riorganizzazione degli import per utilizzare il percorso corretto in tutti i moduli

* Remove unused imports from __init__.py

* Update __all__ in __init__.py to include MARKET_INSTRUCTIONS

---------

Co-authored-by: Berack96 <giacomobertolazzi7@gmail.com>
2025-10-03 11:42:11 +02:00
Giacomo Bertolazzi
d2fbc0ceea 12 fix docs (#13)
* fix dependencies uv.lock

* refactor test markers for clarity

* refactor: clean up imports and remove unused files

* refactor: remove unused agent files and clean up market API instructions

* refactor: enhance wrapper initialization with keyword arguments and clean up tests

* refactor: remove PublicBinanceAgent

* refactor: aggregator
- simplified MarketDataAggregator and related models to functions

* refactor: update README and .env.example to reflect the latest changes to the project

* refactor: simplify product info and price creation in YFinanceWrapper

* refactor: remove get_all_products method from market API wrappers and update documentation

* fix: environment variable assertions

* refactor: remove status attribute from ProductInfo and update related methods to use timestamp_ms

* feat: implement aggregate_history_prices function to calculate hourly price averages

* refactor: update docker-compose and app.py for improved environment variable handling and compatibility

* feat: add detailed market instructions and improve error handling in price aggregation methods

* feat: add aggregated news retrieval methods for top headlines and latest news

* refactor: improve error messages in WrapperHandler for better clarity

* fix: correct quote currency extraction in create_product_info and remove debug prints from tests
2025-10-02 01:40:59 +02:00
Simo
646efe27e6 Merge branch 'main' into 2-news-api 2025-10-01 16:22:08 +02:00
e284006a6d Pre-merge main conflicts 2025-10-01 16:15:09 +02:00
Simo
dc9dc98298 3 market api (#8)
* Creazione branch tool, refactor degli import e soppressione dei warning

* Update pytest configuration and dependencies in pyproject.toml

* Add news API integration and related configurations

- Update .env.example to include NEWS_API_KEY configuration
- Add newsapi-python dependency in pyproject.toml
- Implement NewsAPI class for fetching news articles
- Create Article model for structured news data
- Add tests for NewsAPI functionality in test_news_api.py
- Update pytest configuration to include news marker

* Add news API functionality and update tests for article retrieval

* ToDo:
1. Aggiungere un aggregator per i dati recuperati dai provider.
2. Lavorare effettivamente all'issue

Done:
1. creati test per i provider
2. creato market_providers_api_demo.py per mostrare i dati recuperati dalle api dei providers
3. aggiornato i provider
4. creato il provider binance sia pubblico che con chiave
5. creato error_handler.py per gestire decoratori e utilità: retry automatico, gestione timeout...

* Refactor news API integration to use NewsApiWrapper and GnewsWrapper; add tests for Gnews API functionality

* Add CryptoPanic API integration and related tests; update .env.example and test configurations

* Implement WrapperHandler for managing multiple news API wrappers; add tests for wrapper functionality

* Enhance WrapperHandler
- docstrings
- add try_call_all method
- update tests

* pre merge con phil

* Add DuckDuckGo and Google News wrappers; refactor CryptoPanic and NewsAPI

- Implemented DuckDuckGoWrapper for news retrieval using DuckDuckGo tools.
- Added GoogleNewsWrapper for accessing Google News RSS feed.
- Refactored CryptoPanicWrapper to unify get_top_headlines and get_latest_news methods.
- Updated NewsApiWrapper to simplify top headlines retrieval.
- Added tests for DuckDuckGo and Google News wrappers.
- Enhanced documentation for CryptoPanicWrapper and NewsApiWrapper.
- Created base module for social media integrations.

* - Refactor struttura progetto: divisione tra agent e toolkit

* Refactor try_call_all method to return a dictionary of results; update tests for success and partial failures

* Fix class and test method names for DuckDuckGoWrapper

* Add Reddit API wrapper and related tests; update environment configuration

* pre merge con giacomo

* Fix import statements

* Fixes
- separated tests
- fix tests
- fix bugs reintroduced my previous merge

* Refactor market API wrappers to streamline product and price retrieval methods

* Add BinanceWrapper to market API exports

* Finito ISSUE 3

* Final review
- rm PublicBinanceAgent & updated demo
- moved in the correct folder some tests
- fix binance bug

---------

Co-authored-by: trojanhorse47 <cosmomemory@hotmail.it>
Co-authored-by: Berack96 <giacomobertolazzi7@gmail.com>
Co-authored-by: Giacomo Bertolazzi <31776951+Berack96@users.noreply.github.com>
2025-10-01 15:51:25 +02:00
Simone Garau
42690acfbb feat(markets): add yfinance integration for stock and crypto data
- Add yfinance wrapper with support for stocks and cryptocurrencies
- Update aggregated models to recognize yfinance products
- Include yfinance in market APIs tool and demo script
- Add comprehensive tests for yfinance functionality
- Update dependencies to include yfinance and required packages
2025-10-01 15:46:46 +02:00
6ebd58bdb7 Fixes
- MarketAPIs to include BinanceWrapper
- update RedditWrapper & tests
2025-10-01 14:53:00 +02:00
Simone Garau
31057007fb Finito ISSUE 3 2025-10-01 13:01:51 +02:00
2aa97e264a Enhance error logging in WrapperHandler to provide concise traceback information 2025-10-01 12:49:43 +02:00
73dcbbe12b Refactor WrapperHandler
- validation checks for initialization logic
- fix SocialAPIsTool
- fix RedditWrapper
2025-10-01 11:05:44 +02:00
e4e7023c17 Refactor news API methods to use 'limit' parameter instead of 'total' for consistency across wrappers 2025-10-01 10:26:21 +02:00
99ebb420fa Refactor news and social instructions
- enhance logging in WrapperHandler
- add parameterized mock wrappers for testing
2025-09-30 23:10:53 +02:00
01e7bf58f1 Refactor news & social modules
- update NewsAPIsTool
- update SocialAPIsTool
- add tests for NewsAPIsTool
- added some missing docs
2025-09-30 22:13:12 +02:00
3bc24afcea Refactor NewsAPIsTool to aggregate multiple news API wrappers and enhance functionality 2025-09-30 21:09:24 +02:00
f6d7ff6499 Refactor market toolkit to remove unused methods and streamline API calls 2025-09-30 20:43:05 +02:00
e8bf835fb3 Add BinanceWrapper to market API exports 2025-09-30 17:37:36 +02:00
f7dec6fdb6 Refactor market API wrappers to streamline product and price retrieval methods 2025-09-30 17:30:14 +02:00
754d43771d Merge branch '2-news-api' into 3-market-api 2025-09-30 17:30:01 +02:00
a5ef982e12 Fixes
- separated tests
- fix tests
- fix bugs reintroduced my previous merge
2025-09-30 16:38:25 +02:00
3074b58ea5 Fix import statements 2025-09-30 15:58:52 +02:00
7c61b311aa Merge branch '2-news-api' into 3-market-api 2025-09-30 15:50:49 +02:00
Simone Garau
8304cf9ea8 pre merge con giacomo 2025-09-30 15:36:50 +02:00
43b2bddba5 Add Reddit API wrapper and related tests; update environment configuration 2025-09-30 15:36:37 +02:00
c1952526ad Fix class and test method names for DuckDuckGoWrapper 2025-09-30 12:54:19 +02:00
15182e23c2 Refactor try_call_all method to return a dictionary of results; update tests for success and partial failures 2025-09-30 12:41:45 +02:00
trojanhorse47
cce09b493e Merge remote-tracking branch 'origin/3-market-api' into tool
# Conflicts:
#	src/app.py
#	src/app/agents/market_agent.py
#	src/app/markets/__init__.py
#	src/app/markets/coinbase.py
#	src/app/markets/cryptocompare.py
#	src/app/pipeline.py
#	tests/agents/test_market.py
#	tests/agents/test_predictor.py
2025-09-30 12:37:46 +02:00
trojanhorse47
fcbb312d08 - Refactor struttura progetto: divisione tra agent e toolkit 2025-09-30 12:28:44 +02:00
dfe3b4ad90 Add DuckDuckGo and Google News wrappers; refactor CryptoPanic and NewsAPI
- Implemented DuckDuckGoWrapper for news retrieval using DuckDuckGo tools.
- Added GoogleNewsWrapper for accessing Google News RSS feed.
- Refactored CryptoPanicWrapper to unify get_top_headlines and get_latest_news methods.
- Updated NewsApiWrapper to simplify top headlines retrieval.
- Added tests for DuckDuckGo and Google News wrappers.
- Enhanced documentation for CryptoPanicWrapper and NewsApiWrapper.
- Created base module for social media integrations.
2025-09-30 12:24:43 +02:00
Simone Garau
fb38aef790 pre merge con phil 2025-09-30 12:11:10 +02:00
40fb400a9c Enhance WrapperHandler
- docstrings
- add try_call_all method
- update tests
2025-09-30 11:46:52 +02:00