/------------------------------------------------------------------------
// 简称: jiaoliu
// 名称: 交流
// 类别: 公式应用
// 类型: 用户应用
// 输出: Void
//------------------------------------------------------------------------
Params
//此处添加参数
numeric num_minute(345);
Vars
//此处添加变量
numeric vol_pre_5d; // 前五日每分钟成交量
series<numeric> vol_ratio_minute; // 每分钟量比
Defs
//此处添加公式函数
Events
//此处实现事件函数
OnBarOpen(ArrayRef<Integer> indexs)
{
vol_pre_5d = Summation(data1.v[1],5) / (5* num_minute ); // data1 日线 求过去5日每分钟成交量
}
//初始化事件函数,策略运行期间,首先运行且只有一次
OnInit()
{
}
//Bar更新事件函数,参数indexs表示变化的数据源图层ID数组
OnBar(ArrayRef<Integer> indexs)
{
vol_ratio_minute = vol / vol_pre_5d;
Commentary("量比="+text(vol_ratio_minute));
Commentary("vol_pre_5d="+text(vol_pre_5d));
Commentary("data1.v[1]="+text(data1.v[1]));
Commentary("num_minute="+text(num_minute));
Commentary("Summation(data1.v[1],5)="+text(Summation(data1.v[1],5)));
Commentary("5* num_minute="+text(5* num_minute));
}
//------------------------------------------------------------------------
// 编译版本 2022/04/15 125645
// 版权所有 agtd30000
// 更改声明 TradeBlazer Software保留对TradeBlazer平台
// 每一版本的TradeBlazer公式修改和重写的权利
//------------------------------------------------------------------------
谢谢二位,又忘了全局变量的问题
vol_pre_5d 是一个局部变量,是不能跨域传递的,你在onbaropen里赋值,onbar里是获取不到的
Global numeric vol_pre_5d; 13行这个变量声明要变成全局变量,,,这个是不同的事件域,建议看一下官网视频,变量和事件域的知识