mirror of
https://github.com/ZhuLinsen/daily_stock_analysis
synced 2026-09-20 10:53:33 +08:00
* fix: enforce strict news freshness windows (#697) * fix: normalize timezone-aware publish date parsing (#697) * fix: align analyzer news window with runtime pipeline config (#697)
464 lines
20 KiB
Plaintext
464 lines
20 KiB
Plaintext
# ===================================
|
||
# A股自选股智能分析系统 - 环境变量配置模板
|
||
# 复制此文件为 .env 并填入真实配置
|
||
# ===================================
|
||
|
||
# 自选股列表(逗号分隔,支持沪深两市代码)
|
||
# 沪市:600xxx, 601xxx, 603xxx
|
||
# 深市:000xxx, 002xxx, 300xxx
|
||
STOCK_LIST=600519,300750,002594
|
||
|
||
# 数据源配置
|
||
# Tushare Pro Token(可选,从 https://tushare.pro/weborder/#/login?reg=834638 获取)
|
||
TUSHARE_TOKEN=
|
||
|
||
# ===================================
|
||
# 定时任务配置(本地/Docker运行)
|
||
# ===================================
|
||
# SCHEDULE_ENABLED=true
|
||
# SCHEDULE_TIME=18:00
|
||
# 启动时是否立即运行一次(默认 true)
|
||
# SCHEDULE_RUN_IMMEDIATELY=false
|
||
# 交易日检查:默认 true,非交易日跳过执行;设为 false 或使用 --force-run 可强制执行(Issue #373)
|
||
# TRADING_DAY_CHECK_ENABLED=true
|
||
|
||
# ===================================
|
||
# AI 模型配置
|
||
# ===================================
|
||
# 完整说明:docs/LLM_CONFIG_GUIDE.md
|
||
#
|
||
# 【快速上手】填一个 API Key 即可运行,系统自动识别模型。
|
||
# Gemini(免费额度)→ 填 GEMINI_API_KEY
|
||
# DeepSeek(性价比高)→ 填 DEEPSEEK_API_KEY
|
||
# AIHubmix(聚合平台)→ 填 AIHUBMIX_KEY
|
||
#
|
||
# 【进阶】需要多模型 / 多平台 fallback → 配置下方「多渠道」或在 Web 设置页可视化管理。
|
||
# ===================================
|
||
|
||
# --- API Key(填一个即可)---
|
||
|
||
# Gemini(https://aistudio.google.com)
|
||
GEMINI_API_KEY=
|
||
# 多 Key 负载均衡:GEMINI_API_KEYS=key1,key2,key3
|
||
|
||
# DeepSeek(https://platform.deepseek.com)
|
||
# DEEPSEEK_API_KEY=
|
||
|
||
# AIHubmix 聚合(https://aihubmix.com/?aff=CfMq)
|
||
# 一个 Key 用 GPT/Claude/Gemini/GLM/Qwen 等模型,无需科学上网
|
||
# AIHUBMIX_KEY=
|
||
|
||
# Anthropic Claude(https://console.anthropic.com)
|
||
# ANTHROPIC_API_KEY=
|
||
|
||
# OpenAI / 兼容 API
|
||
# OPENAI_API_KEY=
|
||
# OPENAI_BASE_URL= # 第三方 API 地址(中转站/代理),留空用官方
|
||
|
||
# 采样温度(0.0-2.0,默认 0.7;0 确定性最高,2 随机性最高)
|
||
# LLM_TEMPERATURE=0.7
|
||
|
||
# --- 多渠道配置(可选,也可在 Web 设置页配置)---
|
||
# 每个渠道独立配置 base_url / api_key / models,支持多 Key 轮询与自动 fallback。
|
||
#
|
||
# 示例:DeepSeek + Gemini 双渠道
|
||
# LLM_CHANNELS=deepseek,gemini
|
||
# LLM_DEEPSEEK_API_KEY=sk-xxx
|
||
# LLM_DEEPSEEK_BASE_URL=https://api.deepseek.com/v1
|
||
# LLM_DEEPSEEK_MODELS=deepseek-chat
|
||
# LLM_GEMINI_API_KEYS=key1,key2
|
||
# LLM_GEMINI_MODELS=gemini-2.5-flash
|
||
#
|
||
# 示例:自定义 API 端点(第三方代理 / 聚合平台 / 转发站)
|
||
# LLM_CHANNELS=my_proxy
|
||
# LLM_MY_PROXY_BASE_URL=https://your-proxy.example.com/v1
|
||
# LLM_MY_PROXY_API_KEY=sk-xxx
|
||
# LLM_MY_PROXY_MODELS=gpt-4o-mini,claude-3-5-sonnet
|
||
# LLM_MY_PROXY_PROTOCOL=openai
|
||
|
||
# 高级:YAML 配置(可选,标准 LiteLLM Router 格式,参考 litellm_config.example.yaml)
|
||
# LITELLM_CONFIG=./litellm_config.yaml
|
||
|
||
# ===================================
|
||
# 搜索引擎配置(用于获取股票新闻)
|
||
# ===================================
|
||
# Bocha API Keys(中文搜索优化,支持AI摘要,支持多个,逗号分隔)
|
||
# 获取: https://open.bocha.cn/
|
||
# BOCHA_API_KEYS=your_bocha_key_here
|
||
# MiniMax API Key(Coding Plan Web Search,支持多个,逗号分隔)
|
||
# 获取: https://platform.minimaxi.com/
|
||
# MINIMAX_API_KEYS=your_minimax_key_here
|
||
# Tavily API Keys(支持多个,逗号分隔)
|
||
TAVILY_API_KEYS=
|
||
# SerpAPI Keys(支持多个,逗号分隔)
|
||
SERPAPI_API_KEYS=
|
||
# Brave Search API Keys(支持多个,逗号分隔)
|
||
# 获取: https://brave.com/search/api/
|
||
BRAVE_API_KEYS=
|
||
# SearXNG 实例地址(逗号分隔,私有部署无配额,需在 settings.yml 启用 format: json)
|
||
SEARXNG_BASE_URLS=
|
||
|
||
# ===================================
|
||
# Social Sentiment Intelligence (US stocks only)
|
||
# ===================================
|
||
# Reddit / X (Twitter) / Polymarket sentiment data from api.adanos.org
|
||
# Only activates for US stock tickers (AAPL, TSLA, etc.), ignored for A-shares/HK stocks
|
||
# Free tier: 250 requests/month | Register: https://api.adanos.org
|
||
# SOCIAL_SENTIMENT_API_KEY=sk_live_your_key_here
|
||
# SOCIAL_SENTIMENT_API_URL=https://api.adanos.org
|
||
|
||
# ===================================
|
||
# 新闻时效与分析筛选配置
|
||
# ===================================
|
||
# 新闻策略窗口档位:ultra_short(1天) / short(3天) / medium(7天) / long(30天)
|
||
# 实际窗口 = min(策略窗口, NEWS_MAX_AGE_DAYS)
|
||
# NEWS_STRATEGY_PROFILE=short
|
||
# 新闻最大时效(天),搜索时限制结果在近期内,避免使用过时信息
|
||
# NEWS_MAX_AGE_DAYS=3
|
||
# 乖离率阈值(%),偏离 MA5 超过此值提示不追高;强势趋势股自动放宽到 1.5 倍
|
||
# BIAS_THRESHOLD=5.0
|
||
|
||
# ===================================
|
||
# Agent 策略对话配置(Web 对话页)
|
||
# ===================================
|
||
# 启用 Agent 对话(默认 false)
|
||
# AGENT_MODE=true
|
||
# Agent 最多推理步数
|
||
# AGENT_MAX_STEPS=10
|
||
# 默认启用策略(逗号分隔),不配置时使用以下内置默认值
|
||
#
|
||
# 内置策略列表(可任意组合):
|
||
# bull_trend — 多头趋势(MA5>MA10>MA20 排列 + 低乖离率)
|
||
# ma_golden_cross — 均线金叉(MA5 上穿 MA10/MA20)
|
||
# volume_breakout — 放量突破(价格突破近期高点 + 成交量放大)
|
||
# shrink_pullback — 缩量回踩(回踩均线 + 量能萎缩,低吸点)
|
||
# bottom_volume — 底部放量(地量见地价,底部反转信号)
|
||
# dragon_head — 龙头策略(强势龙头,趋势延续追涨)
|
||
# one_yang_three_yin — 一阳夹三阴(主力洗盘后强势反包形态)
|
||
# box_oscillation — 箱体震荡(区间高抛低吸)
|
||
# chan_theory — 缠论(缠中说禅理论:笔/线段/中枢)
|
||
# wave_theory — 波浪理论(艾略特波浪计数)
|
||
# emotion_cycle — 情绪周期(市场情绪高低点轮动)
|
||
#
|
||
# 推荐:趋势 + 金叉 + 缩量回踩(兼顾多种市场形态)
|
||
# AGENT_SKILLS=bull_trend,ma_golden_cross,shrink_pullback
|
||
#
|
||
# 完整启用所有内置策略(两种写法等效):
|
||
# AGENT_SKILLS=all
|
||
# AGENT_SKILLS=bull_trend,ma_golden_cross,volume_breakout,shrink_pullback,bottom_volume,dragon_head,one_yang_three_yin,box_oscillation,chan_theory,wave_theory,emotion_cycle
|
||
#
|
||
AGENT_SKILLS=bull_trend,ma_golden_cross,volume_breakout,shrink_pullback
|
||
# 自定义策略目录(可选,放置自定义 YAML 策略文件)
|
||
# AGENT_STRATEGY_DIR=./strategies
|
||
|
||
# Agent 架构模式(默认 single;multi 为多 Agent 编排模式)
|
||
# AGENT_ARCH=single
|
||
|
||
# Multi-Agent 编排模式(仅 AGENT_ARCH=multi 时有效)
|
||
# quick: 技术分析→决策(最快,约 2 次 LLM 调用)
|
||
# standard: 技术→情报→决策(默认)
|
||
# full: 技术→情报→风控→决策
|
||
# strategy: 技术→情报→风控→策略评估→决策
|
||
# AGENT_ORCHESTRATOR_MODE=standard
|
||
|
||
# Multi-Agent 整体超时预算(秒,0 表示关闭;默认 600)
|
||
# AGENT_ORCHESTRATOR_TIMEOUT_S=600
|
||
|
||
# 风控 Agent 是否可以否决买入信号(默认开启)
|
||
# AGENT_RISK_OVERRIDE=true
|
||
|
||
# 记忆与校准系统(追踪历史准确率,自动调节置信度)
|
||
# AGENT_MEMORY_ENABLED=false
|
||
|
||
# 自动按回测表现加权策略意见
|
||
# AGENT_STRATEGY_AUTOWEIGHT=true
|
||
|
||
# 策略路由模式(auto=根据市场状态自动选择 / manual=使用 AGENT_SKILLS 列表)
|
||
# AGENT_STRATEGY_ROUTING=auto
|
||
|
||
# ===================================
|
||
# 通知渠道配置(可同时配置多个,全部推送)
|
||
# ===================================
|
||
#
|
||
# 【方式一】企业微信机器人
|
||
# 在企业微信群 -> 设置 -> 群机器人 -> 添加 -> 复制 Webhook 地址
|
||
#
|
||
# WECHAT_WEBHOOK_URL=https://qyapi.weixin.qq.com/cgi-bin/webhook/send?key=your_key_here
|
||
#
|
||
# 【方式二】飞书机器人
|
||
# 在飞书群 -> 设置 -> 群机器人 -> 添加机器人 -> 自定义机器人 -> 复制 Webhook 地址
|
||
#
|
||
# FEISHU_WEBHOOK_URL=https://open.feishu.cn/open-apis/bot/v2/hook/your_key_here
|
||
#
|
||
# 【方式三】Telegram 机器人(需同时配置两项)
|
||
# 1. 在 Telegram 找 @BotFather -> /newbot -> 获取 Bot Token
|
||
# 2. 获取 Chat ID:发消息给 @userinfobot 或访问 https://api.telegram.org/bot<token>/getUpdates
|
||
#
|
||
# TELEGRAM_BOT_TOKEN=123456789:ABCdefGHIjklMNOpqrsTUVwxyz
|
||
# TELEGRAM_CHAT_ID=123456789
|
||
# TELEGRAM_MESSAGE_THREAD_ID=2780
|
||
#
|
||
# 【方式四】邮件推送(只需 2 项配置,SMTP 自动识别)
|
||
# 支持 QQ邮箱、163邮箱、Gmail、Outlook 等主流邮箱
|
||
# 1. 获取授权码(以QQ邮箱为例):设置 -> 账户 -> POP3/SMTP服务 -> 开启 -> 获取授权码
|
||
# 2. 填写下面两项即可:
|
||
#
|
||
# EMAIL_SENDER=
|
||
# EMAIL_PASSWORD=
|
||
# EMAIL_RECEIVERS=receiver@example.com # 可选,留空则发给自己
|
||
#
|
||
# 【方式四扩展】股票分组发往不同邮箱(Issue #268,可选)
|
||
# 配置后,不同股票组的报告发送到对应邮箱;大盘复盘发往所有配置邮箱
|
||
# STOCK_GROUP_1=600519,300750
|
||
# EMAIL_GROUP_1=user1@example.com
|
||
# STOCK_GROUP_2=002594,AAPL
|
||
# EMAIL_GROUP_2=user2@example.com
|
||
#
|
||
# 【方式五】自定义 Webhook(支持多个,逗号分隔)
|
||
# 适用于:钉钉、Discord、Slack、Bark、自建服务等任意支持 POST JSON 的 Webhook
|
||
# 系统会自动识别常见服务并使用对应格式
|
||
#
|
||
# CUSTOM_WEBHOOK_URLS=https://oapi.dingtalk.com/robot/send?access_token=xxx,https://hooks.slack.com/services/xxx
|
||
# CUSTOM_WEBHOOK_BEARER_TOKEN= # 可选,用于需要认证的 Webhook (Header Authorization: Bearer <token>)
|
||
# WEBHOOK_VERIFY_SSL=true # 默认校验。设为 false 可支持自签名证书。警告:禁用后存在 MITM 劫持风险,仅限可信内网
|
||
#
|
||
# 【方式六】Pushover 配置
|
||
# 注册Pushover账号,并创建应用Token https://pushover.net/apps/build
|
||
# PUSHOVER_USER_KEY=
|
||
# PUSHOVER_API_TOKEN=
|
||
#
|
||
# 【方式七】PushPlus 配置(国内推送服务,推荐)
|
||
# 注册PushPlus账号并获取Token https://www.pushplus.plus
|
||
# PUSHPLUS_TOKEN=
|
||
# 群组推送:填写群组编码后,消息推送给群组所有订阅用户(一对多)
|
||
# PUSHPLUS_TOPIC=
|
||
#
|
||
# 【方式八】Discord 配置
|
||
# 支持两种方式:Webhook(推荐,配置简单)和 Bot API(权限高)
|
||
#
|
||
# 方式1:Discord Webhook(推荐,无需 Bot 账号)
|
||
# 在 Discord 频道设置 -> 集成 -> Webhook -> 新建 Webhook -> 复制 URL
|
||
# DISCORD_WEBHOOK_URL=https://discord.com/api/webhooks/your_webhook_id/your_webhook_token
|
||
#
|
||
# 方式2:Discord Bot API(需要 Bot 账号和频道 ID)
|
||
# 1. 创建 Bot:https://discord.com/developers/applications -> 新建应用 -> Bot -> 创建 Bot
|
||
# 2. 获取 Bot Token:Bot 页面 -> 重置 Token
|
||
# 3. 获取频道 ID:Discord 开启开发者模式 -> 右键频道 -> 复制 ID
|
||
# DISCORD_BOT_TOKEN=
|
||
# DISCORD_MAIN_CHANNEL_ID=
|
||
# DISCORD_CHANNEL_ID= # 兼容旧变量名,推荐改用 DISCORD_MAIN_CHANNEL_ID
|
||
#
|
||
# 【方式九】Server酱3 配置(国内推送服务,支持微信推送)
|
||
# 注册Server酱3账号并获取SendKey https://sc3.ft07.com/
|
||
# SERVERCHAN3_SENDKEY=
|
||
#
|
||
# 【高级配置】消息长度限制(字节)
|
||
# 超过限制会自动分批发送,一般无需修改
|
||
# FEISHU_MAX_BYTES=20000 # 飞书限制约 20KB,默认 20000 字节
|
||
# WECHAT_MAX_BYTES=4000 # 企业微信限制 4096 字节,默认 4000 字节
|
||
#
|
||
# 【Markdown 转图片】(Issue #455)
|
||
# 对不支持 Markdown 的渠道,将报告转为图片发送,提升可读性
|
||
# 单股推送 + 图片:需同时配置 MARKDOWN_TO_IMAGE_CHANNELS 且安装转图工具
|
||
# MARKDOWN_TO_IMAGE_CHANNELS=telegram,wechat,custom,email # 逗号分隔
|
||
# MARKDOWN_TO_IMAGE_MAX_CHARS=15000 # 超过此长度不转换,避免超大图片
|
||
# MD2IMG_ENGINE=wkhtmltoimage # wkhtmltoimage(默认) | markdown-to-file(emoji 更好,需 npm i -g markdown-to-file)
|
||
# 转图工具:wkhtmltopdf (apt install wkhtmltopdf / brew install wkhtmltopdf),或 markdown-to-file
|
||
#
|
||
# 【实时行情预取】(Issue #455)
|
||
# PREFETCH_REALTIME_QUOTES=true # 设为 false 可禁用,避免 efinance/akshare_em 全市场拉取;tushare 为单股接口,预取仅拉首股
|
||
|
||
# ===================================
|
||
# 单股推送配置(可选)
|
||
# ===================================
|
||
# 单股推送模式:每分析完一只股票立即推送,而不是汇总后推送
|
||
# SINGLE_STOCK_NOTIFY=false
|
||
#
|
||
# 报告类型:simple(精简)、full(完整)、brief(3-5句概括)
|
||
# Docker环境下如果推送内容不完整,可以设置为 full
|
||
# REPORT_TYPE=simple
|
||
# 仅分析结果摘要:设为 true 时只推送汇总,不含个股详情
|
||
# REPORT_SUMMARY_ONLY=false
|
||
#
|
||
# Report Engine P0 (Jinja2 / 完整性校验 / 历史对比)
|
||
# REPORT_TEMPLATES_DIR=templates
|
||
# REPORT_RENDERER_ENABLED=false
|
||
# REPORT_INTEGRITY_ENABLED=true
|
||
# REPORT_INTEGRITY_RETRY=1
|
||
# REPORT_HISTORY_COMPARE_N=0
|
||
|
||
# 个股分析与大盘复盘合并推送(默认 false),减少邮件数量、降低垃圾邮件风险
|
||
# MERGE_EMAIL_NOTIFICATION=false
|
||
|
||
# ===================================
|
||
# 分析间隔配置(可选)
|
||
# ===================================
|
||
# 个股分析和大盘分析之间的延迟时间(秒)
|
||
# 用于避免触发 Gemini 等 AI API 的限流
|
||
# ANALYSIS_DELAY=0
|
||
|
||
# 应用 AppKey(与 Webhook 模式共用)
|
||
DINGTALK_APP_KEY=xxxx
|
||
# 应用 AppSecret(与 Webhook 模式共用)
|
||
DINGTALK_APP_SECRET=xxxx
|
||
# 启用 Stream 模式
|
||
DINGTALK_STREAM_ENABLED=false
|
||
|
||
# 飞书应用机器人配置
|
||
FEISHU_APP_ID=xxxx
|
||
FEISHU_APP_SECRET=xxxx
|
||
# 启用长连接模式
|
||
FEISHU_STREAM_ENABLED=false
|
||
|
||
# 数据库路径
|
||
DATABASE_PATH=./data/stock_analysis.db
|
||
|
||
# ===================================
|
||
# 回测配置(可选)
|
||
# ===================================
|
||
# 是否启用回测(true/false)
|
||
BACKTEST_ENABLED=true
|
||
# 回测评估窗口(交易日数)
|
||
BACKTEST_EVAL_WINDOW_DAYS=10
|
||
# 仅回测 N 天前的分析记录(避免当天/最近数据不完整)
|
||
BACKTEST_MIN_AGE_DAYS=14
|
||
# 回测引擎版本(当回测逻辑升级时用于区分结果)
|
||
BACKTEST_ENGINE_VERSION=v1
|
||
# 中性区间阈值(%),例如 2 表示 -2%~+2% 视为震荡
|
||
BACKTEST_NEUTRAL_BAND_PCT=2.0
|
||
|
||
# === 定时任务配置 ===
|
||
# 是否启用定时任务(true/false)
|
||
SCHEDULE_ENABLED=false
|
||
# 每日执行时间(HH:MM 格式,24小时制)
|
||
SCHEDULE_TIME=18:00
|
||
# 启动程序时是否立即执行一次分析(true/false)
|
||
RUN_IMMEDIATELY=true
|
||
# 是否启用大盘复盘(true/false)
|
||
MARKET_REVIEW_ENABLED=true
|
||
# 大盘复盘市场区域:cn(A股)、us(美股)、both(两者),us 适合仅关注美股的用户
|
||
# MARKET_REVIEW_REGION=cn
|
||
|
||
# ===================================
|
||
# 代理配置(可选)
|
||
# ===================================
|
||
# 是否启用代理(true/false,默认 false)
|
||
# 仅在本地开发环境生效,GitHub Actions 环境自动跳过
|
||
USE_PROXY=false
|
||
# 代理服务器地址(默认 127.0.0.1)
|
||
PROXY_HOST=127.0.0.1
|
||
# 代理服务器端口(默认 10809)
|
||
PROXY_PORT=10809
|
||
|
||
# 系统配置
|
||
# 日志目录
|
||
LOG_DIR=./logs
|
||
# 日志级别(DEBUG/INFO/WARNING/ERROR)
|
||
LOG_LEVEL=INFO
|
||
# 最大并发线程数(建议保持低并发防封禁)
|
||
MAX_WORKERS=3
|
||
# 是否启用调试日志
|
||
DEBUG=false
|
||
|
||
# ===================================
|
||
# WebUI 配置(可选)
|
||
# ===================================
|
||
# 是否默认启动 WebUI(true/false,默认 false)
|
||
WEBUI_ENABLED=false
|
||
# WebUI 监听地址(默认 127.0.0.1;Docker/云服务器需设为 0.0.0.0 才能外网访问,详见 docs/deploy-webui-cloud.md)
|
||
WEBUI_HOST=127.0.0.1
|
||
# WebUI 监听端口(默认 8000)
|
||
WEBUI_PORT=8000
|
||
# 启动 Web 服务前是否自动构建前端(npm install && npm run build,默认 true)
|
||
WEBUI_AUTO_BUILD=true
|
||
# 反向代理下信任 X-Forwarded-For 获取真实 IP(Nginx/Cloudflare 前置时设为 true,直连公网时保持 false 防伪造)
|
||
# TRUST_X_FORWARDED_FOR=false
|
||
|
||
# ===================================
|
||
# Web 登录认证(可选)
|
||
# ===================================
|
||
# 设为 true 启用密码保护;首次访问时在网页设置初始密码,可在「系统设置 > 修改密码」中修改
|
||
# 忘记密码可在服务器执行: python -m src.auth reset_password
|
||
ADMIN_AUTH_ENABLED=false
|
||
# ADMIN_SESSION_MAX_AGE_HOURS=24 # Session 有效期(小时)
|
||
|
||
# ===========================================
|
||
# 图片识别股票代码(设置页「从图片添加」)
|
||
# ===========================================
|
||
# 单次请求超时 60 秒;图片最大 5MB
|
||
# 需配置 GEMINI_API_KEY、ANTHROPIC_API_KEY 或 OPENAI_API_KEY 中至少一个(Vision 能力模型)
|
||
|
||
# ===========================================
|
||
# Data Fetcher Priority Configuration
|
||
# ===========================================
|
||
# Lower number = higher priority (tried first)
|
||
# Default priorities: efinance(0) > akshare(1) > tushare/pytdx(2) > baostock(3) > yfinance(4)
|
||
# For US stocks, set YFINANCE_PRIORITY=0 to use Yahoo Finance first
|
||
|
||
# EFINANCE_PRIORITY=0 # EastMoney (China) - default: 0
|
||
# EFINANCE_CALL_TIMEOUT=30 # Timeout (seconds) for efinance API calls; prevents indefinite hangs
|
||
# # when eastmoney hosts are unreachable. Default: 30
|
||
# AKSHARE_PRIORITY=1 # AkShare (China) - default: 1
|
||
# TUSHARE_PRIORITY=2 # Tushare Pro (China) - default: 2
|
||
# PYTDX_PRIORITY=2 # Tongdaxin (China) - default: 2
|
||
#
|
||
# Pytdx custom server (for intranet/deploy): use custom host instead of built-in public servers
|
||
# PYTDX_HOST=192.168.1.100
|
||
# PYTDX_PORT=7709
|
||
# Or multiple servers: PYTDX_SERVERS=ip1:port1,ip2:port2
|
||
# BAOSTOCK_PRIORITY=3 # Baostock (China) - default: 3
|
||
# YFINANCE_PRIORITY=4 # Yahoo Finance (Global) - default: 4
|
||
|
||
# Example: Prioritize Yahoo Finance for US stocks
|
||
# YFINANCE_PRIORITY=0
|
||
# EFINANCE_PRIORITY=99
|
||
|
||
# ===========================================
|
||
# 实时行情数据源优先级配置
|
||
# ===========================================
|
||
# 用于获取量比、换手率、市盈率等实时数据
|
||
# 可选数据源(逗号分隔,按顺序尝试):
|
||
# - tencent: 腾讯财经,有量比/换手率/PE/PB,单股查询稳定(推荐首选)
|
||
# - akshare_sina: 新浪财经,基本行情,无量比,但非常稳定
|
||
# - efinance: 东财(efinance库),有量比,全量拉取易被封
|
||
# - akshare_em: 东财(akshare库),数据最全,全量拉取易被封
|
||
# - tushare: Tushare Pro,需要2000积分,数据全面(付费用户推荐)
|
||
#
|
||
# 默认优先级:tencent > akshare_sina > efinance > akshare_em
|
||
# 如果有 Tushare Pro 高积分账号,可将 tushare 放在首位:
|
||
# REALTIME_SOURCE_PRIORITY=tushare,tencent,akshare_sina,efinance,akshare_em
|
||
# REALTIME_SOURCE_PRIORITY=tencent,akshare_sina,efinance,akshare_em
|
||
|
||
# 是否启用实时行情(关闭后使用历史收盘价分析)
|
||
# ENABLE_REALTIME_QUOTE=true
|
||
|
||
# 盘中实时技术面:启用时用实时价计算 MA/多头排列(Issue #234);关闭则用昨日收盘
|
||
# ENABLE_REALTIME_TECHNICAL_INDICATORS=true
|
||
|
||
# 是否启用筹码分布(该接口不稳定,云端部署建议关闭)
|
||
# ENABLE_CHIP_DISTRIBUTION=true
|
||
|
||
# 是否启用基本面聚合(新增 P0 能力)
|
||
# ENABLE_FUNDAMENTAL_PIPELINE=true
|
||
|
||
# 基本面聚合性能与稳定性参数(单位:秒)
|
||
# FUNDAMENTAL_STAGE_TIMEOUT_SECONDS=1.5
|
||
# FUNDAMENTAL_FETCH_TIMEOUT_SECONDS=0.8
|
||
# FUNDAMENTAL_RETRY_MAX=1
|
||
# FUNDAMENTAL_CACHE_TTL_SECONDS=120
|
||
# FUNDAMENTAL_CACHE_MAX_ENTRIES=256
|
||
|
||
# ===========================================
|
||
# Portfolio P0: 导入 / 风险 / 汇率降级配置
|
||
# ===========================================
|
||
# PORTFOLIO_RISK_CONCENTRATION_ALERT_PCT=35.0
|
||
# PORTFOLIO_RISK_DRAWDOWN_ALERT_PCT=15.0
|
||
# PORTFOLIO_RISK_STOP_LOSS_ALERT_PCT=10.0
|
||
# PORTFOLIO_RISK_STOP_LOSS_NEAR_RATIO=0.8
|
||
# PORTFOLIO_RISK_LOOKBACK_DAYS=180
|
||
# PORTFOLIO_FX_UPDATE_ENABLED=true
|
||
|
||
# 东财接口补丁:东财/Efinance/Akshare 东方财富接口频繁失败(RemoteDisconnected、连接被关闭)时建议开启
|
||
# 开启后会注入 NID 令牌与随机 User-Agent,降低被东财限流概率
|
||
# ENABLE_EASTMONEY_PATCH=false
|