vn.py中有没有一个函数可以查询所有分批次买入开仓的平均持仓价格? 望回答,万分感激
用Python的交易员 wrote:
- tick合成1分钟线
- 1分钟线再合成N分钟线(在on_bar函数下)
老师您好,我纠结的是多周期策略,在def on_tick(self, tick: TickData中的
self.bg5.update_tick(tick),其中不应该是self.bg.update_tick(tick)来合成1分钟吗,怎么是bg5来合成1分钟,bg5不是代表5分钟k线吗?困惑self.bg5.update_tick(tick)中bg5代表的意思,老师,self.bg5和update_tick(tick)合在一起又是什么意思?望解答,万分感激
如图所示:
def on_tick(self, tick: TickData):
"""
Callback of new tick data update.
"""
self.bg5.update_tick(tick)
老师好,请教一个问题,在多周期策略和cuatro_strategy策略中,on_tick回调函数里面,tick均是直接灌给self.bg5.update_tick(tick),但是在vn.py中,BarGenerator不是应该先tick合成1分钟k线,然后1分钟k线再合成5分钟k线吗?怎么是直接self.bg5.update_tick(tick),,,tick直接合成5分钟k线呢?望回答,万分感激
点个赞
Python 2上的最终版本v1.9.2 LTS比Python3上的master版本快的原因:
1:Python2本身比python3快10%-20%左右吗?
2:Python 2上的最终版本v1.9.2 LTS上提供了pyc文件的原因吗?
3:Python 2上的最终版本v1.9.2 LTS比Python3上的master优化的更好?
太有心了,太能干了
开拓者TB中的头寸监控器和交易助手功能非常实在,vnpy有开发相关模块的计划吗?
开拓者TB中的监控器:查询系统信号与帐号持仓是否匹配,若不匹配的话,可以一键 同步,也可自动同步,将该平的平,该开的开,从而实现帐号持仓与系统一致。
开拓者TB中的交易助手:对未成交交易的撤单 以及可再重发的动作,自动交易中,启动交易助手,以提高成交概率。
功能如下图所示:
.
如何在python3中移植Python 2的交易复制TradeCopy功能(v1.9.2 LTS)? 据说不是很复杂,但是实践起来又毫无经验,望老师指点
用Python的交易员 wrote:
- 后者,你可以自定义修改成前者
- 可以,你随便改名字好了,就是个名字而已
问题:如何自定义BarGenerator的最大值可以是60以内的任意数字呢?需要改动的代码多吗?如何修改了
用Python的交易员 wrote:
CTA策略引擎中,提供了本地停止单功能实现止损,止盈你直接挂个限价单就行了
1:收盘后,停止单和限价单是否会失效?如果失效了,次日如何保持系统开平仓信号与账户实际持仓信号一致呢?
2:重启电脑后,停止单和限价单是否会失效?如果失效了,次日如何保持系统开平仓信号与账户实际持仓信号一致呢?vnpy可以实现类似开拓者TB监控器的功能吗?如果暂时无法实现, vnpy有开发相关模块的计划吗?
1:CTP接口并不支持停止单,只有市价、限价、FAK、FOK,如何实现停止单等止盈止损呢?
2:VNPY如何实现类似吊灯止损的方法呢?是通过写在策略里面还是通过类似IB盈透提供的停止单或者限价单来实现呢?
如下所示,vnpy所有自带策略中bar.close_price - 5或者bar.close_price + 5中的5是5跳吗?还是其他什么意思呢?
# 当前无仓位
if self.pos == 0:
if self.ma_trend > 0 and self.rsi_value >= self.rsi_long:
self.buy(bar.close_price + 5, self.fixed_size)
elif self.ma_trend < 0 and self.rsi_value <= self.rsi_short:
self.short(bar.close_price - 5, self.fixed_size)
# 持有多头仓位
elif self.pos > 0:
if self.ma_trend < 0 or self.rsi_value < 50:
self.sell(bar.close_price - 5, abs(self.pos))
# 持有空头仓位
elif self.pos < 0:
if self.ma_trend > 0 or self.rsi_value > 50:
self.cover(bar.close_price + 5, abs(self.pos))
VNPY自带的MultiTimeframeStrategy策略中self.bg5.update_tick(tick)只有如下所示一排,而有的vnpy粉丝又在def on_tick(self, tick: TickData)中写了两个,有些困惑,这样有什么区别吗?
def on_tick(self, tick: TickData):
"""
Callback of new tick data update.
"""
"""收到行情TICK推送(必须由用户继承实现)"""
# 只需要要在一个BarGenerator中合成1分钟K线
self.bg5.update_tick(tick)
vnpy粉丝写的模板如下所示:
def on_tick(self,tick:TickData):
"""Tick更新"""
self.bg2H.update_tick(tick)
self.bg15min.update_tick(tick)#bg会自动判断当前分钟是否已经走完,合成1分钟线
这两段代码本质有什么区别吗? 望回答,万分感激!
1:BarGenerator的最大值可以是60以内的任意数字吗?例如:合成7分钟、9分钟可以吗? 还是必须是60分钟整除的分钟数才可以?
2:self.bg5.update_tick(tick)和self.bg_x.update_tick(tick)中的bg5和bg_x可以自定义吗?设置成bg5或者bg_x对策略有影响吗?
望回答,万分感激!
用Python的交易员 wrote:
策略里添加一个参数,叫他bar_window好了。
self.bg = BarGenerator(self.on_bar, self.bar_window, self.on_xmin_bar)
然后就可以正常优化了
@用Python的交易员,老师您好,请问1分钟K线是否可以合成1-60分钟内的任意分钟数呢? 例如合成7分钟K线可以吗?
有办法查看多进程参数优化剩余进度吗?
策略已经全速优化了3个小时了,CPU风扇嗡嗡的一直高速运转,无法查看剩余进度,请教一下各位老师,有办法查看优化进度完成了百分之几十吗?万分感激,望回答
# 创建K线合成器对象
self.bg5 = BarGenerator(self.on_bar,5, self.on_5min_bar)
self.am5 = ArrayManager()
self.bg15 = BarGenerator(self.on_bar,15, self.on_15min_bar)
self.am15 = ArrayManager()
如何把K线合成器中的**5分钟或者15分钟设置为一个参数进行优化**? 望回答,万分感激
toku wrote:
Rename Qt5Bluetooth.dll to Qt5Bluetooth.dll1 in folder : /site-packages/PyQt5/Qt/bin
老师您好,请教一下,这是什么原因造成的呢?