\\开仓
IF (holding=0) THEN BEGIN
IF (开多) THEN BUY(1,开仓数量%,LIMIT,close+开仓滑点),IGNORECHECKPRICE;
IF (开空) THEN BUYSHORT(1,开仓数量%,LIMIT,close-开仓滑点),IGNORECHECKPRICE;
END
\\计算开仓后的止损点
开单到目前的K线数:enterbars,LINETHICK0;
多单止损点:LLV(LOW,(开单到目前的K线数+7)),LINETHICK0;
空单止损点:HHV(HIGH,(开单到目前的K线数+7)),LINETHICK0;
\\止损或平仓
IF (holding>0) THEN BEGIN
IF (C<=多单止损点) THEN SELL(1,平仓数量%,LIMIT,close-平仓滑点);
IF (平多) THEN SELL(1,平仓数量%,LIMIT,close-平仓滑点);
END
IF (holding<0) THEN BEGIN
IF (C>=空单止损点) THEN SELLSHORT(1,平仓数量%,LIMIT,close+平仓滑点);
IF (平空) THEN SELLSHORT(1,平仓数量%,LIMIT,close+平仓滑点);
END
多谢版主答复。
//止损或平仓
IF (holding>0) THEN BEGIN
IF (C<=多单止损点) THEN SELL(1,平仓数量%,LIMIT,多单止损点-平仓滑点);
IF (平多) THEN SELL(1,平仓数量%,LIMIT,close-平仓滑点);
END
这么写,其中止损的这句,是不是可以实现, 当最后一根K线碰到 止损点位置时,就立即在止损点平仓? 而不是 要等到 最后一个K线收盘再平仓?
固定一秒轮询
if ref(c,1)<=ref(多单止损点,1) then sell();
JinZhe版主,
如果我是在日线上测试这个系统, 固定轮询 的时候,可能对应到某一根日K 的分笔数据还不全, 这样的话, 用秒来轮询,是不是有问题?
如果我的1f K线数据时全的。 在日线上测试系统的时候, 用1f 以上周期的 固定轮询 是不是就没有问题了? 感谢!
日线数据测试只要日线数据齐全就行了
版主,还是有点不明白;想不通啊。
比如 如果是在日线上测试系统, 用20秒固定周期轮询。 就是说在每根日k 上,要轮询 这一句
if ref(c,1)<=ref(多单止损点,1) then sell();
4.5(每天4.5小时)*60(每小时60分钟)*60(每分钟60秒)/20=810次
但是如果只有日k 数据,针对每根日K线,就只有日开盘价, 日最高价,日最低价,日收盘价 这4个值。 轮询810次,没有什么用啊。
您是不是指的模拟交易测试? 我其实是想作离线的脱机 算法测试。