因为策略写的乱七八糟的啊
同样一个条件内部,出现多次sell/cover,什么鬼?
看你的注释:
self.sell(self.entry_price,1,True) # 下空头仓位
sell是平仓,short才是开空啊。
同一个判断条件内,你多次平空,接着开空,逻辑就不对
反正就是乱七八糟,没法看
满仓有2种定义,一个是本金满仓,一个是加上动态盈亏的满仓。
第一种好实现,第二种需要额外计算盈亏会麻烦一些。
不过,毫无意义……如果绩效会让你感觉能博一把,那么还是不要这么做的好,爆仓的概率几乎是200%
xinhexushao wrote:
kingmo888 wrote:
修改策略架构,改为基于tick发单。
昨天修改了一下策略,效果确实好一些,感谢指点
客气
只有vnpy.com是。
其他的都是某些黑心的弱智弄的山寨
稳妥的办法,直接删除.vntrader,然后重新配置
如果查询合约时找不到任何相关信息的话,
看下gateway里是不是过滤掉了。
具体你可以改造一下cta引擎了,注册一下on_time,然后在on_time上执行策略的on_time。
这样做的好处是改造起来很快,执行起来也比较方便,只要策略有这个,就可以执行。
坏处就是引擎下挂载的所有策略的on_time是遍历执行的,不过速度快了也没太大差别。
看一下日志窗口显示的日志是什么。
不过大概率没有,因为看起来你没写价格?
搞的指标很专业!
修改策略架构,改为基于tick发单。
先支持,再mark
1、策略中,可通过self.main_engine.get_account(vt_accountid)来获取账户的资金信息,该信息由gateway接口定时事件轮询维护。
2、不会影响。你啥策略啊,6秒变1次权益都会有影响,很多第三方的账户交易端你老刷资金,还会有时间间隔的限制呢。
没研究过仿真,既然是期货,simnow又可以用了,还用paper干嘛呢?
那是1秒。。不是1分
另外,如果你按照tick驱动来判断时间,tick的时间戳可能已经是10:50:00.7这样了
去ui下找。
am.xxxx[-start:].max()
目前vnpy的界面风格是基于qdarkstyle的,所以可以直接在qdarkstyle上做一下改动。
在qdarkstyle库目录下,修改init.py文件,添加字符串风格变量TextStyle,具体内容在文末。
修改函数_load_stylesheet,在return上方添加一行
stylesheet +=TextStyle
即可。
无损变动。
TextStyle = """
QMessageBox QPushButton[text="OK"] {
qproperty-text: "好的";
}
QMessageBox QPushButton[text="Open"] {
qproperty-text: "打开";
}
QMessageBox QPushButton[text="Save"] {
qproperty-text: "保存";
}
QMessageBox QPushButton[text="Cancel"] {
qproperty-text: "取消";
}
QMessageBox QPushButton[text="Close"] {
qproperty-text: "关闭";
}
QMessageBox QPushButton[text="Discard"] {
qproperty-text: "不保存";
}
QMessageBox QPushButton[text="Don't Save"] {
qproperty-text: "不保存";
}
QMessageBox QPushButton[text="Apply"] {
qproperty-text: "应用";
}
QMessageBox QPushButton[text="Reset"] {
qproperty-text: "重置";
}
QMessageBox QPushButton[text="Restore Defaults"] {
qproperty-text: "恢复默认";
}
QMessageBox QPushButton[text="Help"] {
qproperty-text: "帮助";
}
QMessageBox QPushButton[text="Save All"] {
qproperty-text: "保存全部";
}
QMessageBox QPushButton[text="&Yes"] {
qproperty-text: "是";
}
QMessageBox QPushButton[text="Yes to &All"] {
qproperty-text: "全是";
}
QMessageBox QPushButton[text="&No"] {
qproperty-text: "否";
}
QMessageBox QPushButton[text="N&o to All"] {
qproperty-text: "全否";
}
QMessageBox QPushButton[text="Abort"] {
qproperty-text: "终止";
}
QMessageBox QPushButton[text="Retry"] {
qproperty-text: "重试";
}
QMessageBox QPushButton[text="Ignore"] {
qproperty-text: "忽略";
}
"""
结论:没有任何影响。
原因:
两个软件统计口径有差异。
看了下你的持仓,ni存在今仓就不分析了。恰好ag全部是昨仓,可以拿来说明:
昨日ag2108结算价为5717,对ctp来说,登录CTP后推送过来的持仓价格如果是隔夜持仓(夜盘前开的仓),按照规则其开仓价以昨日结算价展示。但是不影响你的实际盈亏。
到你平仓的时候,依然是开仓价到平仓价的实际价格的价差。
优秀。
另外,默认的no ui模式就可以呀