VeighNa量化社区
你的开源社区量化交易平台
become-calm's Avatar
Member
离线
21 帖子
声望: 0

确实如此 谢谢谢谢!

策略执行报错
Traceback (most recent call last):
File "C:\Anaconda3\lib\site-packages\vnpy\trader\ui\mainwindow.py", line 278, in open_widget
widget = widget_class(self.main_engine, self.event_engine)
File "C:\Anaconda3\lib\site-packages\vnpy\app\cta_strategy\ui\widget.py", line 37, in init
self.cta_engine.init_engine()
File "C:\Anaconda3\lib\site-packages\vnpy\app\cta_strategy\engine.py", line 110, in init_engine
self.load_strategy_data()
File "C:\Anaconda3\lib\site-packages\vnpy\app\cta_strategy\engine.py", line 799, in load_strategy_data
self.strategy_data = load_json(self.data_filename)
File "C:\Anaconda3\lib\site-packages\vnpy\trader\utility.py", line 99, in load_json
data = json.load(f)
File "C:\Anaconda3\lib\json__init.py", line 296, in load
parse_constant=parse_constant, object_pairs_hook=object_pairs_hook, **kw)
File "C:\Anaconda3\lib\json\
init__.py", line 348, in loads
return _default_decoder.decode(s)
File "C:\Anaconda3\lib\json\decoder.py", line 337, in decode
obj, end = self.raw_decode(s, idx=_w(s, 0).end())
File "C:\Anaconda3\lib\json\decoder.py", line 355, in raw_decode
raise JSONDecodeError("Expecting value", s, err.value) from None
json.decoder.JSONDecodeError: Expecting value: line 42 column 16 (char 740)
这是为什么呢?cta_strategy_data.json这个文件又在哪?

今天又出现了同样的报错,是rqdata那边有更新导致的吗?

已解决

test: 触发异常已停止
Traceback (most recent call last):
File "C:\Anaconda3\lib\site-packages\pandas\core\indexes\base.py", line 2657, in get_loc
return self._engine.get_loc(key)
File "pandas_libs\index.pyx", line 108, in pandas._libs.index.IndexEngine.get_loc
File "pandas_libs\index.pyx", line 132, in pandas._libs.index.IndexEngine.get_loc
File "pandas_libs\hashtable_class_helper.pxi", line 987, in pandas._libs.hashtable.Int64HashTable.get_item
File "pandas_libs\hashtable_class_helper.pxi", line 993, in pandas._libs.hashtable.Int64HashTable.get_item
KeyError: 3

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
File "C:\Anaconda3\lib\site-packages\vnpy\app\cta_strategy\engine.py", line 582, in call_strategy_func
func(params)
File "C:\Anaconda3\lib\site-packages\vnpy\app\cta_strategy\strategies\active_s_l_t_p.py", line 71, in on_tick
if not columns_data[3]:
File "C:\Anaconda3\lib\site-packages\pandas\core\frame.py", line 2927, in getitem
indexer = self.columns.get_loc(key)
File "C:\Anaconda3\lib\site-packages\pandas\core\indexes\base.py", line 2659, in get_loc
return self._engine.get_loc(self._maybe_cast_indexer(key))
File "pandas_libs\index.pyx", line 108, in pandas._libs.index.IndexEngine.get_loc
File "pandas_libs\index.pyx", line 132, in pandas._libs.index.IndexEngine.get_loc
File "pandas_libs\hashtable_class_helper.pxi", line 987, in pandas._libs.hashtable.Int64HashTable.get_item
File "pandas_libs\hashtable_class_helper.pxi", line 993, in pandas._libs.hashtable.Int64HashTable.get_item
KeyError: 3
策略初始化后报这个错误,这是为啥呀?

请问我想实现“若达到目标利润则锁定利润”这种操作
而这需要获取我的持仓信息
1.如何在策略中实现这一点呢?
2.如果在策略中不可以获取持仓信息,那通过怎样的方法可以实现锁定利润呢?

已解决
更新到2.0.8问题得到解决

13:13:03 初始化CTA回测引擎
13:13:03 策略文件加载完成
13:13:03 RQData数据接口初始化成功
13:13:07 ----------------------------------------
13:13:07 IF88.CFFEX-1m开始下载历史数据
13:13:28 数据下载失败,触发异常:
Traceback (most recent call last):
File "C:\Anaconda3\lib\site-packages\vnpy\app\cta_backtester\engine.py", line 365, in run_downloading
data = rqdata_client.query_history(req)
File "C:\Anaconda3\lib\site-packages\vnpy\trader\rqdata.py", line 136, in query_history
adjust_type="none"
File "C:\Anaconda3\lib\site-packages\rqdatac\decorators.py", line 131, in wrap
return func(args, **kwargs)
File "C:\Anaconda3\lib\site-packages\rqdatac\services\get_price.py", line 124, in get_price
pf = get_minbar(order_book_ids, start_date, end_date, fields, duration, market)
File "C:\Anaconda3\lib\site-packages\rqdatac\services\get_price.py", line 450, in get_minbar
data = [(obid, {k: np.frombuffer(
v) for k, v in d.items()}) for obid, d in data]
TypeError: 'NoneType' object is not iterable
rqdatac版本是2.5.5,vnpy是2.0.7版本,这是为啥呀

谢谢您
在cmd界面中使用命令
“pip install -i https://pypi.tuna.tsinghua.edu.cn/simple --extra-index-url https://rquser:ricequant99@py.ricequant.com/simple/ rqdatac==2.5.5”
问题得到了解决
祝vnpy越来越好

为什么持仓数不为零,有时候还是会出现持仓均价为0的情况呢?

11: 初始化完成
11: 触发异常已停止
Traceback (most recent call last):
File "G:\studyfile\pythonLearn\workplace\vnpy_lme\src\vnpy\app\cta_strategy\engine.py", line 584, in call_strategy_func
func()
File "G:\studyfile\pythonLearn\workplace\vnpy_lme\src\vnpy\app\cta_strategy\strategies\atr_rsi_strategy.py", line 54, in on_init
self.load_bar(10)
File "G:\studyfile\pythonLearn\workplace\vnpy_lme\src\vnpy\app\cta_strategy\template.py", line 233, in load_bar
self.cta_engine.load_bar(self.vt_symbol, days, interval, callback)
File "G:\studyfile\pythonLearn\workplace\vnpy_lme\src\vnpy\app\cta_strategy\engine.py", line 539, in load_bar
bars = self.query_bar_from_rq(symbol, exchange, interval, start, end)
File "G:\studyfile\pythonLearn\workplace\vnpy_lme\src\vnpy\app\cta_strategy\engine.py", line 145, in query_bar_from_rq
data = rqdata_client.query_history(req)
File "G:\studyfile\pythonLearn\workplace\vnpy_lme\src\vnpy\trader\rqdata.py", line 136, in query_history
adjust_type="none"
File "C:\Anaconda3\lib\site-packages\rqdatac\decorators.py", line 131, in wrap
return func(args, **kwargs)
File "C:\Anaconda3\lib\site-packages\rqdatac\services\get_price.py", line 117, in get_price
pf = get_minbar(order_book_ids, start_date, end_date, fields, duration, market)
File "C:\Anaconda3\lib\site-packages\rqdatac\services\get_price.py", line 433, in get_minbar
"get_minbar_v", order_book_ids, start_date, end_date, fields, duration, market
File "C:\Anaconda3\lib\site-packages\rqdatac\decorators.py", line 59, in wrap
return func(
args, **kwargs)
File "C:\Anaconda3\lib\site-packages\rqdatac\connection_pool.py", line 25, in execute
with self._get_connection() as conn:
File "C:\Anaconda3\lib\contextlib.py", line 112, in enter
return next(self.gen)
File "C:\Anaconda3\lib\site-packages\rqdatac\connection_pool.py", line 36, in _get_connection
conn = self._ensure_connection()
File "C:\Anaconda3\lib\site-packages\rqdatac\connection_pool.py", line 52, in _ensure_connection
if conn.is_nomal():
AttributeError: 'Connection' object has no attribute 'is_nomal'
请问策略初始化异常是怎么回事?

想根据持仓信息进行移动止损,有什么方法可以在策略中获取当前账户的持仓信息吗?

为什么有时候会显示持仓均价为0?
开盘价是1.7976931348623157e+308又是为啥?

1.vnpy中持仓都是合在一起的,有一个平均持仓成本。
如果持仓数8,是由两次开仓组成的。
可以分开进行查询,查询每一次的开仓价吗
2.什么情况下持仓会被冻结?
求dalao解答!

我现在点击合约查询是空的,是不是这个时间点无法查询呢?simnow模拟账户

已解决。
原因是工程中出现了“Unresolved import:”的错误
使用下面连接中的方案,将我电脑中C:\Anaconda3\libs文件夹添加到Libraries中问题得以解决
https://blog.csdn.net/u011311291/article/details/79139469

19:17:24 初始化CTA回测引擎
19:17:24 策略文件加载完成
19:17:24 RQData数据接口初始化成功
19:17:27 ----------------------------------------
19:17:27 IF88.CFFEX-1m开始下载历史数据
19:17:27 数据下载失败,触发异常:
Traceback (most recent call last):
File "G:\studyfile\pythonLearn\workplace\vnpy_2\src\vnpy\app\cta_backtester\engine.py", line 365, in run_downloading
data = rqdata_client.query_history(req)
File "G:\studyfile\pythonLearn\workplace\vnpy_2\src\vnpy\trader\rqdata.py", line 132, in query_history
adjust_type="none"
File "C:\Anaconda3\lib\site-packages\rqdatac\decorators.py", line 131, in wrap
return func(args, **kwargs)
File "C:\Anaconda3\lib\site-packages\rqdatac\services\get_price.py", line 117, in get_price
pf = get_minbar(order_book_ids, start_date, end_date, fields, duration, market)
File "C:\Anaconda3\lib\site-packages\rqdatac\services\get_price.py", line 433, in get_minbar
"get_minbar_v", order_book_ids, start_date, end_date, fields, duration, market
File "C:\Anaconda3\lib\site-packages\rqdatac\decorators.py", line 59, in wrap
return func(
args, kwargs)
File "C:\Anaconda3\lib\site-packages\rqdatac\thread_local.py", line 43, in execute
return self._execute(self._get_connection(), method, args, kwargs)
File "C:\Anaconda3\lib\site-packages\rqdatac\thread_local.py", line 39, in _execute
raise e
File "C:\Anaconda3\lib\site-packages\rqdatac\thread_local.py", line 34, in _execute
return conn.execute(method, *args,
kwargs)
File "C:\Anaconda3\lib\site-packages\rqdatac\connection.py", line 132, in execute
msg_type, body = self._read_one_packet()
File "C:\Anaconda3\lib\site-packages\rqdatac\connection.py", line 102, in _read_one_packet
raise get_error(code)(msg)
rqdatac.share.errors.QuotaExceeded: login session num reached MAX limit

RQdata数据下载失败,报上面的错误,这是为啥呀?

连接CTP,使用simnow模拟账号登录,无论开平下单都秒被撤,日志栏没有报错,这是为什么?

一定要仔细检查一下有没有把空格误打进去

在论坛历史贴中翻到相似问题的帖子的了 谢谢

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

沪公网安备 31011502017034号

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