跳到主要内容

系统设置

本文档介绍了 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
}
}

最佳实践

  1. 定期备份配置文件
  2. 使用版本控制管理配置
  3. 为不同环境使用不同配置
  4. 监控缓存使用情况
  5. 定期清理日志文件
  6. 保护敏感配置信息