VeighNa量化社区
你的开源社区量化交易平台
Member
avatar
加入于:
帖子: 2
声望: 0

chwei2ch wrote:

Lucien wrote:

python run.py 按照文章来运行无界面模式,出错
错误产生在 main_engine.connect(exchange_setting,exchange_name) 连接接口 这里。

错误内容: 个人理解是gateway产生的
gateway.connect(setting)
session_number, proxy_host, proxy_port)
self.start(session_number)
self._pool = Pool(n)
return ThreadPool(processes, initializer, initargs)
Pool.init(self, processes, initializer, initargs)
if processes < 1:
TypeError: '<' not supported between instances of 'str' and 'int'

这要怎么解决呢? 有界面模式是能正常运行的。

你设置的问题吧

您好, 我也碰到了同样的问题。 请问你是怎么解决的呢?谢谢

Member
avatar
加入于:
帖子: 4618
声望: 284

检查一下自己的设置吧

Member
avatar
加入于:
帖子: 23
声望: 0

首先出现问题
description
然后解决
description
只要CtpTdApi的类下的这个函数里面的这段不运行就没问题了
不过我又想了几个问题
1、这一段不运行对有界面Trader运行时有无影响
2、行情数据是不是要在Trader中订阅过才能在无界面时查询到合约数据?
3、如果策略的设置,本身在C:\Users\Eden.vntrader\cta_strategy_setting.json文件中已经有创建了,但是vt_symbol输错了,这样的话就会显示“行情订阅失败,找不到合约XXXX”。例如我情况json文件里的Class_name:model1,
vt_symbol:IF2016.CFFEX(20年哪有16月), strategy_name:model1,而无界面代码中的vt_symbol填的是IF2106.CFFEX,class_name和strategy_name均是model1,但还是出现了问题-----无界面代码中无法更新JSON文件里的vt_symbol。最终我只能手动在json文件里改了vt_symbol。那么如何在无界面中直接解决这个问题呢?而且如果无界面实盘交易时碰到合约换月,无法解决这个问题的话就有点难办了

Member
avatar
加入于:
帖子: 23
声望: 0

好吧,对于第一个问题······对比了Github的vnpy_ctp的代码,发现这串代码本来就是我测试时手多打上去的,解决。
对于第二个问题,小小尝试了一下没订阅过的合约,也可以查询到,看来应该是会直接从接口那订阅而不用通过Trader
第三个问题就不知道怎么解决了

Member
avatar
加入于:
帖子: 4618
声望: 284

如果非要无界面操作移仓,可以参考vnpy.app.cta_strategy.ui.rollover里移仓助手的写法试试看

Member
avatar
加入于:
帖子: 23
声望: 0

xiaohe wrote:

如果非要无界面操作移仓,可以参考vnpy.app.cta_strategy.ui.rollover里移仓助手的写法试试看
好的,谢谢

Member
avatar
加入于:
帖子: 126
声望: 14

Eden wrote:

首先出现问题
description
然后解决
description
只要CtpTdApi的类下的这个函数里面的这段不运行就没问题了
不过我又想了几个问题
1、这一段不运行对有界面Trader运行时有无影响
2、行情数据是不是要在Trader中订阅过才能在无界面时查询到合约数据?
3、如果策略的设置,本身在C:\Users\Eden.vntrader\cta_strategy_setting.json文件中已经有创建了,但是vt_symbol输错了,这样的话就会显示“行情订阅失败,找不到合约XXXX”。例如我情况json文件里的Class_name:model1,
vt_symbol:IF2016.CFFEX(20年哪有16月), strategy_name:model1,而无界面代码中的vt_symbol填的是IF2106.CFFEX,class_name和strategy_name均是model1,但还是出现了问题-----无界面代码中无法更新JSON文件里的vt_symbol。最终我只能手动在json文件里改了vt_symbol。那么如何在无界面中直接解决这个问题呢?而且如果无界面实盘交易时碰到合约换月,无法解决这个问题的话就有点难办了

别靠猜,要自己测试,
另外,猜测的大多都不对,影响很大。

Member
avatar
加入于:
帖子: 227
声望: 0

请教大佬 cta_engine.update_strategy_setting(strategy_name, strategy_setting),没有找到update_strategy_setting()

Member
avatar
加入于:
帖子: 716
声望: 62

description

Member
加入于:
帖子: 13
声望: 0

我也遇到策略加载运行是正常了,可是它没有实时数据更新啊?CTPTEST环境,合约名:ru2205.SHFE。求大佬指点,谢谢!

description

Member
avatar
加入于:
帖子: 4618
声望: 284

请问你是做穿透式测试吗?只有做穿透式测试才连ctptest接口

Member
加入于:
帖子: 13
声望: 0

xiaohe wrote:

请问你是做穿透式测试吗?只有做穿透式测试才连ctptest接口

是的,用的宏源期货,可以正常下单交易,但实时行情数据获取不了,后面问了客服,如果要获取行情要通过快期v2模拟盘环境获取,而且和实盘数据差很远。这个仿真环境只能用来做穿透式测试,如果要实盘数据验证策略有效性,只能通过其他方式。

Member
avatar
加入于:
帖子: 57
声望: 1

请问 xtp接口也可和cta_engine ,CtaStrategyApp 搭配在一起用吗?

Member
avatar
加入于:
帖子: 4618
声望: 284

可以

Member
加入于:
帖子: 2
声望: 0

行情订阅失败,找不到合约XXXX
因为main_engine.connect(xxx)完之后需要
time.sleep(30)
直到有输出日志 - veighna - INFO - 合约信息查询成功 后才能初始化策略,策略启动

由于要求初始化完才能加载所以
def Init_event(event: Event):
cta_engine.start_strategy(strategy_name)
cta_engine.event_engine.unregister(EVENT_CTA_STRATEGY, Init_event)
cta_engine.event_engine.register(EVENT_CTA_STRATEGY, Init_event)

Member
avatar
加入于:
帖子: 7
声望: 0

请教一下,看帖子应该是在子进程里面做这个逻辑,关于退出有什么方式能够优雅退出么,监听ctrl-C的事件还是怎么做的,求分享一下

Member
avatar
加入于:
帖子: 12
声望: 0

chwei2ch wrote:

鋕桦 wrote:

chwei2ch wrote:

杨大鑫 wrote:

大佬,现在最新版的vnpy目录下一直没找到no_ui这个目录啊

在examples目录下的no_ui
那样是不是要手动安装,而不能用vnstudio安装?

可以用vnstudio安装,然后直接运行那个run.py就可以了

Member
avatar
加入于:
帖子: 12
声望: 0

可是不是没有no_ui吗,那也就没有run.py了啊

Member
avatar
加入于:
帖子: 4618
声望: 284

自行下载no_ui的run.py即可,或者自己写一下,代码不长的
https://gitee.com/vnpy/vnpy/tree/master/examples/no_ui

Member
avatar
加入于:
帖子: 2
声望: 0

PortfolioStrategy 模块怎么自动移仓

© 2015-2022 上海韦纳软件科技有限公司
备案服务号:沪ICP备18006526号

沪公网安备 31011502017034号

【用户协议】
【隐私政策】
【免责条款】