一个简单的交易系统,用来测试,但好象不能正常开、平仓:
TBUY(close>=设定价格+增量,手数); {开多,设定的价格上做多}
TSELL(close<=设定价格+增量-止损点数,手数); {平多,下破止损}
TBUYSHORT(close<=设定价格+增量-止损点数-1,手数); {开空,设定的价格下做空}
TSELLSHORT(close>=设定价格+增量-1,手数); {平空,上破止损}
请问版主这公式有什么问题吗?
周期:日线
设定价格、增量、止损点数、手数为参数,且数值正确。
监控RB1002,快速计算应设多少合适?300可以吗?怎么确定?
我的要求很简单,就是要能在自己设定的价格上做多,下破止损,在自己设定的价格下做空,上破止损。
但我试了好久,但还是没能正常运行,有时是开了多,但去没触发止损,有时应是开多,但却开了空。
如果将“设定价格”改为OPEN可以达到在开盘价上做多,其下做空,带止损的功能吗?
就这么简单的目的,我都没做到,为了能进行程式化交易,我从招商转到海通,但我试用了一个月了,
现在还没法正常使用金字塔,请老师多多指点。
少了交易类型(lmt\stp\mkt)
...,手数,mkt);
改了一下,您看行吗?
开多条件:=CLOSE>=买价;
平多条件:=CLOSE<=买价-止损点数;
开空条件:=CLOSE<=卖价;
平空条件:=CLOSE>=卖价+止损点数;
TBUY(开多条件,手数,mkt);
TSELL(平多条件,手数,mkt);
TBUYSHORT(开空条件,手数,mkt,0,0);
TSELLSHORT(平空条件,手数,mkt,0,0);
BUY(sfilter(开多条件,平多条件),手数,THISCLOSE);
SELL(sfilter(平多条件,开多条件 OR 开空条件),手数,THISCLOSE);
BUYSHORT(sfilter(开空条件,平空条件),手数,THISCLOSE);
SELLSHORT(sfilter(平空条件,开多条件 OR 开空条件),手数,THISCLOSE)
公式:
{先平后开!};
开空条件:=CLOSE<=卖价;
平空条件:=CLOSE>=卖价+止损点数;
开多条件:=CLOSE>=买价;
平多条件:=CLOSE<=买价-止损点数;
TSELL(平多条件,手数,mkt);
TSELLSHORT(平空条件,手数,mkt);
TBUY(开多条件,手数,mkt);
TBUYSHORT(开空条件,手数,mkt);
参数:(买价4371,卖价4367,止损点数2,手数5)
执行结果:
序号 品种名称 下单时间 类型 交易量 价格 幅度 盈亏 流水号
1 RB05螺纹钢1005 2009/11/30 09:29:25 开空 1 4142 0
2 RB05螺纹钢1005 2009/11/30 09:29:51 平空 5 4578 -452.63% -177030.00 1
3 RB05螺纹钢1005 2009/11/30 09:30:07 开多 4 4578 2
4 RB05螺纹钢1005 2009/11/30 10:00:03 平多 5 4142 -9.52% -10500.00 3
问题:
1.交易量:显示1手、4手,实际成交5手
2.经历这4次交易后,就不再预警、交易了,即中断了。而10:00:03后RB05在4367-4371区间经历了N次来回,均没再预警、交易。
勾选:允许程式化交易、预警后保持监控,预警时间间隔1秒,快速计算为300。
请教版主:为什么不能连续交易下去?怎么改进才能达到程式化交易的目的?
建议:改进TSELL、TSELLSHORT、TBUY、TBUYSHORT这4个语句,去掉其中的开仓平仓匹配功能,让其只要条件符合就执行,否则如果在这预警监控外开仓、平仓就会导致该预警不能正确运行。