【TBQuant3-新手指南】编程-直观体验序列变量和全局变量的区别
//------------------------------------------------------------------------ // 简称: test_0821_2025 // 名称: // 类别: 策略应用 // 类型: 用户应用 // 输出: Void //------------------------------------------------------------------------ Params Vars //此处添加变量 Series<Numeric> s_a; Global Numeric g_a; Defs //此处添加策略函数 Events //此处实现事件函数 //初始化事件函数,策略运行期间,首先运行且只有一次 OnInit() { } //Bar更新事件函数,参数indexs表示变化的数据源图层ID数组 OnBar(ArrayRef<Integer> indexs) { s_a = s_a + 1; g_a = g_a + 1; Commentary("g_a=" + text(g_a)); Commentary("s_a=" + text(s_a)); if(BarStatus==2) { print("g_a=" + text(g_a)); print("s_a=" + text(s_a)); print("------------"); } } //------------------------------------------------------------------------ // 编译版本 2025/8/21 100407 // 版权所有 wangkaiming // 更改声明 TradeBlazer Software保留对TradeBlazer平台 // 每一版本的TradeBlazer策略修改和重写的权利 //------------------------------------------------------------------------复制以上代码加载到策略中实时状态下,同一bar,全局变量一直在变,而序列是不变的再观察历史情况,序列和全局看似一致。实际因为历史K线只运行1次,而实时是每个tick运行一次。附录:公式机制 https://tbq3.tbquant.net/helper?product_id=991&keyword=440&content_id=2594&selectedkey=3823&type=article