请教关于A交易函数的问题

公式条件满足后A交易函数发单,最短在几个tick内,相关发单状态函数会有即时的有反应? 比如未成交函数,持仓函数等,或者有哪一个发单状态函数会在A交易函数发单后,在下一个tick到来时发单状态参数就可以获取?以作为停止A函数发单的判定条件? 如果我问题没有能描述清楚请继续提问我。 先谢谢大家!

谢谢大家!问题已经解决。

vars global numeric condionn; onint() { condion=0; } onbar(ArrayRef<Integer> indexs) { if(condion==0 and barstatus==2 and .........) { a_sendorder(); condion=1; } } 只发一次单,发单情况你可以在别的事件驱动里操作

回复:非常感谢!我再理解理解。

回复:if(condion==0 and barstatus==2 and .........) { a_sendorder(); condion=1; } } 这个我理解。 下面这些内容我还不理解。 vars global numeric condionn; onint() { condion=0; } onbar(ArrayRef<Integer> indexs)

回复:把condion理解为控制发单的变量,因为要跨事件域调用,所以必须定义为全局变量, 使用Global修饰。 程序化每获得一个Tick就运行一次,我们假定只有当condion=0时才允许发单,发单后立马给condion赋新值,这样在第二个Tick到来时它就不符合开仓条件了,就只会发一次单。

回复:vars global numeric condionn; onint() { condion=0; } onbar(ArrayRef<Integer> indexs) 上面那段貌语法似和TB的语法不同,不明白怎么把 condion设置为全局变量。谢谢您的耐心讲解。

回复:全局变量设置有点明白了,新的问题产生了,全局变量调用后,需要复位的问题产生。 比如0的tick条件满足设置全局变量。 下一个tick调用全局变量作为条件之一。 第三个tick或者设定若干个tick后需要将之前设定的全局变量复位。

回复:好好理解一下事件域哈,全局变量的初始化写在Oninit域里,这个域先于程序化启动且只运行一次,所以复位你得写在这里

回复:若你的操作周期小于日,你还可以把需要初始化的东西写在OnBarOpen里

回复:谢谢啦!问题已经解决,用全局变量,初始化设置再配合系统时间延迟200ms后,复位发单标志位为0。

用事件驱动onposition,onorder可以监听持仓变化,委托变化。 也可以在onbar时,主动查询a_getposition,a_getorder

回复:谢谢建议,我去试试。

回复:你好怎么查询不到a_getposition,a_getorder这两个函数?

回复:A_GetPosition A_GetOrder 检索匹配算法单词大小写敏感

回复:我用的是交易开拓者平台(旗舰版) 貌似只有下图这几个接近的函数。

回复:旗舰版写A函数策略比TBQ难多了,用TBQ吧