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

用Python的交易员 wrote:

用这里的脚本run.py来启动:https://github.com/vnpy/vnpy/tree/master/examples/vn_trader

每个VN STATION只能启动一个Trader
这个链接 已经失效了。。。

收到 谢谢

我的意思是说可能是显示代码的问题,在K线数据的 OHLC 都一样的时候,显示就会出现问题
请问 这个回测K线图表的 py文件 叫啥。。我找了一下没找到

我试了其他股票信息,比如00700.hk K线数据显示是正常的,所以我怀疑是 当OHLC值为一样的时候 才会出现这种情况。。。。。
description

我这里看了一下 处理后的数据表头是这样的,请问是表头错了么?

BarData(
gateway_name='FUTU',
symbol='02400',
exchange=<Exchange.SEHK: 'SEHK'>,
datetime='2020-06-02 16:00:00',
interval=<Interval.MINUTE: '1m'>,
volume=10600,
open_interest=0,
open_price=26.1,
high_price=26.15,
low_price=26.0,
close_price=26.0
)]

我改了一下 下载数据的接口,从富途上下载的港股的股票数据

网盘好像 用不了哦

李怡然 wrote:

可以查看这篇帖子,对数据入库有详细介绍vn.py数据入库
我查看了一下这个帖子,尝试这样进行修改,以达到自动分表入库的诉求,不知道能否可以达到效果
vnstudio\Lib\site-packages\vnpy\app\data_recorder\engine.py文件

    def run(self):
        """"""
        while self.active:
            try:
                task = self.queue.get(timeout=1)
                task_type, data = task
                collection_name = data.vt_symbol
                if task_type == "tick":
                    collection_name = collection_name + '_tick'
                    database_manager.save_tick_data([data], collection_name)
                elif task_type == "bar":
                    collection_name = collection_name + '_bar'
                    database_manager.save_bar_data([data], collection_name)

            except Empty:
                continue

            except Exception:
                self.active = False

                info = sys.exc_info()
                event = Event(EVENT_RECORDER_EXCEPTION, info)
                self.event_engine.put(event)

请问 2.1.3.1 解决此问题了么?

哦 好吧 那我该如何进行调试呢

description

时间戳还跟你的不太一样 哈哈

Traceback (most recent call last):
File "E:/vnstudio/Lib/site-packages/vnpy/trader/database/database_mongo.py", line 9, in <module>
from .database import BaseDatabaseManager, Driver
ModuleNotFoundError: No module named 'main.database'; 'main' is not a package

按照楼主的描述对
vnpy/trader/database/database.py 中的 save_bar_data 和 save_tick_data
vnpy/trader/database/database_mongo.py 中的 save_bar_data 和 save_tick_data
的四个文件进行 修改,但数据还是会被存储在 db_bar_data 和 db_tick_data 中,并未存储在对应的子表里............

补充一点: HistoryRequest 这个需要在开头进行引入,否则报错
from vnpy.trader.object import (
TickData,
OrderData,
TradeData,
AccountData,
ContractData,
PositionData,
SubscribeRequest,
OrderRequest,
HistoryRequest,
CancelRequest
)

看上去 是类型错了字符串类型 不能做 时间类型 处理 ,
item['bob'] = item['bob'].replace('+08:00', ""),你替换的这个字符串 是时区标记,我不太清楚 如果不去掉会怎么样
你这里 已经把它当字符串类型进行替换了

我之前遇到过这问题,现在用了比较笨的办法

1.把时区字符串 替换之后存入CSV
2.读取CSV文件时 加个参数 ,比如 :history = pandas.read_csv(file, parse_dates=True, index_col=0)
里面的 parse_dates=True 这个参数,你可以百度一下了解试试

PS 我也是个新手,以上仅供参考
当然你可以看一下这个帖子:
https://www.jianshu.com/p/f80586446151

新人一个,之前电脑上装的是python 3.7.6
最近在学习VNPY, 但是发现用的是3.7.0的版本,而且VNPY默认启动的也是3.7.0的版本,请教两个问题
1.VNPY是否可以用 3.7.6版本的python

  1. 如果可以,该怎么将默认调用的python版本变更为我已经安装好的3.7.6版本
© 2015-2022 微信 18391752892
备案服务号:沪ICP备18006526号

沪公网安备 31011502017034号

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