team/dev/: axon-0.2.1.post251110 metadata and description

Simple index

axon 实盘交易框架

description_content_type text/markdown
requires_dist
  • aiohttp>=3.10.11
  • aiosqlite>=0.21.0
  • alembic>=1.15.2
  • apscheduler>=3.11.0
  • bs4>=0.0.2
  • czsc>=0.9.64
  • fastapi[standard]>=0.115.12
  • loguru>=0.7.3
  • numpy==2.3.2
  • pandas>=2.2.3
  • pydantic-settings>=2.8.1
  • python-dotenv>=1.1.0
  • sqlmodel>=0.0.24
  • tenacity>=9.0.0
  • ccxt>=4.4.71; extra == 'all'
  • gm>=3.0.178; extra == 'all'
  • openctp-ctp==6.7.7.*; extra == 'all'
  • protobuf==3.20.*; extra == 'all'
  • psutil>=7.0.0; extra == 'all'
  • pyautogui>=0.9.54; extra == 'all'
  • rarfile>=4.2; extra == 'all'
  • tqsdk>=3.8.1; extra == 'all'
  • ccxt>=4.4.71; extra == 'binance'
  • openctp-ctp==6.7.7.*; extra == 'ctp'
  • gm>=3.0.178; extra == 'gm'
  • protobuf==3.20.*; extra == 'gm'
  • psutil>=7.0.0; extra == 'gm'
  • pyautogui>=0.9.54; extra == 'qmt'
  • rarfile>=4.2; extra == 'qmt'
  • tqsdk>=3.8.1; extra == 'tq'
requires_python ==3.12.*

Because this project isn't in the mirror_whitelist, no releases from root/pypi are included.

File Tox results History
axon-0.2.1.post251110-cp312-cp312-win_amd64.whl
Size
170 KB
Type
Python Wheel
Python
3.12
  • Uploaded to team/dev by team 2025-11-18 06:54:04

axon

axon 是神经元的一部分,负责将电信号从细胞体传递到其他神经元或效应器(如肌肉)。它代表了信息传递的高效性和准确性,这与量化交易系统需要快速、准确地处理市场数据和执行交易指令的需求相吻合。

从私有库安装:

uv pip install axon --index-url https://pypi.zbczsc.com/team/dev --trusted-host pypi.zbczsc.com --force-reinstall

环境说明

环境变量(.env 文件)设置如下:

# axon.db为数据库路径
SQLALCHEMY_DATABASE_URI=sqlite+aiosqlite:///axon.db
# ENVIRONMENT=production

# 获取权重令牌
CZSC_TOKEN=xxxxx

启动

mkdir -vp axon-deploy
cd axon-deploy
# 创建虚拟环境并指定python版本
uv venv --python 3.11

# 安装程序(币安)
uv pip install axon-0.1.0-cp311-cp311-manylinux2014_x86_64.whl[binance]

# (可选)安装程序(天勤)
uv pip install axon-0.1.0-cp311-cp311-manylinux2014_x86_64.whl[tq]

# (可选)安装程序(天勤和币安)
uv pip install axon-0.1.0-cp311-cp311-manylinux2014_x86_64.whl[tq,binance]

# 准备.env和certs证书目录
uv run axon --host 0.0.0.0 --port 8090 --ssl-keyfile ./certs/server.key --ssl-certfile ./certs/server.crt --ca-file ./certs/ca.crt

使用 systemd 启动服务(用户级,Linux)

可以将本项目配置为用户级 systemd 服务,开机后自动启动,无需 root 权限。

前提要求

确保以下目录和文件已经存在于你的 home 目录:

~/axon/                   # 项目目录
├── .env                  # 环境变量文件
├── certs/                # 存放证书的目录   ├── server.key
│   ├── server.crt
│   └── ca.crt
├── .venv/                # 虚拟环境目录(已安装依赖)

检查或编辑 axon.service

内容如下

[Unit]
Description=axon
After=network.target

[Service]
Type=simple
WorkingDirectory=%h/axon
ExecStart=%h/axon/.venv/bin/axon --port 8090 --host 0.0.0.0 --ssl-keyfile %h/axon/certs/server.key --ssl-certfile %h/axon/certs/server.crt --ca-file %h/axon/certs/ca.crt
Restart=on-failure

EnvironmentFile=%h/axon/.env
Environment=PYTHONUNBUFFERED=1
StandardOutput=journal
StandardError=journal

[Install]
WantedBy=default.target

安装用户级 systemd 服务

  1. 拷贝 axon.service 到 systemd 用户目录:
mkdir -p ~/.config/systemd/user
cp systemd/axon.service ~/.config/systemd/user/
  1. 重新加载 systemd 配置:
systemctl --user daemon-reexec
systemctl --user daemon-reload
  1. 启动服务并设置登录自动启动:
systemctl --user start axon
systemctl --user enable axon
  1. 查看状态和日志输出:
systemctl --user status axon
journalctl --user -u axon -f

服务将在用户登录后自动启动。 ❌ 无需使用 sudo。 🧩 所有路径中使用 %h/axon/... 代表的是 ~/axon/...

如有多个用户部署,请为每个用户分别配置其 ~/.config/systemd/user/axon.service 文件及对应的 ~/axon 内容。

采用 PostgresSQL 而不是默认的 sqlite 数据库的说明设置

安装 postgressql 异步数据库后端(默认依赖是 sqlite后端)

uv pip install asyncpg

调整环境变量的数据库链接

SQLALCHEMY_DATABASE_URI=postgresql+asyncpg://<用户名>:<密码>@<服务器地址>:5432/axon

可能需要先手动在数据库上创建一个空的db: axon