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

请教:
1)
我在普通的Python文件中执行如下代码,结果为True。即exec()函数正常执行。
p_par = '2 > 1'
p_result = False
exec('p_result = %s' % p_par)
print(p_result)

2)
但在策略的on_start(0函数中,执行却为False。即exec()不起作用,请问是为什么,该如何修改?
def on_start(self):
p_par = '2 > 1'
p_result = False
exec('p_result = %s' % p_par)
print(p_result)

VeighNa Trader 3.2.0报错,找不到列 turnover。只是启动了行情记录功能,还没跑策略呢,就报这个错误,请问如何解决???

Traceback (most recent call last):
File "C:\veighna_studio\lib\site-packages\peewee.py", line 3197, in execute_sql
cursor.execute(sql, params or ())
sqlite3.OperationalError: table dbbardata has no column named turnover

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
File "C:\veighna_studio\lib\site-packages\vnpy_datarecorder\ui\widget.py", line 157, in process_exception_event
raise exc_info[1].with_traceback(exc_info[2])
File "C:\veighna_studio\lib\site-packages\vnpy_datarecorder\engine.py", line 86, in run
self.database.save_bar_data(data)
File "C:\veighna_studio\lib\site-packages\vnpy_sqlite\sqlite_database.py", line 159, in save_bar_data
DbBarData.insert_many(c).on_conflict_replace().execute()
File "C:\veighna_studio\lib\site-packages\peewee.py", line 1927, in inner
return method(self, database, args, **kwargs)
File "C:\veighna_studio\lib\site-packages\peewee.py", line 1998, in execute
return self._execute(database)
File "C:\veighna_studio\lib\site-packages\peewee.py", line 2798, in _execute
return super(Insert, self)._execute(database)
File "C:\veighna_studio\lib\site-packages\peewee.py", line 2511, in _execute
cursor = database.execute(self)
File "C:\veighna_studio\lib\site-packages\peewee.py", line 3210, in execute
return self.execute_sql(sql, params, commit=commit)
File "C:\veighna_studio\lib\site-packages\peewee.py", line 3194, in execute_sql
with exception_wrapper:
File "C:\veighna_studio\lib\site-packages\peewee.py", line 2970, in exit
reraise(new_type, new_type(exc_value,
exc_args), traceback)
File "C:\veighna_studio\lib\site-packages\peewee.py", line 191, in reraise
raise value.with_traceback(tb)
File "C:\veighna_studio\lib\site-packages\peewee.py", line 3197, in execute_sql
cursor.execute(sql, params or ())
peewee.OperationalError: table dbbardata has no column named turnover

由于在SimNow中一直没抓取到委托分多次成交的状态,故求助各位大佬帮助解答,谢谢啦!
请问:
当委托不是一次性全部成交,而是分多次成交时,OrderData中的traded、price、status如何变化?
例如:以委托价80元买入100手时,OrderData的属性是这么变化的吗?
第一次以50元的价格成交60手,此时OrderData的traded=60,price=50,status=部分成交?
第二次以70元的价格成交40手,此时OrderData的traded=100,price=(50+70)/2,status=全部成交?

申请了RQData的试用帐号后,下载完了IF88的历史数据,回测时报错。
报错如下:
description
当电脑重新联网后,回测就正常了。
请问:
回测数据下载成功后,还需要机器是联网的状态吗?

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

沪公网安备 31011502017034号

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