我在策略(继承CtaTemplate)里调用的
self.bg = BarGenerator(self.on_bar, window=1, on_window_bar=self.on_H1_bar, interval=Interval.HOUR)
但是最终bg出来的小时k,上午只有9点和10点开始的,然后就变成下午13点开始的了。但是我从rqdata下的原始数据上午有9,10和10点半三个时间段的。请问这两者应该怎么统一呢?按理说barGenerator也是从数据库里读的才对呀。
下面是mysql原始数据
例如给定arraymanager,把里面的缺口上限和下限显示出来的这种。
关于整体python signal和slot我略懂了一些,我知道自定义的signal需要在类init之前先定义signal的参数,然后再emit一下,再创建slot接收一下。
但是对于已有的(predefined)signal.connect的里的参数我觉得不好理解,例如下面的是GUI课程46中的简易代码。
class OrderMonitor(BaseMonitor):
def __init__(self, main_engine: MainEngine, event_engine: EventEngine) -> None:
……
self.itemDoubleClicked.connect(self.cancel_order)
def cancel_order(self, cell: MonitorCell) -> None:
我的问题就是为啥itemDoubleClicked这个signal connect的cancel_order里的参数会是一个MonitorCell呢?请问哪里规定了这个参数是啥的?
算了,我找到答案了。官网documentation里写着
PySide2.QtWidgets.QTableWidget.itemDoubleClicked(item)
Parameters:
item – PySide2.QtWidgets.QTableWidgetItem
我在使用客户端的历史数据管理模块功能,我进去了做了本地数据库配置,就是database. host name port user password之类的,我使用的是mysql community。然而在database.database上我没改,还是之前默认的'database.db',然后程序报错了。
File "C:\veighna_studio\lib\site-packages\pymysql\protocol.py", line 221, in raise_for_error
err.raise_mysql_exception(self._data)
File "C:\veighna_studio\lib\site-packages\pymysql\err.py", line 143, in raise_mysql_exception
raise errorclass(errno, errval)
peewee.OperationalError: (1049, "Unknown database 'database.db'")
现在的问题是这个模块一打开就死了,我没法进去再改参数了,这个问题应该怎么解决?另外database.database应该改成什么参数呢?