vnpy数据源和本地数据基础学习

您所在的位置:网站首页 从数据库获取数据存到本地怎么操作 vnpy数据源和本地数据基础学习

vnpy数据源和本地数据基础学习

2024-07-13 04:50| 来源: 网络整理| 查看: 265

vnpy2.0.7 没有改动 使用下面的 ` from vnpy.trader.constant import Exchange, Interval #交易所,kline周期类型 from vnpy.trader.object import BarData #类名驼峰命名 from vnpy.trader.database import database_manager #对象小写,中间下划线 CHINA_TZ = pytz.timezone("Asia/Shanghai") #时区 with open("if_data.csv") as f: reader = csv.DictReader(f)

bars = [] for d in reader: dt = datetime.strptime(d["datetime"], "%Y-%m-%d %H:%M:%S") dt = CHINA_TZ.localize(dt)#带上时区 bar = BarData( symbol=d["symbol"], exchange=Exchange(d["exchange"]), interval=Interval.MINUTE, datetime=dt, open_price=d["open"], high_price=d["high"], low_price=d["low"], close_price=d["close"], volume=d["volume"], open_interest=d["open_interest"], gateway_name="DB" ) bars.append(bar)#添加到列表 database_manager.save_bar_data(bars)

` 载入.csv文件时,发生下面的报错,请问如何解决?

Traceback (most recent call last): File "C:\Users\Administrator\AppData\Local\Programs\Python\Python37\lib\site-packages\peewee.py", line 2829, in execute_sql cursor.execute(sql, params or ()) sqlite3.IntegrityError: NOT NULL constraint failed: dbbardata.turnover

During handling of the above exception, another exception occurred:

Traceback (most recent call last): File ".\load_data_36.py", line 34, in database_manager.save_bar_data(bars) File "C:\Users\Administrator\AppData\Local\Programs\Python\Python37\lib\site-packages\vnpy\trader\database\database_sql.py", line 373, in save_bar_data self.class_bar.save_all(ds) File "C:\Users\Administrator\AppData\Local\Programs\Python\Python37\lib\site-packages\vnpy\trader\database\database_sql.py", line 148, in save_all DbBarData.insert_many(c).on_conflict_replace().execute() File "C:\Users\Administrator\AppData\Local\Programs\Python\Python37\lib\site-packages\peewee.py", line 1698, in inner return method(self, database, args, **kwargs) File "C:\Users\Administrator\AppData\Local\Programs\Python\Python37\lib\site-packages\peewee.py", line 1769, in execute return self._execute(database) File "C:\Users\Administrator\AppData\Local\Programs\Python\Python37\lib\site-packages\peewee.py", line 2473, in _execute return super(Insert, self)._execute(database) File "C:\Users\Administrator\AppData\Local\Programs\Python\Python37\lib\site-packages\peewee.py", line 2236, in _execute cursor = database.execute(self) File "C:\Users\Administrator\AppData\Local\Programs\Python\Python37\lib\site-packages\peewee.py", line 2842, in execute return self.execute_sql(sql, params, commit=commit) File "C:\Users\Administrator\AppData\Local\Programs\Python\Python37\lib\site-packages\peewee.py", line 2836, in execute_sql self.commit() File "C:\Users\Administrator\AppData\Local\Programs\Python\Python37\lib\site-packages\peewee.py", line 2627, in exit reraise(new_type, new_type(exc_args), traceback) File "C:\Users\Administrator\AppData\Local\Programs\Python\Python37\lib\site-packages\peewee.py", line 178, in reraise raise value.with_traceback(tb) File "C:\Users\Administrator\AppData\Local\Programs\Python\Python37\lib\site-packages\peewee.py", line 2829, in execute_sql cursor.execute(sql, params or ()) peewee.IntegrityError: NOT NULL constraint failed: dbbardata.turnover



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3