vn.py量化社区
By Traders, For Traders.
Member
avatar
加入于:
帖子: 46
声望: 1

陈老师,vnpy中价格跳动一个最小合约乘数,代码应该怎么写呢?
比如,螺纹是一个点一个点的跳动, 股指最小是0.2个点跳动。 如果我都写一跳的话,在股指上和在螺纹上就差太多了

直接举个例子。比如螺纹,我想的是,价格回落到开仓位置往下20个点,就离场。所以就写了 self.long_stop = self.buy - 20 * N
这个 N ,我想的就是合约的最小跳动单位。

多说一句,老师课程中讲到超价5块钱入场时,是直接用 bar.close_price + 5,直接加了5块钱,但是不能啥品种都加5块钱吧,螺纹、棉花、黄金,都直接按 +5 算的话,之间差别就太大了。

所以,我想的是按照每个品种的最小跳动来写,比如螺纹,以5个点的超价来下单的话,就写 bar.close_price + 5 N,这个 N 就是每个合约的跳动点位。
如果是棉花,想以10个点的超价来下单的话,就写 bar.close_price + 10
N,以此类推。

Member
avatar
加入于:
帖子: 46
声望: 1

description

description

另外,陈老师,我还遇到一个报错的问题。 我翻译报错,说是【”类型错误:不支持+的操作数类型:“方法”和“int”“】
我想的是,在开仓位置算起,如果盘中亏损20个点的话,就离场。
所以,第172行空头止损的代码,写 self.short + self.fixed_sl 这样不对吗? 不是开空位置 加上 固定止损200块钱吗? (20个点直接在螺纹中换算成200块钱了)

Administrator
avatar
加入于:
帖子: 3588
声望: 190
  1. 我们在2.1.2版本中,给CTA策略模板增加了get_pricetick函数,来获取最小价格跳动,之前版本是没有的
  2. self.short/self.buy是下单用的委托函数,你得用自己记录价格的数据字段
Member
avatar
加入于:
帖子: 46
声望: 1

【self.short/self.buy是下单用的委托函数】,就是说只是用来下单,但不是开仓的具体点位是吗?

【用自己记录价格的数据字段】,老师,这个能不能说的详细一点呢?怎么记录实际的开仓价格呢?

我想的是用开仓价格作为一个锚点,来计算其他的止损价格。

Member
avatar
加入于:
帖子: 138
声望: 25

@好运来 是想获取开仓均价吧,可以看我的帖子https://www.vnpy.com/forum/topic/2167-cha-xun-cang-wei-chi-cang-jun-jie-wei-cheng-jiao-wei-tuo-dan-yi-ge-han-shu-gao-ding
调用下long_price/short_price

© 2015-2019 上海韦纳软件科技有限公司
备案服务号:沪ICP备18006526号-3