// 每根K线开始时设置触发时间点
OnBarOpen(ArrayRef<Integer> indexes)
{
Numeric advancesec(5); // 提前触发秒数(默认5秒)
Array<Numeric> timePoint; // 存储触发时间点数组
// 计算触发时间(当前K线结束时间前5秒)
Numeric ret = DateTimeAdd(RealEndDateTime, -1*advancesec);
ret = StringToTime(TimeToString(ret)); // 格式化为标准时间
// 调试输出时间信息
Print("endtime="+text(RealEndDateTime)+" SetTriggerBarClose:" + Text(ret));
// 设置触发时间点
ArrayPushBack(timePoint, ret);
SetTriggerBarClose(timePoint); // 注册触发事件
}
量化程序中添加上述代码,不是指在bar闭合前5秒才会触发成交吗,为什么在模拟交易中没有达到这样的效果,k线为1小时级别
代码没看出啥问题
虽然你只发了一个onbaropen的内容
但是你可以在onbarclose里输出currenttime,来观察触发的时机