执行模式
来自tradeStar帮助系统
逐行和逐根
#Run_By_Bar #Run_By_Series
#Run_Every_Tick #Run_Every_Bar
OnStart => 每次行情到来都会触发(除非是 #Run_Every_Bar + #Run_By_Bar 逐根且每根只运行一次的模式)。不在函数体里面的代码都等于 OnStart 函数,除非显式声明了 OnStart 函数。
OnInit => 每次重算时调用1次,后续行情到来不触发。重算在历史数据发生变化时触发,此时公式将清除所有状态重新运行。
OnExit => 每次 OnStart 执行后都会接着执行 OnExit, 与 OnStart 的区别是当OnStart被终止时,OnExit 仍然会保证运行,这样可以确保Dll能正确释放资源,解锁等。
若品种,周期发生变化时,公式将会触发重算, DLL需要自己判断变换发生。可以把BarPos传给DLL, 如果BarPos变成1了,那就是发生重算了;