VeighNa量化社区
你的开源社区量化交易平台
tonywang_efun's Avatar
Member
在线
48 帖子
声望: 12

偶发的,出现的概率不高,我再多打点日志观察一下

如下图所示,其实就是官方提供的no_ui代码,正常情况会先执行A,后执行B,从前面日志的截图可以看到A执行了,但是B没有执行。

description

NO_UI启动程序,非交易期间子进程没有完全关闭,如下图所示:7点31分还收到了一条bar推送。请问有办法解决吗 ?

description

好的,感谢~

我看no_ui的脚本只控制了时间段,周末或者节假日是不是还要自己手工停止,工作日再提前打开?

好吧,多谢解答~

我在MAC电脑上使用TTS接口报错,请问需要如何解决?

Traceback (most recent call last):
File "/Users/wangxudong/code/vnpy/vnpy/run.py", line 6, in <module>
from vnpy_tts import TtsGateway
File "/Users/wangxudong/miniconda3/envs/vnpy/lib/python3.10/site-packages/vnpy_tts/init.py", line 25, in <module>
from .gateway import TtsGateway
File "/Users/wangxudong/miniconda3/envs/vnpy/lib/python3.10/site-packages/vnpy_tts/gateway/init.py", line 1, in <module>
from .tts_gateway import TtsGateway
File "/Users/wangxudong/miniconda3/envs/vnpy/lib/python3.10/site-packages/vnpy_tts/gateway/tts_gateway.py", line 32, in <module>
from ..api import (
File "/Users/wangxudong/miniconda3/envs/vnpy/lib/python3.10/site-packages/vnpy_tts/api/init.py", line 1, in <module>
from .vnttsmd import MdApi
ModuleNotFoundError: No module named 'vnpy_tts.api.vnttsmd'

运行vnpy项目examples/cta_backtesting/portfolio_backtesting.ipynb 文件,时间选择从2010-1-1 到2023-4-30发现2020之后回撤不断放大,请问是样本外的原因还是市场风格转换导致的?

description

感谢回答,看了文档里写到:“为了实现立即成交的目的,CTA策略引擎会立即以涨跌停价或者盘口五档的价格,去发出限价委托”,想问一下具体执行的时候是以涨跌停价格还是盘口五档价格,选择的优先级是怎么设置的?

采用TTS接口进行模拟盘交易发现委托价格差别很大 , 具体如下图所示,交易界面显示委托价格3354,策略界面显示的价格是3748,请问大佬3354这个价格是不是显示错误了?

description

description

商品期货在2014年后发生了啥,好多策略和品种都在2014年后收益锐减,有大佬知道发生了啥事吗?

description

@丘 Slave需要安装VNPY吗?

用RQData的RB888的数据跑回测发现有负数的成交价,是因为平滑处理造成的吗,会不会对策略结果造成影响呢?

description

nick-进 wrote:

感谢大佬分享~

使用过程中,发现一个小bug:
当我要下载郑商所 SR8888.CZCE 合约时,会报错,查找不到对应合约。
修改jqdata.py:

            # Check for index symbol
            time_str = symbol[count:]
            if time_str in ["88", "888", "99"]:
                return symbol

为:

            # Check for index symbol
            time_str = symbol[count:]
            if time_str in ["88", "888", "99", "8888"]:
                return f"{symbol}.XZCE"

即可下载。

已经更新到帖子中,多谢~

确实是JQ,这个字段估计是打标一下数据来源,文中已改,谢谢~

wuya4315 wrote:

感谢分享。jqdata.py有个笔误,应该是gateway_name="JQ",不是“RQ”

用IF9999.CFFEX试试,下图是聚宽对主力连续合约的代码定义,可以到他们的官网上找到,链接

description

sean_vnpy wrote:

之前按照这个方案配置好貌似没有问题了,但是最近使用的时候发现会有如下报错?是不是哪个接口的配置改了?

22:01:31 ----------------------------------------
22:01:31 IF88.CFFEX-1m开始下载历史数据
22:01:31 数据下载失败,触发异常:
Traceback (most recent call last):
File "C:\Users\Administrator\Anaconda3\lib\site-packages\vnpy\app\cta_backtester\engine.py", line 367, in run_downloading
data = mddata_client.query_history(req)
File "C:\Users\Administrator\Anaconda3\lib\site-packages\vnpy\trader\mddata\jqdata.py", line 139, in query_history
skip_paused=True
File "C:\Users\Administrator\Anaconda3\lib\site-packages\jqdatasdk\utils.py", line 229, in _wrapper
return func(*args, kwargs)
File "C:\Users\Administrator\Anaconda3\lib\site-packages\jqdatasdk\api.py", line 28, in get_price
return JQDataClient.instance().get_price(
locals())
File "C:\Users\Administrator\Anaconda3\lib\site-packages\jqdatasdk\client.py", line 162, in <lambda>
return lambda kwargs: self(method, kwargs)
File "C:\Users\Administrator\Anaconda3\lib\site-packages\jqdatasdk\client.py", line 157, in call
raise err
Exception: 找不到标的IF88.CCFX

@龙津 这个论坛没有找到上传文件的地方,我放到github上了,你去找一下吧: https://github.com/tonywanggit/vnpy/tree/master/vnpy/trader/mddata

会的,前一个交易日的仓位会被保存在策略数据文件中,在启动策略的时候会从策略数据文件中加载出来。

二师兄 wrote:

请问,init.py文件路径是多少?

由于帖子里下划线会被编辑器去掉,所以参考如下图片:

description

1)策略中的variables变量会在停止策略时写入策略数据文件:cta_strategy_data.json 中
2)每次初始策略会先加载数据然后用cta_strategy_data.json文件的内容重置策略变量,代码如下:

        self.write_log(f"{strategy_name}开始执行初始化")

        # Call on_init function of strategy
        self.call_strategy_func(strategy, strategy.on_init)

        # Restore strategy data(variables)
        data = self.strategy_data.get(strategy_name, None)
        if data:
            for name in strategy.variables:
                value = data.get(name, None)
                if value:
                    setattr(strategy, name, value)

3)假设策略用到的交易高点被记录到变量中 variables = ['intraTradeHigh'],则可能引发问题如下:

  9月1号 开仓做多,成交价 = 98,停止策略时 记录 intraTradeHigh = 100
  9月2号 没有启动策略交易 当天最高价 = 110
  9月3号 开启策略时候会用策略文件中的 100 设置intraTradeHigh值,这样就漏掉了2号的最高价110,可能对交易策略产生一定影响。

粗略的分析,欢迎大佬拍砖指正~

© 2015-2022 微信 18391752892
备案服务号:沪ICP备18006526号

沪公网安备 31011502017034号

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