系统设置
本文档介绍了 OpenBB 平台的系统级配置选项和设置方法。
配置文件位置
默认配置目录
# Linux/macOS
~/.openbb_platform/
# Windows
%USERPROFILE%\.openbb_platform\
配置文件结构
~/.openbb_platform/
├── system_settings.json
├── user_settings.json
├── credentials.json
└── cache/
系统设置选项
基本设置
{
"preferences": {
"data_directory": "~/.openbb_platform/data",
"export_directory": "~/.openbb_platform/exports",
"cache_directory": "~/.openbb_platform/cache",
"log_directory": "~/.openbb_platform/logs"
}
}
性能设置
{
"performance": {
"request_timeout": 30,
"max_retries": 3,
"concurrent_requests": 5,
"cache_enabled": true,
"cache_expiration": 3600
}
}
显示设置
{
"display": {
"timezone": "UTC",
"date_format": "%Y-%m-%d",
"decimal_places": 4,
"thousands_separator": ",",
"currency_symbol": "$"
}
}
通过代码配置
获取当前设置
import openbb
# 查看所有设置
settings = openbb.system.settings
print(settings)
# 查看特定设置
print(f"缓存启用状态: {settings.cache_enabled}")
print(f"请求超时: {settings.request_timeout}")
修改设置
import openbb
# 修改单个设置
openbb.system.settings.request_timeout = 60
openbb.system.settings.cache_enabled = False
# 批量修改设置
openbb.system.settings.update({
"request_timeout": 45,
"max_retries": 5,
"decimal_places": 2
})
# 保存设置
openbb.system.settings.save()
重置设置
import openbb
# 重置所有设置为默认值
openbb.system.settings.reset()
# 重置特定设置
openbb.system.settings.reset("request_timeout")
用户偏好设置
数据偏好
import openbb
# 设置默认数据提供商
openbb.user.preferences.default_provider = "alpha_vantage"
# 设置默认数据范围
openbb.user.preferences.default_start_date = "2020-01-01"
openbb.user.preferences.default_end_date = "2023-12-31"
输出格式
import openbb
# 设置默认输出格式
openbb.user.preferences.output_format = "pandas" # pandas, dict, json
# 设置图表主题
openbb.user.preferences.chart_theme = "dark" # light, dark
缓存管理
缓存配置
import openbb
# 启用/禁用缓存
openbb.system.cache.enabled = True
# 设置缓存过期时间(秒)
openbb.system.cache.expiration = 7200 # 2小时
# 设置缓存大小限制(MB)
openbb.system.cache.max_size = 1024 # 1GB
缓存操作
import openbb
# 清除所有缓存
openbb.system.cache.clear()
# 清除特定提供商的缓存
openbb.system.cache.clear_provider("alpha_vantage")
# 查看缓存统计
stats = openbb.system.cache.stats()
print(f"缓存大小: {stats.size_mb} MB")
print(f"缓存命中率: {stats.hit_rate:.2%}")
日志配置
日志级别
import openbb
import logging
# 设置日志级别
openbb.system.logging.level = logging.INFO
# 可用级别:DEBUG, INFO, WARNING, ERROR, CRITICAL
日志输出
import openbb
# 启用控制台日志
openbb.system.logging.console_enabled = True
# 启用文件日志
openbb.system.logging.file_enabled = True
openbb.system.logging.file_path = "~/.openbb_platform/logs/openbb.log"
# 设置日志格式
openbb.system.logging.format = "%(asctime)s - %(name)s - %(levelname)s - %(message)s"
网络配置
代理设置
import openbb
# HTTP 代理
openbb.system.network.http_proxy = "http://proxy.example.com:8080"
# HTTPS 代理
openbb.system.network.https_proxy = "https://proxy.example.com:8080"
# 代理认证
openbb.system.network.proxy_auth = ("username", "password")
请求配置
import openbb
# 请求超时
openbb.system.network.timeout = 30
# 最大重试次数
openbb.system.network.max_retries = 3
# 重试间隔
openbb.system.network.retry_delay = 1
# 并发请求数
openbb.system.network.max_concurrent = 5
数据存储配置
本地存储
import openbb
# 数据存储目录
openbb.system.storage.data_directory = "~/openbb_data"
# 导出目录
openbb.system.storage.export_directory = "~/openbb_exports"
# 自动清理旧数据
openbb.system.storage.auto_cleanup = True
openbb.system.storage.cleanup_days = 30
数据库配置
import openbb
# SQLite 数据库
openbb.system.database.url = "sqlite:///~/.openbb_platform/data.db"
# 连接池设置
openbb.system.database.pool_size = 10
openbb.system.database.max_overflow = 20
安全设置
API 密钥管理
import openbb
# 加密存储 API 密钥
openbb.system.security.encrypt_credentials = True
# 设置主密码
openbb.system.security.set_master_password("your_secure_password")
访问控制
import openbb
# 启用访问日志
openbb.system.security.access_logging = True
# 设置会话超时
openbb.system.security.session_timeout = 3600 # 1小时
配置文件示例
完整的系统配置文件
{
"preferences": {
"data_directory": "~/.openbb_platform/data",
"export_directory": "~/.openbb_platform/exports",
"timezone": "UTC",
"date_format": "%Y-%m-%d"
},
"performance": {
"request_timeout": 30,
"max_retries": 3,
"cache_enabled": true,
"cache_expiration": 3600
},
"display": {
"decimal_places": 4,
"thousands_separator": ",",
"currency_symbol": "$"
},
"logging": {
"level": "INFO",
"console_enabled": true,
"file_enabled": true,
"file_path": "~/.openbb_platform/logs/openbb.log"
},
"network": {
"timeout": 30,
"max_retries": 3,
"max_concurrent": 5
}
}
最佳实践
- 定期备份配置文件
- 使用版本控制管理配置
- 为不同环境使用不同配置
- 监控缓存使用情况
- 定期清理日志文件
- 保护敏感配置信息