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