Это концептуальное доказательство работы хедж-фонда на основе искусственного интеллекта. Цель проекта — исследовать использование ИИ для принятия торговых решений. Проект предназначен исключительно для образовательных целей и не предназначен для реальной торговли или инвестирования.
В системе задействовано несколько агентов, работающих совместно:
Примечание: система имитирует торговые решения, но не совершает реальные сделки.
Этот проект предназначен только для образовательных и исследовательских целей.
Используя это программное обеспечение, вы соглашаетесь применять его исключительно в учебных целях.
Клонируйте репозиторий:
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
Убедитесь, что Docker установлен в вашей системе. Если нет, скачайте его с официального сайта Docker.
Клонируйте репозиторий:
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
Отредактируйте файл .env, добавив API-ключи, как описано выше.
Перейдите в директорию docker:
cd docker
# On Linux/Mac:
./run.sh build
# On Windows:
run.bat build
Важно: Для работы хедж-фонда необходимо указать OPENAI_API_KEY
, GROQ_API_KEY
, ANTHROPIC_API_KEY
или DEEPSEEK_API_KEY
. Если вы хотите использовать LLM от всех провайдеров, потребуется указать все API-ключи.
Финансовые данные для AAPL, GOOGL, MSFT, NVDA и TSLA предоставляются бесплатно и не требуют API-ключа.
Для любых других тикеров необходимо указать FINANCIAL_DATASETS_API_KEY
в файле .env.
poetry run python src/main.py --ticker AAPL,MSFT,NVDA
Примечание: Все команды Docker должны выполняться из директории 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
Пример вывода:
Вы также можете использовать флаг --ollama
для запуска AI хедж-фонда с локальными LLM.
# 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
Флаг --show-reasoning
позволяет выводить рассуждения каждого агента в консоль.
# 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
Опционально можно указать даты начала и окончания для принятия решений за определенный период.
# 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
Примечание: Все команды Docker должны выполняться из директории 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
Пример вывода:
Опционально можно указать даты начала и окончания для тестирования за определенный период.
# 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
Флаг --ollama
позволяет запустить бэктестер с локальными LLM.
# 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
Важно: Пожалуйста, делайте ваши Pull Request небольшими и сфокусированными. Это упростит их проверку и слияние.
Если у вас есть запрос на новую функцию, откройте issue с пометкой enhancement
.
Этот проект лицензирован по лицензии MIT — подробности см. в файле LICENSE.