Ceci est une preuve de concept pour un fonds spéculatif piloté par l'IA. L'objectif de ce projet est d'explorer l'utilisation de l'IA pour prendre des décisions de trading. Ce projet est uniquement à but éducatif et n'est pas destiné à du trading réel ou à des investissements.
Ce système utilise plusieurs agents travaillant ensemble :
Note : le système simule des décisions de trading, il ne trade pas réellement.
Ce projet est uniquement à but éducatif et de recherche.
En utilisant ce logiciel, vous acceptez de l'utiliser uniquement à des fins d'apprentissage.
Clonez le dépôt :
git clone https://github.com/virattt/ai-hedge-fund.git
cd ai-hedge-fund
curl -sSL https://install.python-poetry.org | python3 -
poetry install
# Create .env file for your API keys
cp .env.example .env
# For running LLMs hosted by openai (gpt-4o, gpt-4o-mini, etc.)
# Get your OpenAI API key from https://platform.openai.com/
OPENAI_API_KEY=your-openai-api-key
# For running LLMs hosted by groq (deepseek, llama3, etc.)
# Get your Groq API key from https://groq.com/
GROQ_API_KEY=your-groq-api-key
# For getting financial data to power the hedge fund
# Get your Financial Datasets API key from https://financialdatasets.ai/
FINANCIAL_DATASETS_API_KEY=your-financial-datasets-api-key
Assurez-vous d'avoir Docker installé sur votre système. Sinon, vous pouvez le télécharger depuis le site officiel de Docker.
Clonez le dépôt :
git clone https://github.com/virattt/ai-hedge-fund.git
cd ai-hedge-fund
# Create .env file for your API keys
cp .env.example .env
Modifiez le fichier .env pour ajouter vos clés API comme décrit ci-dessus.
Accédez au répertoire docker :
cd docker
# On Linux/Mac:
./run.sh build
# On Windows:
run.bat build
Important : Vous devez définir OPENAI_API_KEY
, GROQ_API_KEY
, ANTHROPIC_API_KEY
, ou DEEPSEEK_API_KEY
pour que le fonds spéculatif fonctionne. Si vous souhaitez utiliser des LLM de tous les fournisseurs, vous devrez définir toutes les clés API.
Les données financières pour AAPL, GOOGL, MSFT, NVDA et TSLA sont gratuites et ne nécessitent pas de clé API.
Pour tout autre ticker, vous devrez définir FINANCIAL_DATASETS_API_KEY
dans le fichier .env.
poetry run python src/main.py --ticker AAPL,MSFT,NVDA
Note : Toutes les commandes Docker doivent être exécutées depuis le répertoire docker/
.
# Navigate to the docker directory first
cd docker
# On Linux/Mac:
./run.sh --ticker AAPL,MSFT,NVDA main
# On Windows:
run.bat --ticker AAPL,MSFT,NVDA main
Exemple de sortie :
Vous pouvez également spécifier un drapeau --ollama
pour exécuter le fonds spéculatif avec des LLM locaux.
# With Poetry:
poetry run python src/main.py --ticker AAPL,MSFT,NVDA --ollama
# With Docker (from docker/ directory):
# On Linux/Mac:
./run.sh --ticker AAPL,MSFT,NVDA --ollama main
# On Windows:
run.bat --ticker AAPL,MSFT,NVDA --ollama main
Vous pouvez aussi spécifier un drapeau --show-reasoning
pour afficher le raisonnement de chaque agent dans la console.
# With Poetry:
poetry run python src/main.py --ticker AAPL,MSFT,NVDA --show-reasoning
# With Docker (from docker/ directory):
# On Linux/Mac:
./run.sh --ticker AAPL,MSFT,NVDA --show-reasoning main
# On Windows:
run.bat --ticker AAPL,MSFT,NVDA --show-reasoning main
Vous pouvez optionnellement spécifier les dates de début et de fin pour prendre des décisions sur une période spécifique.
# With Poetry:
poetry run python src/main.py --ticker AAPL,MSFT,NVDA --start-date 2024-01-01 --end-date 2024-03-01
# With Docker (from docker/ directory):
# On Linux/Mac:
./run.sh --ticker AAPL,MSFT,NVDA --start-date 2024-01-01 --end-date 2024-03-01 main
# On Windows:
run.bat --ticker AAPL,MSFT,NVDA --start-date 2024-01-01 --end-date 2024-03-01 main
poetry run python src/backtester.py --ticker AAPL,MSFT,NVDA
Note : Toutes les commandes Docker doivent être exécutées depuis le répertoire docker/
.
# Navigate to the docker directory first
cd docker
# On Linux/Mac:
./run.sh --ticker AAPL,MSFT,NVDA backtest
# On Windows:
run.bat --ticker AAPL,MSFT,NVDA backtest
Exemple de sortie :
Vous pouvez optionnellement spécifier les dates de début et de fin pour effectuer un backtest sur une période spécifique.
# With Poetry:
poetry run python src/backtester.py --ticker AAPL,MSFT,NVDA --start-date 2024-01-01 --end-date 2024-03-01
# With Docker (from docker/ directory):
# On Linux/Mac:
./run.sh --ticker AAPL,MSFT,NVDA --start-date 2024-01-01 --end-date 2024-03-01 backtest
# On Windows:
run.bat --ticker AAPL,MSFT,NVDA --start-date 2024-01-01 --end-date 2024-03-01 backtest
Vous pouvez aussi spécifier un drapeau --ollama
pour exécuter le backtesteur avec des LLM locaux.
# With Poetry:
poetry run python src/backtester.py --ticker AAPL,MSFT,NVDA --ollama
# With Docker (from docker/ directory):
# On Linux/Mac:
./run.sh --ticker AAPL,MSFT,NVDA --ollama backtest
# On Windows:
run.bat --ticker AAPL,MSFT,NVDA --ollama backtest
Important : Merci de garder vos pull requests petites et ciblées. Cela facilitera leur revue et fusion.
Si vous avez une demande de fonctionnalité, veuillez ouvrir une issue et assurez-vous qu'elle est taguée avec enhancement
.
Ce projet est sous licence MIT - voir le fichier LICENSE pour plus de détails.