A函数是否等同于JAVA中的方法?
我用的是TBQ3,根据我有限的经验TB用的编程语言是类Pascal语言,是面向过程的并不像Java有对象和方法的概念(虽然有结构体),所以简单说A函数不等同于Java中的方法。
我们编写策略的时候除了分析数据,还要进行下单操作, TB提供了两套下单机制,分别是基于图表和虚拟账户的函数比如Buy/Sell ,还有一套就是直接操作实际账户的A函数系列。两者最大的不同是图表下单函数操作的是一个虚拟的账户(界面上绑定账户时的理论账户),主要用于开发测试和快速的历史回测,实盘交易时TB内置的机制会捕捉图表下单函数的报单信号,并可以转化为实盘报单信号作用于真实的交易账号,也提供【头寸监控】界面来监控理论信号持仓与真实账号持仓的差值并可以手工同步纠正。这样做的目的是简化开发的难度。
而A函数是实打实真实的作用于实际的账户,每次操作报单都会作用于实际账户。
可以理解成TB有两套账户管理和报单机制:
- 一套用于开发测试,账户是虚拟的,报单信号会被标注在图表上,实盘测试可以转化为实盘信号报单开平仓
- 另一套就是A函数,直接操作实际账户
希望这个解释对您能有些帮助
@西北狼👍👍👍 解释得很清楚!
您好,可能您对JAVA非常熟悉,希望用你熟悉的东西来给你解释你不熟悉的东西,但很遗憾,我对JAVA不熟悉,还是建议您直接学习TB,A函数本身不难理解,而是用A函数写策略实现和调试要麻烦一些而已。