Open rickyall opened 7 years ago
[2018-03-03 20:12:43.020316] INFO: system_log: 同步数据中。 Traceback (most recent call last): File "TraderApi.pyx", line 701, in ctp._TraderApi.TraderSpi_OnRspQryInvestorPosition (ctp/TraderApi.cpp:17799) File "/home/supervisor/venv/rq/lib/python3.5/site-packages/rqalpha_mod_ctp/ctp/api.py", line 47, in wrapper result = func(api, pData, pRspInfo, nRequestID, bIsLast) File "/home/supervisor/venv/rq/lib/python3.5/site-packages/rqalpha_mod_ctp/ctp/api.py", line 256, in OnRspQryInvestorPosition if pInvestorPosition.InstrumentID: AttributeError: 'NoneType' object has no attribute 'InstrumentID'
我也遇到类似的问题
我这里也遇到了相同的问题。 配置文件
# http://rqalpha.readthedocs.io/zh_CN/stable/intro/run_algorithm.html
version: 0.1.6
# 白名单,设置可以直接在策略代码中指定哪些模块的配置项目
whitelist: [base, extra, validator, mod]
base:
# 数据源所存储的文件路径
data_bundle_path: ~
# 启动的策略文件路径
strategy_file: strategy.py
# 策略源代码
source_code: ~
# 回测起始日期
start_date: 2015-06-01
# 回测结束日期(如果是实盘,则忽略该配置)
end_date: 2050-01-01
# 设置保证金乘数,默认为1
margin_multiplier: 1
# 运行类型,`b` 为回测,`p` 为模拟交易, `r` 为实盘交易。
run_type: p
# 目前支持 `1d` (日线回测) 和 `1m` (分钟线回测),如果要进行分钟线,请注意是否拥有对应的数据源,目前开源版本是不提供对应的数据源的。
frequency: tick
# Benchmark,如果不设置,默认没有基准参照。
benchmark: ~
# 在模拟交易和实盘交易中,RQAlpha支持策略的pause && resume,该选项表示开启 resume 功能
resume_mode: false
# 在模拟交易和实盘交易中,RQAlpha支持策略的pause && resume,该选项表示开启 persist 功能呢,
# 其会在每个bar结束对进行策略的持仓、账户信息,用户的代码上线文等内容进行持久化
persist: false
persist_mode: real_time
# 设置策略可交易品种,目前支持 `stock` (股票账户)、`future` (期货账户),您也可以自行扩展
accounts:
# 如果想设置使用某个账户,只需要增加对应的初始资金即可
stock: ~
future: 100000
# 设置初始仓位
init_positions: {}
# 根据价格最小变动单位调整发单价格
round_price: false
extra:
# 选择日期的输出等级,有 `verbose` | `info` | `warning` | `error` 等选项,您可以通过设置 `verbose` 来查看最详细的日志,
# 或者设置 `error` 只查看错误级别的日志输出
log_level: verbose
user_system_log_disabled: false
user_log_disabled: false
# 通过该参数可以将预定义变量传入 `context` 内。
context_vars: ~
# force_run_init_when_pt_resume: 在PT的resume模式时,是否强制执行用户init。主要用于用户改代码。
force_run_init_when_pt_resume: false
# enable_profiler: 是否启动性能分析
enable_profiler: false
is_hold: false
locale: zh_Hans_CN
logger: []
validator:
# close_amount: 在执行order_value操作时,进行实际下单数量的校验和scale,默认开启
close_amount: true
mod:
ctp:
enable: true
# CTP 登录信息
login:
user_id: ""
password: ""
broker_id: "9999"
# 事件相关设置
event:
# 是否使用默认的 CTP 实时数据源
enabled: true
# 是否在非交易时间段内触发行情事件
all_day: false
#address: "tcp://180.168.146.187:10011"
address: "tcp://180.168.146.187:10031"
# 交易相关设置
trade":
# 是否使用默认的 CTP 交易接口
enabled: true
#address: "tcp://180.168.146.187:10001"
address: "tcp://180.168.146.187:10030"
使用的是simnow的模拟ctp
用户登录:RspInfo(ErrorID=0, ErrorMsg=b'CTP:No Error') 交易日期: b'20171020' 连接市场数据: RspInfo(ErrorID=0, ErrorMsg=b'CTP:No Error')