如果上一个K线达到条件1 比如 REF(condition1,1)=1,本根K线上穿上一根K的最高点H就市价开仓 同时限定N个点的止损
问题 1;实盘时,达到上一K的H时就发市价委托 ,那回测时是以什么价开仓?
问题2: 开仓后,在开仓的这根K线内达到止损 ,回测时是在本K线成交还是下一个K成交(我希望是本K能成交)止损的价位是什么
问题三 本K止损后 再次上穿上一K的最高点 即第二次达到开仓条件 还能开仓吗 ? 分别对于 实盘 和回测
看你用你个市价,market是次周期开盘价,marketr是本周期收盘价
回测时是本周期成交还是次周期,完全是看你交易控制符的选择。limit和limitr,这两个都是限价区别就是本周期和次周期具体自己看函数说明里
可以开仓啊,能不能开仓完全是看你开仓条件是否有做限制。
KD:=REF(C,1)>REF(O,1)&&C>REF(H,1); //开多条件
PD:=REF(C,1)<REF(O,1); //平多条件
开多:=BUY(KD AND HOLDING=0,1,LIMITR,REF(H,1)); //开多信号
平多:=SELL(PD,1,THISCLOSE); //平多信号
这是我简单测试的公式

[此贴子已经被作者于2015/2/26 9:54:36编辑过]
KD:=REF(C,1)>REF(O,1)&&C>REF(H,1); //开多条件
PD:=REF(C,1)<REF(O,1); //平多条件
开多:=BUY(KD AND HOLDING=0,1,LIMITR,REF(H,1)); //开多信号
平多:=SELL(PD,1,THISCLOSE); //平多信号
limitr改成marketr也是一样
这是我简单测试的公式

上一K收阳 下一K盘中突破上一K的最高点就开仓 但加到图上有些K明明上影线已经突破上一K(s收阳)的最高点但最终收盘收在上一K的最高点之下 但却在图上没有显示开仓 信号 ,我请教老师这个盘中突破开仓(不管收盘结果) 加到图上如何才能有显示 是公式逻辑问题 还是其他问题
开多:=BUY(KD AND HOLDING=0,1,LIMITR,REF(H,1)),IGNORECHECKPRICE; //在后面加个忽略价格检查
因为你报单价格是用的上一根k的最高价,如果这个最高价比你本周期的最低价还要低,所以会出现白色箭头开不了仓。加上那个函数就行了
还是一样 加上去了也显示不了 我上传的图你能看到吗 , 。。。。。。如果你能看到图片就是画箭头那里
或者我文字再表达一边 我的目的是上一根K收阳 本K盘中达到上一K的最高点就开仓 ,,,但我以刚才那个公式加到图上往往有些上一K收阳本K上影线超过上一K的H(本应按我逻辑开仓), 但由于收盘最终低于这个H所以没显示开仓 ,要本K收盘结束大于上一K的H才能显示信号 。。。为什么会这样, 如果我的公式有问题, 应该怎么样改 ? 麻烦老师
哦,这个是你代码问题啊,你用的判断是close这个在盘后就是收盘价了。
KD:=REF(C,1)>REF(O,1)&&C>REF(H,1);
有些上一K收阳本K上影线超过上一K的H,你这个条件是用的最高价和上一k的最高价做比较,写法如下
KD:=REF(C,1)>REF(O,1)&&H>REF(H,1);
这个写法可以了 1‘ 回测是以ref(h,1)开仓是吗 实盘就以REF(H,1)发市价委托 。。。。。另外,本K开仓后达到止损 在本K内再次达到上一K的H (按我的目的是要再次开仓的) ,但软件单凭一个K回测怎么知道其过程 ,我猜想回测时是不能实现其过程的,, 除非我用15分钟图 ,而软件得机制是用一分钟K数据来回测 这样勉强知道这个15分K的整个过程,,,老师明白我想说什么吗
回测无法模拟你实际交易的那种过程的,历史k线只有开高低收四个值,是没有中间数据的。
但我的策略是是15分钟周期 本周期入场模式 回测时是用一分钟K基础数据还是15分钟K ?15分钟误差太大