Merge pull request #1981 from 1122455801/csv_loader.md__0731
Update Csv loader
This commit is contained in:
commit
e41c133de2
@ -10,29 +10,28 @@ CSV载入模块在vnpy根目录下vnpy\app\csv_loader文件夹内,engine.py里
|
||||
- CSV表头信息:日期时间、开盘价、最高价、最低价、收盘价、成交量
|
||||
|
||||
```
|
||||
self.file_path: str = ''
|
||||
self.file_path: str = ""
|
||||
|
||||
self.symbol: str = ""
|
||||
self.exchange: Exchange = Exchange.SSE
|
||||
self.interval: Interval = Interval.MINUTE
|
||||
|
||||
self.datetime_head: str = ''
|
||||
self.open_head: str = ''
|
||||
self.close_head: str = ''
|
||||
self.low_head: str = ''
|
||||
self.high_head: str = ''
|
||||
self.volume_head: str = ''
|
||||
self.datetime_head: str = ""
|
||||
self.open_head: str = ""
|
||||
self.close_head: str = ""
|
||||
self.low_head: str = ""
|
||||
self.high_head: str = ""
|
||||
self.volume_head: str = ""
|
||||
```
|
||||
注:以sql数据库为例:
|
||||
合约信息中合约代码是将csv中数据存入至何种品种数据库中。例如在合约代码中填写rb1909,在交易所中填写SHFE,在本地数据库中会有symbol和exchange两个键值用于索引。
|
||||
在csv中,日期时间一列,格式需要为str格式。
|
||||
以SQL数据库为例:把上期所的IF1909的历史数据插入到数据库中,那么合约代码应该填写rb1909,交易所中填写SHFE,在本地数据库中会有symbol和exchange两个键值用于索引。
|
||||
|
||||
|
||||
|
||||
## 数据载入
|
||||
|
||||
从文件路径中读取CSV文件,然后在每一次迭代中载入数据到数据库中。
|
||||
```
|
||||
with open(file_path, 'rt') as f:
|
||||
with open(file_path, "rt") as f:
|
||||
reader = csv.DictReader(f)
|
||||
|
||||
for item in reader:
|
||||
@ -42,7 +41,7 @@ CSV载入模块在vnpy根目录下vnpy\app\csv_loader文件夹内,engine.py里
|
||||
|
||||
载入数据的方法可以分成2类:
|
||||
- 直接插入:合约代码、交易所、K线周期、成交量、开盘价、最高价、最低价、收盘价、接口名称
|
||||
- 需要处理:日期时间(根据其相应的时间格式,通过strptime()转化成时间元祖)、vt_symbol(合约代码.交易所格式,如rb1905.SHFE)
|
||||
- 需要处理:日期时间(根据其相应的时间格式,通过strptime()转化成时间元组)、vt_symbol(合约代码.交易所格式,如rb1909.SHFE)
|
||||
|
||||
注意:db_bar.replace()用于数据更新,即把旧的数据替换成新的。
|
||||
```
|
||||
|
Loading…
Reference in New Issue
Block a user