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

你好,还有个问题,就是成交记录显示的是对的,两个电脑都一样,但是k线图表出了问题,时间+8:00的那个 k线图表上面成交的箭头和实际成交记录对不上,该怎么处理呢

一台电脑是以前版本的vnpy,时间正常,然后另一台电脑用的同样的数据,是最新版的vnpy,然后回测出来时间后面会多个+8:00,是什么原因造成的呢?

xiaohe wrote:

如果实盘想用的话,可以试着在on_tick里判断tick传来datetime的分钟是否有了变化,有就证明新的一分钟到了,然后把交易逻辑写在下面试试
请问该怎么写呢。。。。。我编程以前都在tb上。。。。。python不太行。。。求大神指导一下 万分感谢。

上面那个用上一根k线的收盘价会写,但是用”当前k线的开盘价“就不会了,请问该咋写呀,查了好多都没查到用开盘价写的。。。。

def on_tick(self, tick: TickData):
    """
    Callback of new tick data update.
    """
    self.bg.update_tick(tick)   

def on_bar(self, bar: BarData):
    """
    通过该函数收到新的1分钟K线推送。
    """
    am = self.am

    # 更新K线到时间序列容器中
    am.update_bar(bar)

    # 若缓存的K线数量尚不够计算技术指标,则直接返回
    if not am.inited:
        return

    if (am.close[-1]>3000):
        price = bar.close_price+5
        if self.pos == 0:
            self.buy(price, 1)      

比如,螺纹钢价格高于3000点做多。 看了好多例子,基本用的都是上一根k线的收盘价大于3000,然后下一根k线做多。我想用当前k线的“开盘价”大于3000点做多,该怎么写呢?

在git上下载了backtesting_demo.ipynb,然后依次点击,却打不开,请问是哪个环节出了问题。。。。
description

description

description

感谢大神解答 谢谢~

还有个时间问题,想表达在k线时间为2020年3月20日10:45分的时候,让变量n=0,该怎么编写呢
if(.......):
self.n=0
请问括号里面该怎么写呢?

在回测的时候,想在第100根k线的时候,让变量n=0 该怎么编写呢
if(.......):
self.n=0
请问括号里面该怎么写呢?

一心量化 wrote:

判断是否金叉

cross_over = (self.fast_ma0 == self.slow_ma0 and
              self.fast_ma1 < self.slow_ma1)

# 判断是否死叉
cross_below = (self.fast_ma0 == self.slow_ma0 and
               self.fast_ma1 > self.slow_ma1)

上边这种情况考虑了吗
哦 是的。。。。尴尬。。。居然是这个小问题。。。谢谢

用同样的数据同样的模型,同样的参数,回测起来却不一样。
description

我想用全局变量n 用global ,发现用不了。。。。。请问该怎么解决呢
description

我想用一个全局变量n来记录。当第一次满足k线开仓,n=1,平仓n=0.以后的开仓条件有n!=1。开仓的时候用 global n n=1来记录。回测却发现n实际还是0,没法变成全局变量修改,是哪里出了问题呢。。。。.

103根k线也满足开仓条件,请问有什么办法能够避免系统在第103根k线自动开仓(避免重复开仓)。

合成的5mink线 是从21:00开盘后计算,还是从20:59集合竞价产生的k线开始计算

有不用本地时间过滤集合竞价的方法吗。

zly111 wrote:

数据库里没数据?
你好,有数据的。我用1分钟k线的代码可以模拟交易,合成5分钟k线的代码就没法模拟交易,变量不显示。。。。。不知道啥情况。。。

© 2015-2022 微信 18391752892
备案服务号:沪ICP备18006526号

沪公网安备 31011502017034号

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