centos搭建环境跑自动交易

用户头像mo_***794pfp
2025-08-24 发布

闲来无事,在nas上搭了一套交易系统,记录一下,策略部分正在回测,先部署上虚拟机。
python升级到3,

  • 安装脚手架

pip install jvquant

  • 创建一个token
  • 验证websocket授权
import jvQuant
import logging

'''沪深行情订阅示例'''


# 自定义日志处理函数
def logHandle(log: str):
    print("应用日志:", log)


# 自定义原始行情处理函数
def dataHandle(data: str):
    print("Binary解析结果:", data)


# 自定义level1行情处理函数
def ab_lv1_handle(lv1: jvQuant.websocket_client.parse.AbLv1):
    print("level1推送:", lv1.get_map())


# 自定义level2行情处理函数
def ab_lv2_handle(lv2: jvQuant.websocket_client.parse.AbLv2):
    print("level2推送:", lv2.get_map())


# 自定义十档行情处理函数
def ab_lv10_handle(lv10: jvQuant.websocket_client.parse.AbLv10):
    print("十档推送:", lv10.get_map())


# 沪深市场标志
market = "ab"
# 平台授权Token
token = "xxx"
# 打印调试信息
log_level = logging.DEBUG
# log_level = logging.INFO

ws = jvQuant.websocket_client

# 注册自定义行情处理函数
wsclient = ws.Construct(market=market, token=token, log_level=log_level, log_handle=logHandle, data_handle=dataHandle,
                        ab_lv1_handle=ab_lv1_handle, ab_lv2_handle=ab_lv2_handle, ab_lv10_handle=ab_lv10_handle)

# 发送订阅代码
wsclient.add_lv1(["600519", "000001", "i000001"])
wsclient.add_lv2(["600519", "000001", "i000001"])
wsclient.add_lv10(["600519", "000001", "i000001"])

# 等待子线程结束
wsclient.thread_join()
  • 验证柜台交易
import jvQuant
import logging

# 资金账号
ACCOUNT = ""
# 资金密码
ACCOUNT_PWD = ""
# 平台授权Token
TOKEN = "xxx"
# 打印调试信息
LOG_LEVEL = logging.DEBUG
# LOG_LEVEL = logging.INFO

ctp = jvQuant.ctp_client
ctpclient = ctp.Construct(token=TOKEN, ctp_acc=ACCOUNT, ctp_pwd=ACCOUNT_PWD, log_level=LOG_LEVEL)

# 查询持仓信息
response = ctpclient.check_hold()

# 查询委托状态
response = ctpclient.check_order()

# 委托买入
response = ctpclient.buy("600519", "贵州茅台", "1572.12", "1000")

# 委托卖出
response = ctpclient.sale("600519", "贵州茅台", "1572.12", "1000")

# 撤销委托
response = ctpclient.cancel("9702")

# 等待子线程结束
ctpclient.thread_join()

pip文档地址

评论