以文本方式查看主题 - 金字塔客服中心 - 专业程序化交易软件提供商 (http://weistock.com/bbs/index.asp) -- 金字塔软件问题提交 (http://weistock.com/bbs/list.asp?boardid=2) ---- 全自动交易故障报告 (http://weistock.com/bbs/dispbbs.asp?boardid=2&id=47944) |
-- 作者:kepler -- 发布时间:2013/1/21 14:27:01 -- 全自动交易故障报告 金字塔全自动交易问题,故障. 坏境: 1 最版本免费版的模拟账号 2 一个框架下8个窗口,分别是8个不同的品种,均采用5分钟周期. 3 8个品种使用同一个策略文件mytest,见后面策略文件代码. 4 启动图标程式化交易,固定时间间隔 1秒 信号消失次周期自动恢复持仓 锁定画面所有品种 没有选择高频 5 CPU I7 3730 使用率9%左右,其中winstock使用率2-4%,内存8G,有足够剩余内存,win7系统. 故障现象: 1 交易输出P3不是连续的跳动,而是存在跳帧.有时跳3,4秒.即程序有可能无法保证每秒中执行一次; 2 策略文件中的限制理论上每个品种只有1手持仓,但实际上有2,3,4,5手的都有. 3 策略文件中的限制,理论上每个品种委托时间的秒数应该是56,但实际上多数在58秒,57秒,偶尔有56秒. 说明: 该策略文件目的旨在对同时交易多个品种,实现全自动交易,指令发出时间仅限于K线结束前N秒,发出的价格为当前的对手价,并且能够在指令发出后K线结束前的N秒内信号消失能够起到校验作用,同时希望可以设定几秒未成交自动撤单追价的功能,确保实际交易和理论的完全一致(在牺牲一些点位的基础上,等待修正同步前允许存在几秒的偏差). 交易策略代码如下: //交易手数: tn:=1; //持续下单次数 cx:=1; //提前下单量(秒) xd:=5; //交易时间区间 p1:=time>091500 and time<=144500; p2:=if(islastbar,dynainfo(207),time); p3:time0-timetot0(p2)linethick0; IF P3<XD THEN BEGIN if C>o then sellshort(holding<0,0,thisclose);//p3<=xd 表是一根k线走完前xd秒开始下单 if c<o then sell(holding>0,0,thisclose); if c<o then buyshort(holding=0,tn,thisclose); if c>o then buy(holding=0,tn,thisclose); END { 平空:SELLSHORT(PK,20%,THISCLOSE); //平空信号 开多:BUY(KD AND HOLDING=0,20%,THISCLOSE); //开多信号 平多:SELL(PD,20%,THISCLOSE); //平多信号 开空:BUYSHORT(KK AND HOLDING=0,20%,THISCLOSE); //开空信号 } //信号语句排列规则——先平后开 //“费率设置”按钮——用于合理设置模型“费率”,以便在图形上正确输出如下帐户信息: 持仓:holding,linethick0; 资产:asset,noaxis; 可用现金:cash(0),linethick0; |
-- 作者:kepler -- 发布时间:2013/1/21 14:28:33 -- 请帮忙检查,问题出在哪里,谢谢. |
-- 作者:jinzhe -- 发布时间:2013/1/21 14:36:16 -- 如果希望策略精确掉1秒或者更小的,那么用后台或者VBA,不要用图表了 |
-- 作者:kepler -- 发布时间:2013/1/21 15:37:07 -- 我就要求到1秒钟.偶尔有延时1秒钟也可以接受,但不能总是延时.而且现在我这个策略实际上是空策略,没有运行任何实际上的计算,如果加上一定程度的运算量,这个延时跳帧可能就不止延时这么一点了. 另外,后台或者VB又如何来控制呢?不能接受程序运行完全没有监控,希望在图表上可以同步显示出来当前的交易信息,使得后台万一出现下单的故障,我任然可以把策略当指标,电话或者下单软件进行手动操作. 还有校验机制,对多个品种如何设置呢? 对于上面代码上中发出的委托(thisclose),是当前最新价,还是当前对手价? (我希望是对手价)对于已发委托,几秒未能成交如何进行追价设置? 我愿意牺牲点位,我愿意接受等待几秒钟的系统校验时间,但是不能接受,实际交易指令未能按照策略指定的执行. |
-- 作者:jinzhe -- 发布时间:2013/1/21 15:50:15 -- 8个图表非常影响运行效率,但是后台监控8个品种就不会 |